# 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.