Skip to content

Commit

Permalink
Import Elvis 1.8 (written by Steve Kirkendall)
Browse files Browse the repository at this point in the history
  • Loading branch information
mbert committed Dec 10, 2011
0 parents commit 6335386
Show file tree
Hide file tree
Showing 100 changed files with 34,464 additions and 0 deletions.
8 changes: 8 additions & 0 deletions Elvis.lnk
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
blk.obj cmd1.obj ctype.obj cmd2.obj curses.obj cut.obj +
ex.obj input.obj main.obj misc.obj modify.obj +
move1.obj move2.obj move3.obj move4.obj move5.obj +
opts.obj recycle.obj redraw.obj regexp.obj +
regsub.obj system.obj tio.obj tmp.obj vars.obj +
vcmd.obj vi.obj pc.obj sysdos.obj tinytcap.obj /co /noi /map +
/pac /far /stack:0x4000
elvis.exe;
132 changes: 132 additions & 0 deletions Elvis.mak
Original file line number Diff line number Diff line change
@@ -0,0 +1,132 @@
# Makefile for MSC - if you don't have NDmake, use this one,
# but don't expect to be happy.
# And don't expect to do anything but making the executables, either.

OBJS= blk.obj cmd1.obj cmd2.obj ctype.obj curses.obj cut.obj ex.obj input.obj \
main.obj misc.obj modify.obj move1.obj move2.obj move3.obj move4.obj \
move5.obj opts.obj recycle.obj redraw.obj regexp.obj regsub.obj \
system.obj tio.obj tmp.obj vars.obj vcmd.obj vi.obj \
pc.obj sysdos.obj tinytcap.obj

CFLAGS= -DCS_IBMPC -DCS_SPECIAL -DRAINBOW -DBLKSIZE=1024
CC= cl -AM

blk.obj: blk.c
$(CC) $(CFLAGS) -c blk.c

cmd1.obj: cmd1.c
$(CC) $(CFLAGS) -c cmd1.c

cmd2.obj: cmd2.c
$(CC) $(CFLAGS) -c cmd2.c

ctype.obj: ctype.c
$(CC) $(CFLAGS) -c ctype.c

curses.obj: curses.c
$(CC) $(CFLAGS) -c curses.c

cut.obj: cut.c
$(CC) $(CFLAGS) -c cut.c

ex.obj: ex.c
$(CC) $(CFLAGS) -c ex.c

input.obj: input.c
$(CC) $(CFLAGS) -c input.c

main.obj: main.c
$(CC) $(CFLAGS) -c main.c

misc.obj: misc.c
$(CC) $(CFLAGS) -c misc.c

modify.obj: modify.c
$(CC) $(CFLAGS) -c modify.c

move1.obj: move1.c
$(CC) $(CFLAGS) -c move1.c

move2.obj: move2.c
$(CC) $(CFLAGS) -c move2.c

move3.obj: move3.c
$(CC) $(CFLAGS) -c move3.c

move4.obj: move4.c
$(CC) $(CFLAGS) -c move4.c

move5.obj: move5.c
$(CC) $(CFLAGS) -c move5.c

opts.obj: opts.c
$(CC) $(CFLAGS) -c opts.c

recycle.obj: recycle.c
$(CC) $(CFLAGS) -c recycle.c

redraw.obj: redraw.c
$(CC) $(CFLAGS) -c redraw.c

regexp.obj: regexp.c
$(CC) $(CFLAGS) -c regexp.c

regsub.obj: regsub.c
$(CC) $(CFLAGS) -c regsub.c

system.obj: system.c
$(CC) $(CFLAGS) -c system.c

tio.obj: tio.c
$(CC) $(CFLAGS) -c tio.c

tmp.obj: tmp.c
$(CC) $(CFLAGS) -c tmp.c

vars.obj: vars.c
$(CC) $(CFLAGS) -c vars.c

vcmd.obj: vcmd.c
$(CC) $(CFLAGS) -c vcmd.c

vi.obj: vi.c
$(CC) $(CFLAGS) -c vi.c

pc.obj: pc.c
$(CC) $(CFLAGS) -c pc.c

sysdos.obj: sysdos.c
$(CC) $(CFLAGS) -c sysdos.c

tinytcap.obj: tinytcap.c
$(CC) $(CFLAGS) -c tinytcap.c

elvis.exe: $(OBJS)
link @elvis.lnk

ctags.exe: ctags.c wildcard.c
$(CC) ctags.c -o ctags.exe

fmt.exe: fmt.c
$(CC) fmt.c -o fmt.exe

ref.exe: ref.c
$(CC) /F 4000 ref.c -o ref.exe

elvrec.exe: elvrec.c
$(CC) $(CFLAGS) elvrec.c -o elvrec.exe

elvprsv.exe: elvprsv.c prsvdos.c wildcard.c ctype.c
$(CC) $(CFLAGS) elvprsv.c -o elvprsv.exe

wildcard.exe: wildcard.c ctype.c
$(CC) wildcard.c -o wildcard.exe

ex.exe: alias.c
$(CC) alias.c -o ex.exe

vi.exe: ex.exe
copy ex.exe vi.exe

