ELVIS(1)

NAME
elvis, ex, vi - The editor

SYNOPSIS
elvis [flags] [+cmd] [files...]

DESCRIPTION
Elvis is a text editor which emulates vi/ex.

On systems which pass the program name as an argument, such as Unix and Minix, you may also install elvis under the names "ex", "vi", "view", and "input". These extra names would normally be links to elvis; see the "ln" shell command.

When elvis is invoked as "vi", it behaves exactly as though it was invoked as "elvis". However, if you invoke elvis as "view", then the readonly option is set as though you had given it the "-R" flag. If you invoke elvis as "ex", then elvis will start up in the colon command mode instead of the visual command mode, as though you had given it the "-e" flag. If you invoke elvis as "input" or "edit", then elvis will start up in input mode, as though the "-i" flag was given.

OPTIONS

-r  To the real vi, this flag means that a previous edit should be recovered. Elvis, though, has a separate program, called elvrec(1), for recovering files. When you invoke elvis with -r, elvis will tell you to run elvrec.

-R  This sets the "readonly" option, so you won't accidentally overwrite a file.

-t tag
    This causes elvis to start editing at the given tag.

-m [file]
    Elvis will search through file for something that looks like an error message from a compiler. It will then begin editing the source file that caused the error, with the cursor sitting on the line where the error was detected. If you don't explicitly name a file, then "errlist" is assumed.

-e  Elvis will start up in colon command mode.

-v  Elvis will start up in visual command mode.

-i  Elvis will start up in input mode.

-w winsize
    Sets the "window" option's value to winsize.

+command or -c command
    If you use the +command parameter, then after the first file is loaded command is executed as an EX command. A typical example would be "elvis +237 foo", which would cause elvis to start editing foo and then move directly to line 237. The "-c command" variant was added for UNIX SysV compatibility.

FILES

/tmp/elv*
    During editing, elvis stores text in a temporary file. For UNIX, this file will usually be stored in the /tmp directory, and the first three characters will be "elv". For other systems, the temporary files may be stored someplace else; see the version-specific section of the documentation.

tags
    This is the database used by the :tags command and the -t option. It is usually created by the ctags(1) program.

.exrc or elvis.rc
    On UNIX-like systems, a file called ".exrc" in your home directory is executed as a series of ex commands. A file by the same name may be executed in the current directory, too. On non-UNIX systems, ".exrc" is usually an invalid file name; there, the initialization file is called "elvis.rc" instead.

SEE ALSO
ctags(1), ref(1), virec(1), elvis(9).

Elvis - A Clone of Vi/Ex, the complete elvis documentation.

BUGS
There is no LISP support. Certain other features are missing, too.

Auto-indent mode is not quite compatible with the real vi. Among other things, 0^D and ^^D don't do what you might expect.

Long lines are displayed differently. The real vi wraps long lines onto multiple rows of the screen, but elvis scrolls sideways.

AUTHOR
Steve Kirkendall
kirkenda@cs.pdx.edu

Many other people have worked to port elvis to various operating systems. To see who deserves credit, run the :version command from within elvis, or look in the system-specific section of the complete documentation.