home *** CD-ROM | disk | FTP | other *** search
/ InfoMagic Source Code 1993 July / THE_SOURCE_CODE_CD_ROM.iso / gnu / lucid / README < prev    next >
Encoding:
Text File  |  1993-04-08  |  10.7 KB  |  238 lines

  1. Lucid GNU Emacs 19.6 is now available.  This is a version of GNU Emacs derived
  2. from an early version of Emacs version 19 from the Free Software Foundation.
  3.  
  4. (If you are already a user of version 19.4, you might want to skip ahead to
  5. the section labeled "Differences Between 19.4 and 19.6".)
  6.  
  7. You can get it via anonymous FTP from labrea.Stanford.EDU (36.8.0.112).
  8. Log in with the user "anonymous" and "username@host" as a password (that is,
  9. your email address.)  Execute the command "cd pub/gnu/lucid/".  These are
  10. the files you will find there:
  11.  
  12.   lemacs-19.6.tar.Z
  13.     The complete source distribution.  This file is about 9 megabytes.
  14.     When untarred and uncompressed, the source distribution will take up
  15.     about 22 megs. You will need an additional 12 megs or so to compile it.
  16.  
  17.   lemacs-19.6.tar.z
  18.     The above in `gzip' format instead of `compress' format; 6 megabytes.
  19.  
  20.   lemacs-19.6-sun4.tar.Z
  21.     This is a ready-to-run set of Sun4 executables, and a DOC file.  If
  22.     you want to use these executables, you will still need to get the file
  23.     lemacs-19.6.tar.Z, because Emacs cannot function very well without the
  24.     lisp library online.  This file is about 2.8 megs, 5.3 megs when
  25.     unpacked, 3.9 megs of which is the Emacs executable itself (2.9 megs if
  26.     stripped.)  This version of lemacs is compiled with support for Motif
  27.     dialog boxes and XPM files.
  28.  
  29.   lemacs-19.6-sun4.tar.z
  30.     The above in `gzip' format instead of `compress' format; 2 megabytes.
  31.  
  32.   xpm-3.2a.tar.Z
  33.   xpm-3.2a.tar.z
  34.     The XPM library (optional.)
  35.  
  36. Don't forget to set "binary" mode when transferring these files.  Unpack them
  37. with some variation of the command "zcat lemacs-19.6.tar.Z | tar -pvxf -".
  38.  
  39. You can also purchase Lucid Emacs tapes and manuals directly from Lucid.
  40. Call (800) 223-9322 or send mail to lucid-info@lucid.com for current pricing,
  41. media, and platform information.
  42.  
  43. We have created two mailing lists for discussing our Emacs.
  44.  
  45.    bug-lucid-emacs@lucid.com    For reporting all bugs in Lucid GNU Emacs,
  46.                 including bugs in the compilation and
  47.                 installation procedures.
  48.  
  49.    help-lucid-emacs@lucid.com    For random questions and conversation
  50.                 about using Lucid GNU Emacs.
  51.  
  52. To be added or removed from these mailing lists, send mail to 
  53. bug-lucid-emacs-request@lucid.com or help-lucid-emacs-request@lucid.com.
  54.  
  55. The bug-lucid-emacs and help-lucid-emacs mailing lists are archived on labrea,
  56. and are bidirectionally gatewayed into the newsgroups alt.lucid-emacs.bug and
  57. alt.lucid-emacs.help.
  58.  
  59. The bug-lucid-emacs and help-lucid-emacs mailing lists are archived on labrea.
  60.  
  61. Please do not send messages about problems with Lucid GNU Emacs to the FSF
  62. GNU Emacs newsgroups and mailing lists (help-gnu-emacs@prep.ai.mit.edu,
  63. bug-gnu-emacs@prep.ai.mit.edu, gnu.emacs.help, gnu.emacs.bug, et cetera)
  64. unless you are sure that the problem you are reporting is a problem with
  65. both versions of GNU Emacs.  People who aren't subscribed to the Lucid GNU
  66. Emacs mailing lists most likely are not interested in hearing about problems
  67. with it.
  68.  
  69.  
  70. Why Another Version of Emacs?
  71. =============================
  72.  
  73. Lucid's latest product, Energize, is a C/C++ development environment.  Rather
  74. than invent (and force our users to learn) a new user-interface, we chose to
  75. build part of our environment on top of the world's best editor, GNU Emacs.
  76. (Though our product is commercial, the work we did on GNU Emacs is free
  77. software, and is useful without having to purchase our product.)
  78.  
  79. We needed a version of Emacs with mouse-sensitive regions, multiple fonts,
  80. the ability to mark sections of a buffer as read-only, the ability to detect
  81. which parts of a buffer has been modified, and many other features.
  82.  
  83. Why Not Epoch?
  84. ==============
  85.  
  86. For our purposes, the existing version of Epoch was not sufficient; it did
  87. not allow us to put arbitrary pixmaps/icons in buffers, `undo' did not
  88. restore changes to regions, regions did not overlap and merge their
  89. attributes in the way we needed, and several other things.
  90.  
  91. We could have devoted our time to making Epoch do what we needed (and, in
  92. fact, we spent some time doing that) but, since the FSF planned to include
  93. Epoch-like features in their version 19, we decided that our efforts would 
  94. be better spent improving Emacs19 instead of Epoch.  
  95.  
  96. Our original hope was that our changes to Emacs would be incorporated into
  97. the "official" v19.  However, scheduling conflicts arose, and we found that,
  98. given the amount of work still remaining to be done, we didn't have time to
  99. merge with the FSF's code.  Consequently, we have released our work as a
  100. forked branch of Emacs, instead of delaying any longer.
  101.  
  102. Work has begun on a merger of Epoch and Lucid Emacs.  It seems likely that 
  103. the next release of Epoch will be based on Lucid Emacs instead of GNU Emacs
  104. from the FSF.  At some point, Lucid Emacs and Epoch will probably be the 
  105. same thing.
  106.  
  107. No Warranty
  108. ===========
  109.  
  110. Lucid Emacs is distributed under exactly the same terms as GNU Emacs, and
  111. thus has no warranty of any kind.
  112.  
  113. However, if you have received this version of Emacs with Energize, then it is
  114. covered by your Energize support contract.  If you have received it through
  115. some other means, then you may buy a support contract for it from Lucid.
  116. Send mail to lucid-info@lucid.com for more information about Lucid Emacs or
  117. Energize.
  118.  
  119. What's Different?
  120. =================
  121.  
  122. Lucid Emacs *currently* requires an X Window System environment to run,
  123. though it will not be much work to make it run on dumb ttys again.  We plan
  124. to do this eventually.
  125.  
  126. We have not personally tried to compile this version of Emacs under anything
  127. but SunOS 4.1 on SparcStations, though others have successfully done so.  We
  128. are very eager to get feedback about portability problems from those who
  129. compile it on other systems.
  130.  
  131. We have reimplemented the basic input model in a more general way; instead of
  132. X input being a special-case of the normal ASCII input stream, Emacs has a
  133. concept of "input events", and ASCII characters are a subset of that.  The
  134. events that Emacs knows about are not X events, but are a generalization of
  135. them, so that Emacs can eventually be ported to different window systems.
  136.  
  137. We have reimplemented keymaps so that sequences of events can be stored into
  138. them instead of just ASCII codes; it is possible to, for example, bind 
  139. different commands to each of the chords Control-h, Control-H, Backspace,
  140. Control-Backspace, and Super-Shift-Backspace.  Key bindings, function key
  141. bindings, and mouse bindings live in the same keymaps.
  142.  
  143. Input and display of all ISO-8859-1 characters is supported.
  144.  
  145. You can have multiple X windows ("screens" in Emacs terminology).
  146.  
  147. Our Emacs has objects called "extents" and "faces", which are roughly
  148. analogous to Epoch's "buttons," "zones," and "styles."  An extent is a region
  149. of text (a start position and an end position) and a face is a collection of
  150. textual attributes like fonts and colors.  Every extent is displayed in some
  151. "face", so changing the properties of a face immediately updates the display 
  152. of all associated extents.  Faces can be screen-local: you can have a region
  153. of text which displays with completely different attributes when its buffer
  154. is viewed from a different X window.
  155.  
  156. The display attributes of faces may be specified either in lisp or through
  157. the X resource manager.
  158.  
  159. Emacs use the MIT "Xt" toolkit instead of raw Xlib calls, which makes it be
  160. a more well-behaved X citizen (and also improves portability).  A result of
  161. this is that it is possible to include other Xt "Widgets" in the Emacs
  162. window.  Also, Emacs understands the standard Xt command-line arguments.
  163.  
  164. Emacs understands the X11 "Selection" mechanism; it's possible to define
  165. and customize selection converter functions and new selection types from 
  166. elisp, without having to recompile Emacs.
  167.  
  168. Emacs now supports the Zmacs/Lispm style of region highlighting, where the
  169. region between the point and mark is highlighted when in its "active" state.
  170.  
  171. Emacs has a menubar, whose contents are customizable from emacs-lisp.
  172. This menubar looks Motif-ish, but does not require Motif.  If you already
  173. own Motif, however, you can configure Emacs to use a *real* Motif menubar
  174. instead.  If you have OLIT ("OpenLook Intrinsics"), you can use an
  175. OpenWindows-like menubar.
  176.  
  177. Emacs can ask questions using popup dialog boxes.  Any command executed from
  178. a menu will ask yes/no questions with dialog boxes, while commands executed
  179. via the keyboard will use the minibuffer.
  180.  
  181. The initial load-path is computed at run-time, instead of at compile-time.
  182. This means that if you move the Emacs executable and associated directories
  183. to somewhere else, you don't have to recompile anything.
  184.  
  185. Emacs now supports floating-point numbers.
  186.  
  187. Emacs now knows about timers directly, instead of them being simulated by
  188. a subprocess.
  189.  
  190. Emacs understands truenames, and can be configured to notice when you are
  191. visiting two names of the same file.
  192.  
  193. If you're running on the console of a Sun Sparc or SGI machine, you can
  194. specify sound files for Emacs to play instead of the default X beep.
  195.  
  196. Much more detail about the differences between Lucid Emacs and Emacs 18 can
  197. be found in the file .../etc/NEWS (accessible with ``C-h n''.)
  198.  
  199. Note that building Lucid Emacs requires an ANSI C compiler, like gcc, or
  200. Lucid's own (and the galaxy's best) Lucid C/C++.
  201.  
  202.  
  203. Major Differences Between 19.4 and 19.6
  204. =======================================
  205.  
  206. There were almost no differences between versions 19.4 and 19.5; we fixed
  207. a few minor bugs and repacked 19.4 as 19.5 for a CD-ROM that we gave away
  208. as a trade show promotion.
  209.  
  210. The primary goal of the 19.6 release is stability, rather than improved
  211. functionality, so there aren't many user-visible changes.  The most notable
  212. changes are:
  213.  
  214.  - The -geometry command-line option now correctly overrides geometry
  215.    specifications in the resource database.
  216.  - The `width' and `height' screen-parameters work.
  217.  - Font-lock-mode considers the comment start and end characters to be
  218.    a part of the comment.
  219.  - The lhilit package has been removed.  Use font-lock-mode instead.
  220.  - vm-isearch has been fixed to work with isearch-mode.
  221.  - new versions of ispell and calendar.
  222.  - sccs.el has menus.
  223.  
  224. Lots of bugs were fixed, including the problem that lemacs occasionally
  225. grabbed the keyboard focus.
  226.  
  227. Also, as of Lucid Emacs 19.6 and Energize 2.0 (shipping now) it is possible
  228. to compile the public release of Lucid Emacs with support for Energize; so
  229. now Energize users will be able to build their own Energize-aware versions
  230. of lemacs, and will be able to use newer versions of lemacs as they are
  231. released to the net.  (Of course, this is not behavior covered by your
  232. Energize support contract; you do it at your own risk.)
  233.  
  234. I have not incorporated all portability patches that I have been sent since
  235. 19.4; I will try to get to them soon.  However, if you need to make any
  236. changes to lemacs to get it to compile on your system, it would be quite
  237. helpful if you would send me context diffs (diff -c) against version 19.6.
  238.