view.exe: ex.exe
copy ex.exe view.exe
30 changes: 30 additions & 0 deletions Elvis.prj
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
blk
cmd1
cmd2
ctype
curses
cut
ex
input
main
misc
modify
move1
move2
move3
move4
move5
opts
recycle
redraw
regexp
regsub
system
tio
tmp
vars
vcmd
vi
pc
sysdos
tinytcap
71 changes: 71 additions & 0 deletions INSTALL
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
Installation varies from one Operating System to another. For complete
instructions, see the appropriate subsection in the "Versions" section
of the manual. Basically, though, it goes like this:

VMS: There is a batch file called "vmsbuild.com" which compiles
elvis and the related utilities. You just need to say
"@vmsbuild" and wait a while. (On a little old VAX with
heavy load, elvis can take up to half an hour to compile!)

After that, the programs need to be set up as foreign
commands. A batch file called "vmssetup.com" does this.

DOS: If you're using MS-C 5.x (for a fairly recent x), then
you can compile elvis and the related programs by saying
"make elvis.mak" and waiting a while.

If you're using Turbo-C or Borland C, then you will probably
want to copy "Makefile.mix" to "Makefile", and then edit
"Makefile" to select the Turbo-C group of settings. Then run
"make".

Regardless of how you compile elvis, you must make a directory
called "C:\TMP" before elvis will run correctly.

EVERYTHING ELSE:
Copy "Makefile.mix" to "Makefile", and then edit "Makefile"
to select the proper group of settings. Then run "make".

When its done, run "make install" to copy the executables
to /usr/local/bin (or whatever -- check the Makefile) and
change their permissions. On UNIX systems, you'll need to
do this as "root".

That's the gist of it. For complete instructions, you should look in the
"Versions" section of the manual. You may also wish to browse through the
"CFLAGS" and "Makefile" sections of the manual.

The manual resides in a subdirectory called "doc". Each section of the
manual is in a separate file, so it could be split across several shar
archives. On a UNIX system, you can go into the "doc" directory and say
"make" to have these parts be appended to form a single file called
"Elvisman.txt". On other systems, your best bet is probably to just
print out all of the "*.doc" files, and then append them in the following
order:
title.doc title page
index.doc index page
intro.doc introductory fluff
visual.doc visual commands and input mode
ex.doc table of ex commands, and descriptions
regexp.doc description of regular expressions and substitutions
options.doc detailed description of ":set" command
cutbufs.doc short discussion of cut-buffers and @ macros
differ.doc list of (known) differences between elvis and vi
internal.doc implementation details
cflags.doc compile-time options
makefile.doc description of the Makefile.mix file
termcap.doc how elvis uses termcap fields -- terminal descriptions
environ.doc environment variables that affect elvis
versions.doc OS-dependent information
question.doc some frquently asked questions & answers
ctags.doc man-page for "ctags" program
elvis.doc man-page for "elvis" program
elvprsv.doc man-page for "elvprsv" program
elvrec.doc man-page for "elvrec" program
fmt.doc man-page for "fmt" program
ref.doc man-page for "ref" program

NOTE: The manual pages are formatted for 66-line pages. The last 6 lines of
each page are blank, for skipping page breaks. Many laser printers default
to 60 lines per page, so you may have to delete those extra blank lines, or
replace them by formfeeds or something.
37 changes: 37 additions & 0 deletions MANIFEST
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
Elvis may be distributed in either source form or executable form.
For executables, the exact list of files will vary.

Source Files:
Elvis.lnk curses.c doc/title.ms prsvunix.c
Elvis.mak curses.h doc/ver.ms recycle.c
Elvis.prj cut.c doc/versions.ms redraw.c
INSTALL doc/Makefile doc/visual.ms ref.c
MANIFEST doc/cflags.ms elvprsv.c regexp.c
Makefile.mix doc/ctags.man elvrec.c regexp.h
Pkgfile doc/cutbufs.ms ex.c regsub.c
README doc/differ.ms fmt.c shell.c
SourceFiles doc/elvcol input.c sysdos.c
alias.c doc/elvis.man instman.sh system.c
amiga.c doc/elvprsv.man main.c tinyprnt.c
amiprsv.c doc/elvrec.man misc.c tinytcap.c
amistat.h doc/environ.ms modify.c tio.c
amisysio.c doc/ex.ms move1.c tmp.c
amitty.c doc/fmt.man move2.c unix.c
amiwild.c doc/index.ms move3.c vars.c
atari.c doc/init.ms move4.c vcmd.c
blk.c doc/internal.ms move5.c vi.c
borland.h doc/intro.ms novice.rc vi.h
cmd1.c doc/makefile.ms opts.c vmsbuild.com
cmd2.c doc/options.ms osk.c vmsio.c
config.h doc/question.ms osk.h vmslink.opt
ctags.c doc/ref.man pc.c vmssetup.com
ctype.c doc/regexp.ms profile.sh vmswild.c
ctype.h doc/termcap.ms prsvdos.c wildcard.c

MS-DOS executables:
CHANGES README elvis.man elvrec.man ref.exe
Elvisman.txt ctags.doc elvprsv.doc ex.exe ref.man
INSTALL ctags.exe elvprsv.exe fmt.doc vi.exe
MANIFEST ctags.man elvprsv.man fmt.exe view.exe
PATCHES elvis.doc elvrec.doc fmt.man wildcard.exe
Pkgfile elvis.exe elvrec.exe ref.doc
Loading

0 comments on commit 6335386

Please sign in to comment.