Index of Section 1 Manual Pages
| Interix / SUA | elvis.1 | Interix / SUA |
elvis(1) elvis(1)
elvis
NAME
elvis - Visual editor emulating vi and ex
SYNOPSIS
elvis [-eirRsv] [+cmd] [-c cmd] [-m [file]] [-t tag]
[-w winsize] [files...]
DESCRIPTION
The elvis(1) utility is a text editor which emulates vi(1) and ex(1).
The elvis(1) utility can be installed under the names ex(1) and vi(1)
(replacing the nvi(1) versions of ex(1) and vi(1)). You may also install
elvis(1) under the names view(1) and input. If elvis(1) is installed on an
NTFS partition, these extra names can be links to elvis(1); see the ln(1)
shell command.
When invoked as vi(1), the program behaves exactly as though it was
invoked as "elvis". However, if you invoke elvis(1) as view(1), then the
readonly option is set as though you had given it the -R flag. If you
invoke the program as ex(1), then elvis(1) 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(1) as edit(1), then elvis(1) will
start up in input mode, as though the -i flag was given.
The elvis(1) utility takes the following options:
+cmd
The elvis(1) utility executes the command cmd after loading the first
file. A typical example would be "elvis +237 foo", which would cause
elvis(1) to start editing foo and then move directly to line 237. Cmd
must be a colon command.
-c cmd
The System V version of the + option. elvis(1) executes cmd after
loading the first file. A typical example would be "elvis -c 237 foo",
which would cause elvis(1) to start editing foo and then move directly
to line 237. Cmd must be a colon command.
-e
The elvis(1) utility will start up in colon command mode (ex(1) mode).
-i
The elvis(1) utility will start up in input mode.
-m [file]
The elvis(1) utility 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.
-r
To the real vi(1), this flag means that a previous edit should be
recovered. The elvis(1) utility, though, has a separate program,
called elvrec(1), for recovering files. When you invoke elvis(1) with
-r, elvis(1) will tell you to run elvrec(1).
-R
This sets the "readonly" option, so you won't accidentally overwrite a
file.
-s
This set the "safer" option, which disables many potentially harmful
commands. It has not been rigorously proven to be absolutely secure,
however.
-t tag
This causes elvis(1) to start editing at the given tag
-v
The elvis(1) utility will start up in visual command mode.
-w winsize
Sets the "window" option's value to winsize.
FILES
The elvis(1) utility makes use of the following files:
/tmp/elv*
During editing, elvis(1) stores text in a temporary file.
tags
This is the database used by the :tags command and the -t option. It
is usually created by the ctags(1) program.
$HOME/.exrc
A file called .exrc in your home directory is executed as a series of
ex(1) commands. A file by the same name may be executed in the current
directory, too.
ENVIRONMENT
TERM
This is the name of your terminal's entry in the termcap or terminfo
database. The list of legal values varies from one system to another.
TERMCAP
Optional. If your system uses termcap, and the TERMCAP variable is
unset, then elvis(1) will read your terminal's definition from /usr/
share/termcap. (The INTERIX_ROOT directory is the location where you
installed the Interix product.) If TERMCAP is set to the full pathname
of a file (starting with a '/') then elvis(1) will look in the named
file instead of /usr/share/termcap. If TERMCAP is set to a value which
doesn't start with a '/', then its value is assumed to be the full
termcap entry for your terminal.
TERMINFO
Optional. If your system uses terminfo, and the TERMINFO variable is
unset, then elvis(1) will read your terminal's definition from the
database in the /usr/share/terminfo database. If TERMINFO is set, then
its value is used as the database name to use instead of /usr/share/
terminfo.
LINES, COLUMNS
Optional. These variables, if set, will override the screen size
values given in the termcap/terminfo for your terminal. On windowing
systems such as X, elvis(1) has other ways of determining the screen
size, so you should probably leave these variables unset.
EXINIT
Optional. This variable can hold EX commands which will be executed
instead of the .exrc file in your home directory.
SHELL
Optional. The SHELL variable sets the default value for the "shell"
option, which determines which shell program is used to perform
wildcard expansion in file names, and also which is used to execute
filters or external programs. The default value is "/bin/sh".
HOME
This variable should be set to the name of your home directory.
elvis(1) looks for its initialization file there; if HOME is unset
then the initialization file will not be executed.
TAGPATH
Optional. This variable is used by the "ref" program, which is invoked
by the shift-K, control-], and :tag commands. See "ref" for more
information.
Related Topics
ctags(1)
elvrec(1)
BUGS
There is no LISP support. Certain other features are missing, too.
Auto-indent mode is not quite compatible with the real vi(1). Among other
things, 0^D and ^^D don't do what you might expect.
Long lines are displayed differently. The real vi(1) wraps long lines onto
multiple rows of the screen, but elvis(1) scrolls sideways.
AUTHOR
Steve Kirkendall kirkenda@cs.pdx.edu
Many other people have worked to port elvis(1) to various operating
systems. To see who deserves credit, run the :version command from within
elvis(1), or look in the system-specific section of the complete
documentation.