From: steinber@machtnix.ert.rwth-aachen.de (Dirk Steinberg H tenhagen)
Subject: Lucid GNU Emacs 19.2 available
Organization: /home/e2/steinber/.organization
Date: 19 Aug 92 12:01:18

Hi there,

I just uploaded

	Lucid GNU Emacs 19.2 for Linux
	X386-1.2E-1.0.1 server binary

to

	ftp.dfv.rwth-aachen.de:		/incoming/Linux
	ftp.informatik.rwth-aachen.de: 	/tmp/Linux

and am presently uploading that stuff to tsx-11, funic and reggae as well.
It might take some time until the file show up there, since it's 6.6 MB :-)

Have fun!
	Dirk

Dirk Steinberg
dirkst@pool.informatik.rwth-aachen.de

**** lemacs.README ****

This is my port of Lucid GNU Emacs 19.2 to Linux.

It only runs under X. I have used it for several weeks now with no
major problems or crashes. The only thing I have problems with is the shell
mode: it only works if I first exit all xterms and then type 'M-x shell' to
get a shell on /dev/ttyp0. I think it has to do with controlling tty/process
group/job control stuff. Apart from that, I like it a lot. Finally there *is*
a version of Emacs-19 :-). But be warned: it is *huge*.
Partially, it's because I had to link statically. I tried everything
to get a shared version running, but no success. The binary was
produced by 'temacs -batch -l loadup.el dump', so it contains the standard
preloaded lisp code. I did define RUNNABLE_TEMACS, but I had no luck
running temacs without dumping first. So I guess I have to live with
the static dumped 1.7 Meg executable (stripped!) :-)
The virtual size of my emacs process is usually around 4-5 Megs,
so I wouldn't recommend using it with less than 8 MB RAM.

BTW: I used a prerelease gcc 2.2.2d, Linux 0.97pl1.

New Features (since 18.58): multiple windows, colors, fonts, 8 bit chars,
better input handling, PULLDOWN MENUS (nice), floating point support,
Lisp source level debugger, lots of Lisp code (150'000 lines), ...

THIS IS NOT THE 'OFFICIAL FSF GNU EMACS 19', BUT IT WAS DONE BY 
Lucid, a company with products in the Lisp/C++ area.

I had to comment out some floating point constant definitions in the
preloaded lisp code because temacs would drop core on me otherwise.

Put everything in /usr/emacs. When you first start emacs, be patient :-)
and after if prints its copyright, click the mouse inside the emacs window.
Emacs seems to need that before it responds to menu actions.

READ THE FILE /usr/emacs/info/NEWS.

Files:

  -rw-r--r--  1 steinber   662381 Aug  5 16:38 lemacs.F          - The binary
  -rw-r--r--  1 steinber     1467 Aug 18 17:56 lemacs.README     - This file
  -rw-r--r--  1 steinber   560276 Aug  5 16:38 lemacs_etc.tar.F  - add. binaries
  -rw-r--r--  1 steinber  2084480 Aug 18 17:59 lemacs_info.tar.F - Info files
  -rw-r--r--  1 steinber  2843201 Aug 18 17:34 lemacs_lisp.tar.F - Lisp files

Also needed:

  -rw-r--r--  1 steinber      634 Aug 18 17:21 freeze.README
  -rwxr-xr-x  1 steinber    13400 Aug  5 16:38 freeze_Linux  - binary for Linux

Since the whole package is so big (~ 6 Meg), I decided to use freeze instead
of compress, which achieves much better compression rates, somewhere in the 
ballpark of 20-30% as compared to compress!!!

I know that this has its problems, but I am including the freeze binary for
Linux (requires /lib/libc.2.2.2) and this is a binary release *FOR LINUX*
anyway.

BTW, I would even vote to abandon compress entirely and use freeze instead,
because it is constantly better; also, the process size is quite small,
smaller than compress I think (haven't really checked compress, though)
so it should run on any machine, even on small ones with less than 16 Megs
RAM :-)

The original distribution from Lucid can be found on labrea.stanford.edu
in /pub/gnu/lucid.

Enjoy,
	Dirk

---
Dirk Steinberg
dirkst@pool.informatik.rwth-aachen.de


****** From /usr/emacs/etc/NEWS: *******

This is a Beta test release of Lucid's version of GNU Emacs.  It is based
on an early version of Emacs version 19 from the Free Software Foundation.

Why Another Version of Emacs?
=============================

Lucid's latest product, Energize, is a C/C++ development environment.  Rather
than invent (and force our users to learn) a new user-interface, we chose to
build part of our environment on top of the world's best editor, GNU Emacs.
(Though our product is commercial, the work we did on GNU Emacs is free
software, and is useful without having to purchase our product.)

We needed a version of Emacs with mouse-sensitive regions, multiple fonts,
the ability to mark sections of a buffer as read-only, the ability to detect
which parts of a buffer has been modified, and many other features.

