home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Fred Fish Collection 1.5
/
ffcollection-1-5-1992-11.iso
/
ff_disks
/
100-199
/
ff195.lzh
/
MicroEMACS
/
ReadMe
< prev
next >
Wrap
Text File
|
1989-03-27
|
18KB
|
485 lines
MicroEMACS 3.10 Release Notes March 19, 1989
(C)opyright 1988, 1989 by Daniel M. Lawrence
MicroEMACS 3.10 can be copied and distributed freely for any
non-commercial purposes. MicroEMACS 3.10 can only be incorporated
into commercial software with the permission of the current author.
**********************************************************************
MicroEMACS 3.10 is available in a couple of different ways.
First, it is available via my bulletin board system.....
The Programmer's Room
FIDO 201/10
(317) 742-5533
24 hours 300/1200/2400 baud
There it is arranged as five MSDOS .ARC (SEA format) files,
UE310DOC.ARC which contains the documentation files, UE310C.ARC which
contains the C sources, UE310H.ARC which contains the header files and
assembly sources, UE310MAK.ARC which contains various files to help
make EMACS, and UE310CMD.ARC which contains startup and command files.
All the various executables are available individually.
UE310DOC.ARC includes the files:
README This file
EMACS.HLP Online help file
EMACS.MSS MicroSCRIBE format of EMACS.TXT
EMACS.TXT EMACS BEGINNER'S/REFERENCE MANUAL
EMACS.TUT old tutorial for learning MicroEMACS
MOUSE.DOC very PRELIMINARY documents on mouse usage
UE310MAK.ARC includes the files:
CMDFIX.LNK MSDOS link file for CMDFIX
DESCRIP.MMS VMS description file
EMACS.AML Link file for the AMIGA
EMACS.LNK Microsoft link file for MSDOS
EMACS.OPT VMS options file
MAKEFILE.AMI makefile for the AMIGA
MAKEFILE.DTL makefile for Data Light C
MAKEFILE.MPC makefile for Mark Williams C on the IBM-PC
MAKEFILE.MSC makefile for Microsoft C 5.1 on the IBM-PC
MAKEFILE.MWC makefile for Mark Williams C on the 1040ST
MAKEFILE.TUR makefile for Turbo C 2.0 on the IBM-PC
MAKEFILE.UNX makefile for unix
MESHAR.OPT option file for VMS
SMG.MAR another VMS option file
EMACS.LNK Turbo C/Microsoft link command file
UE310CMD.ARC includes the files:
AZBMAP.CMD Translate Large model AZTEC.SYM file to .map
AZMAP.CMD Translate AZTEC.SYM files to .MAP
BPAGE.CMD Block and box manipulation page
BUFDEL.CMD Select and delete multiple buffers
CPAGE.CMD A not yet complete C language page
EMACS.RC Standard startup file
ENCODE.CMD Demonstration of the &xlate function
EPAGE.CMD Emacs macro debugging page
EPSON.CMD How to use macroes to insert printer controls
ERROR.CMD Mark Williams C error parsing file
FINDCOM.CMD Find mismatched C comments
FORTRAN.RC Fortran editing startup file
FUNC.CMD Allow function keys on systems with none (like UNIX)
IWRAP.CMD Allows wrapping of indented text
MENU.CMD Sample Menu system
MENU1 datafile for menu system
NEWPAGE.CMD Shifted Function key Pager
OPAGE.CMD Cobol Language page (not finished)
POS.CMD Display current line and column constantly
PPAGE.CMD Pascal language page
SENTENCE.CMD Sentence operations
SHELL.CMD Sample interactive MSDOS shell
SMOOTH.CMD smooth scrolling control macro
TABLE.CMD Creates a table of bound function keys
WPAGE.CMD Word processing page
UE310H.ARC includes the files:
DUTCH.H DUTCH text header file
EBIND.H binding list
EDEF.H global variable declarations
EFUNC.H function name list
ELANG.H Text header control file
ENGLISH.H ENGLISH text header file
EPATH.H default path settings
ESTRUCT.H configuration and structure definitions
ETYPE.H function prototype header file
EVAR.H EMACS macro variable declarations
EXECPR.ASM MSDOS 4Bh interupt driver
FRENCH.H FRENCH text header file
GERMAN.H GERMAN text header file
PLATIN.H PIG LATIN text header file
SPANISH.H SPANISH text header file
STMOUSE.S Some Atari 1040ST mouse assembly code
UE310C.ARC includes the files:
AMIGADOS.C Amiga system I/O functions
ANSI.C ANSI screen driver
AOSVS.C Data General Mainframe driver
ATARI.C Atari 520/1040ST I/O functions
BASIC.C basic cursor movement
BIND.C key binding commands
BUFFER.C buffer manipulation commands
CHAR.C character set mapping and manipulation functions
CMDFIX.C old to new .CMD file translation program
CRYPT.C encryption functions
DG10.C Data General 10 screen driver
DISPLAY.C main display driver
DOLOCK.C file locking stub routines
EVAL.C expression evaluator
EXEC.C macro execution functions
FILE.C user file functions
FILEIO.C low level file I/O driver
HISTORY.C MicroEMACS edit history
HP110.C HP110 screen driver
HP150.C HP150(A or C) screen driver
IBMPC.C IBM-PC CGA and MONOCHROME driver
INPUT.C low level user input driver
ISEARCH.C incremental search functions
LINE.C text line manipulation functions
LOCK.C file locking functions
MAIN.C argument parsing and command loop
MOUSE.C mouse handling user level functions
MSDOS.C MS/PCDOS I/O functions
RANDOM.C other random user functions
REGION.C region cut & paste functions
SEARCH.C search and replace functions
ST520.C ATARI ST1040 screen driver
TCAP.C Termcap screen driver
TIPC.C TI-PC screen driver
UNIX.C UNIX I/O functions
VMS.C VMS functions I/O driver
VMSVT.C VMS screen driver
VT52.C VT52 screen driver
WINDOW.C window manipulation functions
WMCS.C WICAT system I/O functions
WORD.C word manipulation functions
Z309.C Zenith 100 PC series terminal driver
Various Executables available include:
CMDFIX.EXE Fixes old command files (MSDOS)
ME110.EXE HP110 portable version
ME150.EXE HP150 version
ME520.PRG Atari 520/1040ST version
MEAMIGA. Amiga 500/1000/2000 version
MEANSI.EXE MSDOS ANSI graphics version
MEDG10.EXE Data General 10 PC version
MEIBM.EXE IBM-PC CGA/MONO/EGA version
METIPC.EXE TI Professional version
MEZ309.EXE Zenith 100 PC series version
MicroSPELL 1.0 is also available. This program allows you to
spell check text files and uses MicroEMACS to scan the file, doing
various corrections.
MicroSCRIBE, a fairly SCRIBE compatible text formatter to go
along with these programs will probably be available for BETA testing
sometime in 1989. This program is turning out to be a lot more complex
than I thought it would be, and is taking more time to get out.
As before, I will continue to support these programs, and
encourage everyone to spread them around as much as they can. If you
make what you think are changes that are useful to many, send me the
updates, and as time permits, I will incorporate the ones I understand,
and agree with into the master sources.
MicroEMACS is available on disk directly from my by sending me
$25 per order and a note specifying the disk format and the product
that you need. I can fill orders for IBM-PC high/low density 5 1/4 and
3 1/5, ATARI ST single and double density, and AMIGA disks. (You do not
need to send disks or mailers, I will provide these.) The distribution
set includes on disk all docs, executables and sources. Also I will
register you and you will receive automatic notices of new versions of
all the programs I am releasing.
Commercial licences to allow MicroEMACS to be incorporated into
other software packages are also available at a reasonable per package
price. Also I am available to do customization of MicroEMACS at an
hourly rate. Send all requests to the address below:
USmail: Daniel Lawrence
617 New York St
Lafayette, IN 47901
ARPA: nwd@j.cc.purdue.edu
FIDO: The Programmer's Room 201/10
(317) 742-5533
Voice: (317) 742-5153 evenings and weekends
IMPORTANT NOTE
==============
On the Atari ST, be sure that MicroEMACS is installed as a GEM
application from the GEM desktop. If this is not done, MicroEMACS will
grow confused about the state of the mouse, and ring the bell alot to
alert the user to the problem. (Mouse handling on the Atari is both
complex and tripled layered....).
New Features since version 3.9
==============================
*** Multiple Marks now supported
The commands set-mark (M-<space>) and exchange-point-and-mark
(^X^X) both now accept a numeric argument from 0 to 9 allowing up to 10
marks to be set in a buffer. All region commands still work with mark 0
but the other marks can be used to make navigating around a complex
buffer simpler. Also the goto-mark (M-^G) command allows you to go
to one of these marks.
*** More function key support
Under UNIX BSD4.3, V7 SUN, XENIX and some other V5 systems
MicroEMACS can now use the TERMCAP entry of the current terminal and
decode it's function keys. Also all function key bindings have been
renamed to make them machine independant. The CMDFIX program/source
distributed along with MicroEMACS will allow you to automaticaly
translate old command files to the new bindings.
*** Crypt algorithm much better
Yes, we found a really bad problem in the security of the
encryption algorithm. This has been fixed. Set the environment variable
$oldcrypt to TRUE to read in your old encrypted file, and set it to
FALSE to write it out again with the new algorithm.
*** End-of-word
Bending to popular demand, I added an end-of-word command which
advances to the end of the current word rather than the beginning of the
next word (as with next-word).
*** Command line switch to initialize variables
The -i switch on the command line allows you to give environment
variables a value on the way into EMACS. For example:
emacs -i$sres VGA <file>
edits <file> in VGA mode on a properly equipped IBM-PC.
*** New Hooks
added $writehook to execute macroes when writing files.
added $exbhook to execute macro when exiting an old buffer.
added $bufhook to execute macro when entering a new buffer.
*** Trim whitespace function
The &trim function strips the trailing whitespace off of a user
expression.
*** Changed trim/entab/detab commands
Now trim-line(^X^T), entab-line(^X^E), and detab-line(^X^D)
work on the current region if they have no arguments. These commands
are now also called trim-region, entab-region and detab-region. The
old names will hang about for a version, then disappear.
*** Foreign language text constants
MicroEMACS may now be compiled with its internal messages in
ENGLISH, GERMAN, DUTCH, PIGLATIN, SPANISH, and FRENCH. The $language
variable contains the name of the language of the current version. All
command names are still in english to allow macros to be used between
versions. Notice that the standard startup files and command files have
not been translated, thus the function key window is in english. Only
the text messages generated by EMACS itself are translated.
*** Upper/Lower case mapping
Users can now arbitrarily reset the upper/lower case mapping
tables using the &slow and &supper functions. For example:
&slow "e" "E"
causes a lower case "e" to translate to an "E" when upper
cased. This is fairly useful in various foreign languages with
unusual and magical casing rules.
*** MicroSoft mouse support
The MicroSOFT and compatible mice are now supported on the
IBM-PC. Mousing commands have changed considerably and are consistent
across all supported environments. See the reference manual's new
chapter on mousing.
*** New user input function
>c allows a macro to get an EMACS command key sequence from
the user. the resulting string is suitable for binding commands.
*** Tab variables
$softtab can be used to cause EMACS to use spaces to tab to
multiples of $softtab using spaces. If this is zero, EMACS will use
hard tabs. $hardtab specifies how many columns between hard tabs. The
default value is 8, but may be changed by the user.
*** New "safe" file saving
Now MicroEMACS write all its output files to a temporary file,
then deletes the original, then renames the temp file as the original.
This makes system crashes a lot easier to live with. (This behavior can
be toggles with the $ssave variable). Notice that $ssave turned on
under UNIX will cause your file privledges to be reset to your current
umask.
*** Horizontal window scrolling
Now, by default, when you go beyond the 80th column of the
screen, the entire current window scrolls to the left. This makes
editing wide tables much more pleasant. $hscroll toggles between this
and the old (single line scroll) behavior. $fcol sets what text column
is in the first column of the screen. $hjump determines how many
characters the screen scrolls right or left.
*** More Debugging features
The ^XG (display) command prompts the user for a variable name
and displays its value (as opposed to execute-command write-message
$var). The describe-variables command lists all the current environmental
and user variables and their contents in a buffer.
*** Named macroes are now bindable
The macro-to-key (^X^K) command allows you to bind a keystroke
to a named function. Very usefull, this lifts the limit of 40 macroes
tied to keys. The older "execute-macro-n" functions will dissapear some
day, so please move to this! The describe-bindings function now will
list the defined macroes after the built-in functions along with their
bindings.
*** Hidden modelines???
If you are writing an emacs macro you can hide the emacs
modelines by setting $modeflag to FALSE.
*** Smooth scrolling
If you are of the school that prefers the screen to ride up a
line at a time instead of by half windows (I am not BTW), set $sscroll
to TRUE.
*** Recall last printed statement
The last text printed by emacs on the command line can be
recalled by querying $lastmesg. Look near the end of the new emacs.rc
file to see how this works.
*** VGA support
IBM's VGA display adapter in 50 line mode is now supported.
*** Optimizations!
Some internal optimizations have cause a speed increase of apx
30% to the speed of macro execution under all environments.
Calling a different level of I/O functions has speed up disk I/O
by apx 30% on the IBM-PC and under UNIX.
*** CMODE improved
CMODE now trims trailing whitespace when the enter key is used,
and copies its indentation from the last non-blank line. Blank lines in
the middle of a function will no longer cause emacs to forget its
indentation level.
*** Query-replace bug fixed
A rather long standing bug which caused emacs to lock up when
aborting a query-replace with the '.' character has been eliminated.
*** New Search Algorithm
A new search algorithm, written by Geoff Gibbs, implementing
the Boyer/Moore search algorithm has speed up all non-MAGIC searches by
over 30 TIMES!
*** Partial Mouse support added
The Atari 512/1040ST, the DEC VAX system under VMS, the
IBM-PC with a Microsoft compatible mouse, and the Commodore AMIGA now
support mouse usage. Text can be cut and pasted from one buffer to
another. Window sizes can be adjusted easily. Mouse support for other
operating systems will be forthcoming. New environment variables added
for mice include:
$xpos Cursor column of last mouse button click
$ypos Cursor row of last mouse button click
*** Microsoft C Fixes
Various fixes have made MicroEMACS compile well under Microsoft C
version 5.0
*** New computers supported
The WICAT computer is now supported under the MSC operating
system. Also the Data General mainframe computers are supported.
*** New Compilers supported
Mark Williams C on MSDOS is supported. Datalight C under MSDOS
is now fully supported as well.
*** Rewritten fill-paragraph
Fill-paragraph has been rewritten. It is now generally four
times faster, and its speed is now related to the size of the
paragraph, rather then the square of the size of the largest line, as
previously.
*** -e switch changed
The -e "EDIT" command line switch has been changed to -c
"changeable" to allow the -e to be used to automatically execute
error.cmd from the command line. This is very useful from Mark
Williams C for error parsing.
*** New mechanism for hooks
Hooks are ways of attaching macroes to MicroEMACS as it is doing
specific actions. In the past these were bound to illegal keystrokes.
This mechanism is now that there is an environment variable for each of
these "hooks" that contains the name of a macro to execute at hook time.
These must be one of the built in functions (including execute-macro-<n>)
for now. Hooks include:
$readhook executes immediately before reading a file,
after it's buffer has been created.
$wraphook executes when it is time to do a word wrap. This
is set to wrap-word by default.
$cmdhook executed immediately before MicroEMACS waits for a
command from the user.
*** select-buffer upgraded
A numeric argument to select-buffer causes the target buffer to
become "invisible"... ie not listed in the buffer list. Also, when
typing in a buffer name interactivly, the space bar will attempt to
complete the name from the available buffer list.
*** Prefix keys upgraded.
More than one key can now be bound to meta-prefix and
ctrlx-prefix. Also the terminating character for search and replace
strings defaults to the last thing bound to the meta-prefix, and can be
reset by setting the $sterm variable.
*** Completion routines rewritten
Command names, buffer names and file names under some operating
systems now share a common completion routines. Typing in a portion of
a name and hitting the space bar, meta key or tab key will cause
MicroEMACS to attempt to complete the name for you.
*** AMIGA INTUITION support
The mouse, window resizing and close gadgets are no properly
supported on the Commodore Amiga.
THINGS TO COME:
===============
For the next version, I will be concentrating on: (No promises
on the time, I will be concentrating on some other programs for a while)
1) Macintosh support
2) Adding a compiler to the execution language
3) Support for a speaking EMACS to allow sightless people to
edit text (AMIGA first)