[comp.emacs] Large patch for uEmacs 3.10 1/2

jbayer@ispi.UUCP (Jonathan Bayer) (06/10/89)

The following are a bunch of patches I have made to uEmacs 3.10.
This also includes some patches that have been posted by Urs Zurbuchen
and John Rupley


#! /bin/sh
# This is a shell archive.  Remove anything before this line, then unpack
# it by saving it into a file and typing "sh file".  To overwrite existing
# files, type "sh file -c".  You can also feed this as standard input via
# unshar, or by typing "sh <file", e.g..  If this archive is complete, you
# will see the following message at the end:
#		"End of archive 1 (of 2)."
# Contents:  /etc/termcap.exp MANIFEST README
# Wrapped by editor@ispi on Fri Jun  9 22:28:41 1989
PATH=/bin:/usr/bin:/usr/ucb ; export PATH
if test -f '/etc/termcap.exp' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'/etc/termcap.exp'\"
else
echo shar: Extracting \"'/etc/termcap.exp'\" \(612 characters\)
sed "s/^X//" >'/etc/termcap.exp' <<'END_OF_FILE'
X#
X#	this is a supplemental file for the termcap file.  It contains
X#	the definitions of the shifted function key as needed by
X#	uEmacs.  The entries recognized are all of the standard termcap
X#	entries plus:
X#
X#		l1-l0	Shifted function keys
X#		kC	sent by clear screen key
X#		kE	sent by clear to eol key
X#		K3	keypad, upper right
X#		K5	keypad, lower right
X#		K1	keypad, upper left
X#		K4	keypad, lower left
X#
X#
X# This is the additional entry needed for the SCO Xenix Console.
X
Xli|ansi:bt=zzzzz:l1=\E[Y:l2=\E[Z:l3=\E[a:l4=\E[b:l5=\E[c:\
X	:l6=\E[d:l7=\E[e:l8=\E[f:l9=\E[g:l0=\E[h:\
X	K1=\E[H:K5=\E[I:K4=\E[F:K5=\E[G:
END_OF_FILE
if test 612 -ne `wc -c <'/etc/termcap.exp'`; then
    echo shar: \"'/etc/termcap.exp'\" unpacked with wrong size!
fi
# end of '/etc/termcap.exp'
fi
if test -f 'MANIFEST' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'MANIFEST'\"
else
echo shar: Extracting \"'MANIFEST'\" \(238 characters\)
sed "s/^X//" >'MANIFEST' <<'END_OF_FILE'
X   File Name		Archive #	Description
X-----------------------------------------------------------
X /etc/termcap.exp           1	
X MANIFEST                   1	This shipping list
X README                     1	
X diffs                      2	
END_OF_FILE
if test 238 -ne `wc -c <'MANIFEST'`; then
    echo shar: \"'MANIFEST'\" unpacked with wrong size!
fi
# end of 'MANIFEST'
fi
if test -f 'README' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'README'\"
else
echo shar: Extracting \"'README'\" \(3113 characters\)
sed "s/^X//" >'README' <<'END_OF_FILE'
X/* Modifications to uEmacs 3.10 by Jonathan Bayer*/
X
X
X/*	Jonathan B. Bayer	15-may-88
X *	- Added compile option SOFTAB.  When enabled, in OVER mode
X 	  returns and tabs do not overwrite; they act as special cursor
X 	  control keys.
X
X *	- Added BACKUP option as coded by Urs Zurbuchen.  Modified
X	  his code to change the name of the backup file to end with
X	  a "-" on unix, and ".bak" on DOS.
X
X *	- Added  toggle-over-mode  to let the user toggle the OVER mode
X	  with one keystroke.
X			efunc.h
X			etype.h
X			random.c
X
X *	- Added  delete-line  to let the user delete the line the cursor is
X	  on with one keystroke.
X			efunc.h
X			etype.h
X			line.c
X
Xthis may not be needed, or may cause problems:
X *	- thisflag = lastflag added into the following routines:
X		main.c		cex(), meta()
X		window.c	refresh()
X
X *	- compile-time flag KEEPPOS added.  It tells system to attempt to 
X	  keep the current cursor position on screen when paging forward
X	  and backward.  It also adds the functions beginning-of-screen and
X	  end-of-screen.
X
X *	- + option added to command line args to emulate vi (needed for less)
X
X *	- -b command line option added in the case  of the BAKFIL  compile option
X	  being active.  the -b option disables the bakfile code.
X
X *	- tcap.c modified to read in key definitions for the shifted function
X	  keys.   Termcap only supports k1-k0.  Program now looks for an
X	  environmental variable called TERMEXP which contains the
X	  definitions for the shifted function keys.  If TERMEXP does
X	  not exist then the program will look for a file called
X	  /etc/termcap.exp.  This is only valid for programs which are
X	  compiled with termcap instead of terminfo.
X
X *	- file.c modified to reset the status, owner, and group of a file
X	  being edited and saved.
X
X *	- the nap() call in tcap.c was napping for 35000 milliseconds instead
X	  of 33 milliseconds.
X
X *	- Added other options as coded by Urs Zurbuchen:
X
X	- filename completion for Microsoft C
X	- saves and restores current directory before and after a shell
X	  escape (only done for ms-dos).
X	- restores 25 screen line before doing a shell escape or running
X	  another program from within emacs. Restores correct screen
X	  resolution after coming back to emacs.
X	- save current state of ^C handler after and restore it on exit.
X
X *	Following code was added from a patch as posted by John Rupley:
X
X	1) added timeout loop in get1key(), for USG option; without it, one
X	   cannot use the function keys under sys5; it could be made more 
X	   portable by #defining the processor speed, or building in a test 
X	   for it;  commented-out code gives an alternative solution, without
X	   a timeout loop.
X
X	2) modified ttable[], to allow shifted function keys and some 
X	   other stuff.  This patch was merged in with my patch earlier for
X	   termcap.  The program now supports either termcap or terminfo on
X	   Xenix, depending on how it is compiled.
X
X	3) sample terminfo, consistent with (2), included in comment.  This
X	   sample is not compatable with the SCO Xenix console.
X
X*	Sample ansi terminfo for the SCO Xenix console now included in
X	comment.
X
X
X */
X
END_OF_FILE
if test 3113 -ne `wc -c <'README'`; then
    echo shar: \"'README'\" unpacked with wrong size!
fi
# end of 'README'
fi
echo shar: End of archive 1 \(of 2\).
cp /dev/null ark1isdone
MISSING=""
for I in 1 2 ; do
    if test ! -f ark${I}isdone ; then
	MISSING="${MISSING} ${I}"
    fi
done
if test "${MISSING}" = "" ; then
    echo You have unpacked both archives.
    rm -f ark[1-9]isdone
else
    echo You still need to unpack the following archives:
    echo "        " ${MISSING}
fi
##  End of shell archive.
exit 0
-- 
Jonathan Bayer			      Beware: The light at the end of the
Intelligent Software Products, Inc.	      tunnel may be an oncoming dragon
500 Oakwood Ave.				...uunet!ispi!root
Roselle Park, NJ   07204    (201) 245-5922    jbayer@ispi.UUCP