Why Not Epoch?
==============

For our purposes, the existing version of Epoch was not sufficient; it did
not allow us to put arbitrary pixmaps/icons in buffers, `undo' did not
restore changes to regions, regions did not overlap and merge their
attributes in the way we needed, and several other things.

We could have devoted our time to making Epoch do what we needed (and, in
fact, we spent some time doing that) but, since the FSF planned to include
Epoch-like features in their version 19, we decided that our efforts would be
better spent improving Emacs19 instead of Epoch.  

Our original hope was that our changes to Emacs would be incorporated into
the "official" v19.  However, scheduling conflicts arose, and we found that,
given the amount of work still remaining to be done, we didn't have time to
merge with the FSF's code.  Consequently, we are releasing our work as a
forked branch of Emacs, instead of delaying any longer.

What's Different?
=================

Lucid GNU Emacs *currently* requires X Windows to run, though it will not be
much work to make it run on dumb ttys again.  We plan to do this soon.

We have not personally tried to compile this version of Emacs under anything
but SunOS 4.1 on SparcStations, though others have successfully done so.  We
are very eager to get feedback about portability problems from those who
compile it on other systems.

We have reimplemented the basic input model in a more general way; instead of
X input being a special-case of the normal ASCII input stream, Emacs has a
concept of "input events", and ASCII characters are a subset of that.  The
events that Emacs knows about are not X events, but are a generalization of
them, so that Emacs can eventually be ported to different window systems.

We have reimplemented keymaps so that sequences of events can be stored into
them instead of just ASCII codes.

Input and display of all ISO-8859-1 characters is supported.

You can have multiple X Windows ("screens" in Emacs terminology).

Our Emacs has objects called "extents" and "faces", which are roughly
analogous to Epoch's "buttons," "zones," and "styles."  An extent is a region
of text (a start position and an end position) and a face is a collection of
textual attributes like fonts and colors.  Every extent is displayed in some
"face", so changing the properties of a face immediately updates the display 
of all associated extents.  Faces can be screen-local: you can have a region
of text which displays with completely different attributes when its buffer
is viewed from a different X window.

The display attributes of faces may be specified either in lisp or through
the X resource manager.

There may be some display glitches if all the fonts of a screen are not the
same height in pixels.  Any of the used fonts may be variable-width, but tabs
will not be displayed sensibly.  We hope to improve this soon.

Emacs use the MIT "Xt" toolkit instead of raw Xlib calls, which makes it be
a more well-behaved X citizen (and also improves portability).  A result of
this is that it is possible to include other Xt "Widgets" in the Emacs
window.  Also, Emacs understands the standard Xt command-line arguments.

Emacs understands the X11 "Selection" mechanism; it's possible to define
and customize selection converter functions and new selection types from 
elisp, without having to recompile Emacs.

Emacs now supports the Zmacs/Lispm style of region highlighting, where the
region between the point and mark is highlighted when in its "active" state.

Emacs has a menubar, whose contents are customizable from emacs-lisp.
This menubar looks Motif-ish, but does not require Motif.  If you already
own Motif, however, you can configure Emacs to use a *real* Motif menubar
instead.  If you have OLIT ("OpenLook Intrinsics"), you can use an
OpenWindows-like menubar.

The initial load-path is computed at run-time, instead of at compile-time.
This means that if you move the Emacs executable and associated directories
to somewhere else, you don't have to recompile anything.

You can specify what the title of the Emacs windows and icons should be
with the variables `screen-title-format' and `screen-icon-title-format',
which have the same syntax as `mode-line-format'.

Emacs now supports floating-point numbers.

Emacs now knows about timers directly, instead of them being simulated by
a subprocess.

Emacs understands truenames, and can be configured to notice when you are
visiting two names of the same file.  See the variables find-file-use-truenames
and find-file-compare-truenames.

If you're running on a sun SparcStation, you can specify sound files for
Emacs to play instead of the default X beep.  See the documentation of the
function load-sound-file and the variable sound-alist.

Random changes to the emacs-lisp library: (some of this was not written by
us, but is included because it's free software and we think it's good stuff)

  - there is a new optimizing byte-compiler
  - there is a new abbrev-based mail-alias mechanism
  - the -*- line can contain local-variable settings
  - there is a new TAGS package
  - there is a new VI-emulation mode (evi)
  - there is a new implementation of Dired

There are many more specifics in the "Miscellaneous Changes" section, below.

The online Emacs Manual is relatively up-to-date, but the Emacs-Lisp Manual
is not.
--
-----------------------------------------------------------------------------
Dirk W. Steinberg - RWTH Aachen - Internet email: steinber@ert.rwth-aachen.de
Aachen University of Technology / Lehrstuhl fuer Elektrische Regelungstechnik
Templergraben 55 / D-5100 Aachen /  phone:+49 241 807879 / fax:+49 241 807631