From help-lucid-emacs-request@heavens-gate.lucid.com  Thu Jun  4 15:07:38 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA16055; Thu, 4 Jun 92 15:07:38 PDT
Received: by heavens-gate.lucid.com id AA01953g; Thu, 4 Jun 92 14:56:27 PDT
Received: from sgi.sgi.com (SGI.COM) by heavens-gate.lucid.com id AA01948g; Thu, 4 Jun 92 14:56:20 PDT
Received: from athos.pei.com by sgi.sgi.com via UUCP (911016.SGI/910110.SGI)
	for help-lucid-emacs@lucid.com id AA20048; Thu, 4 Jun 92 15:04:21 -0700
Received: from athos.pei.com by pei.pei.com (5.52/900721.SGI)
	for sgi!lucid.com!help-lucid-emacs id AA04517; Thu, 4 Jun 92 14:49:44 PDT
Received: by athos (4.1/SMI-4.1)
	id AA06808; Thu, 4 Jun 92 15:05:43 PDT
Date: Thu, 4 Jun 92 15:05:43 PDT
From: berry@athos.pei.com (Berry Kercheval)
Message-Id: <9206042205.AA06808@athos>
To: help-lucid-emacs@lucid.com
Subject: Building 19.1
Reply-To: berry@pei.com


When I try to build Lucid Emacs 19.1 on a Sun IPX with SunOS 4.1.2,
GCC 2.1 and X11R5 I get a problem when it tries to load temacs.  I get
'ld: Undefined symbol
   ___main'

Any idea what the problem is? 

  --berry


Berry Kercheval :: berry@pei.com :: Protocol Engines, Inc.  Mt. View, CA
"And there's more where that came from!"


From help-lucid-emacs-request@heavens-gate.lucid.com  Thu Jun  4 15:23:57 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA16076; Thu, 4 Jun 92 15:23:57 PDT
Received: by heavens-gate.lucid.com id AA02049g; Thu, 4 Jun 92 15:13:24 PDT
Received: from watergate.lucid ([192.31.212.117]) by heavens-gate.lucid.com id AA02044g; Thu, 4 Jun 92 15:13:11 PDT
Received: by watergate.lucid (4.1/SMI-4.1)
	id AA07315; Thu, 4 Jun 92 15:21:20 PDT
Date: Thu, 4 Jun 92 15:21:20 PDT
From: eb@watergate (Eric Benson)
Message-Id: <9206042221.AA07315@watergate.lucid>
To: berry@pei.com
Cc: help-lucid-emacs@lucid.com
Subject: Re: Building 19.1
In-Reply-To: Berry Kercheval's message of Thu 4-Jun-92 15:05:43 PDT <9206042205.AA06808@athos>
References: <9206042205.AA06808@athos>

It looks like you're compiling with ENERGIZE defined.  This is causing
some code to be compiled for C++ static initializers.  You can
recompile with ENERGIZE not defined (change config.h) or you can
supply an empty definition of _main().

From help-lucid-emacs-request@heavens-gate.lucid.com  Thu Jun  4 20:01:25 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA16410; Thu, 4 Jun 92 20:01:25 PDT
Received: by heavens-gate.lucid.com id AA03247g; Thu, 4 Jun 92 19:50:28 PDT
Received: from colobus.cv.nrao.edu by heavens-gate.lucid.com id AA03243g; Thu, 4 Jun 92 19:50:23 PDT
Received: by colobus.cv.nrao.edu (4.1/DDN-DLB/1.5)
	id AA19200; Thu, 4 Jun 92 22:58:11 EDT
Date: Thu, 4 Jun 92 22:58:11 EDT
From: bglenden@colobus.CV.NRAO.EDU (Brian Glendenning)
Message-Id: <9206050258.AA19200@colobus.cv.nrao.edu>
To: help-lucid-emacs@lucid.com
Subject: GNUS/VM or other examples?


Does anyone have any "fancy" examples for lemacs? I'd be interested in
seeing things like:

1) Multifont display of messages/articles
2) Selecting a message/article/newsgroup solely with the mouse
3) Deleting likewise (in fact, deleting messages in a highlighted
   range would be great).
4) Useful menus

Or any just generally fancy stuff :-)

Brian

       Brian Glendenning - National Radio Astronomy Observatory
bglenden@nrao.edu          Charlottesville Va.           (804) 296-0286

From help-lucid-emacs-request@heavens-gate.lucid.com  Thu Jun  4 20:15:33 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA16414; Thu, 4 Jun 92 20:15:33 PDT
Received: by heavens-gate.lucid.com id AA03285g; Thu, 4 Jun 92 20:01:29 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA03280g; Thu, 4 Jun 92 20:01:21 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA13547; Thu, 4 Jun 92 20:09:34 PDT
Date: Thu, 4 Jun 92 20:09:34 PDT
Message-Id: <9206050309.AA13547@thalidomide.lucid>
X-Windows: Flawed beyond belief.
From: Jamie Zawinski <jwz@heavens-gate.lucid.com>
Sender: jwz@thalidomide
To: bglenden@colobus.CV.NRAO.EDU (Brian Glendenning)
Cc: help-lucid-emacs@lucid.com
Subject: Re: GNUS/VM or other examples?
In-Reply-To: Brian Glendenning's message of Thu 4-Jun-92 22:58:11 EDT <9206050258.AA19200@colobus.cv.nrao.edu>
References: <9206050258.AA19200@colobus.cv.nrao.edu>

There are a few simple examples of keybindings and that sort of thing in
.../etc/lemacs-examples.el.  

Any command you can bind to a key, you can bind to a mouse button, using the
syntax (global-set-key '[(control button1)] 'command).  To define a command
that looks at the position clicked, you have to get the invoking event and
extract the position from it.  Look at info.el, webster.el, and mouse.el for
examples of this.

I use this to fontify GNUS headers:

(setq gnus-Select-article-hook 'fontify-headers)

(defun fontify-headers ()
  (let* ((current 'italic)
	 p)
    (save-excursion
      (set-buffer gnus-Article-buffer)
      (goto-char (point-min))
      (while (and (not (eobp)) (not (looking-at "\n")))
	(cond
	 ((looking-at "^[^ \t\n]+[ \t]*:")
	  (set-extent-face
	   (make-extent (match-beginning 0) (match-end 0))
	   'bold)
	  (setq p (match-end 0))
	  (cond
	   ((looking-at "Subject[ \t]*:")
	    (setq current 'bold-italic)
	    (end-of-line)
	    (set-extent-face (make-extent p (point)) current))
	   ((looking-at "\\(From\\|Resent-From\\)[ \t]*:")
	    (setq current 'bold-italic)
	    (goto-char (match-end 0))
	    (or (looking-at ".*(\\(.*\\))")
		(looking-at "\\(.*\\)<")
		(looking-at "\\(.*\\)[@%]")
		(looking-at "\\(.*\\)"))
	    (end-of-line)
	    (set-extent-face (make-extent p (match-beginning 1)) 'italic)
	    (set-extent-face (make-extent (match-beginning 1) (match-end 1))
			     current)
	    (set-extent-face (make-extent (match-end 1) (point)) 'italic)
	    )
	   (t
	    (setq current 'italic)
	    (end-of-line)
	    (set-extent-face (make-extent p (point)) current))))
	 (t
	  (setq p (point))
	  (end-of-line)
	  (set-extent-face (make-extent p (point)) current)))
	(forward-line 1))
      (while (not (eobp))
	(cond ((looking-at "^[ \t]*[A-Z]*[]}<>|][ \t]*")
	       (goto-char (match-end 0))
	       (setq current 'italic))
	      ((or (looking-at "^In article\\|^In message")
		   (looking-at
	    "^[^ \t].*\\(writes\\|wrote\\|said\\):\n^[ \t]+[A-Z]*[]}<>|]"))
	       (setq current 'bold-italic))
	      (t (setq current nil)))
	(cond (current
	       (setq p (point))
	       (end-of-line)
	       (set-extent-face (make-extent p (point)) current)))
	(forward-line 1))
      )))

From help-lucid-emacs-request@heavens-gate.lucid.com  Fri Jun  5 01:21:50 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA16800; Fri, 5 Jun 92 01:21:50 PDT
Received: by heavens-gate.lucid.com id AA03929g; Fri, 5 Jun 92 01:11:20 PDT
Received: from relay.CDNnet.CA by heavens-gate.lucid.com id AA03925g; Fri, 5 Jun 92 01:11:00 PDT
Received: by relay.CDNnet.CA (4.1/1.14)
	id AA09738; Fri, 5 Jun 92 01:18:55 PDT
Date:  5 Jun 92  1:18 -0700
From: George Lindholm <lindholm@ucs.ubc.ca>
To: <help-lucid-emacs@lucid.com>
Message-Id: <1243*lindholm@ucs.ubc.ca>
Subject: Help: Installed binary can't find X server

When I run  the installed version of lemacs I get:

This version of emacs only runs under X Windows (for now).
Check that your $DISPLAY environment variable is properly set.

but when I run src/xemacs it has no problems with finding the server.

According to cmp the two files are identical. What is going on ????  Help

SunOS 4.1.1, gcc 2.1, X11R5

    George

George Lindholm                                  phone:    (604) 822-4375
University Computing Services, UBC               fax:      (604) 822-5116
6356 Agricultural Road, Vancouver, B.C., Canada  internet: lindholm@ucs.ubc.ca
V6T 1Z2                                          bitnet:   USERGNL@UBCMTSG





From help-lucid-emacs-request@heavens-gate.lucid.com  Fri Jun  5 01:31:28 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA16809; Fri, 5 Jun 92 01:31:28 PDT
Received: by heavens-gate.lucid.com id AA03948g; Fri, 5 Jun 92 01:21:00 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA03944g; Fri, 5 Jun 92 01:20:55 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA13981; Fri, 5 Jun 92 01:29:12 PDT
Date: Fri, 5 Jun 92 01:29:12 PDT
Message-Id: <9206050829.AA13981@thalidomide.lucid>
X-Windows: Putting new limits on productivity.
From: Jamie Zawinski <jwz@heavens-gate.lucid.com>
Sender: jwz@thalidomide
To: George Lindholm <lindholm%ucs.ubc.ca@lucid.com>
Cc: <help-lucid-emacs@lucid.com>
Subject: Re: Help: Installed binary can't find X server
In-Reply-To: George Lindholm's message of  5-Jun-92 1:18 -0700 <1243*lindholm@ucs.ubc.ca>
References: <1243*lindholm@ucs.ubc.ca>

The "only runs under X" message tends to happen when an error happens very
early in emacs startup, before emacs is able to make the error message show up
(well, it could/should, but it doesn't right now.)  If the files are the same,
then the only variable is their location.  Probably what's happening is that
it is finding a v18 lisp directory instead of the one that came with lemacs.
Put a link to the lemacs lisp and etc directories in the same directory that 
you copied the executable to.  If you don't do that, it will try 
/usr/local/lib/emacs/lisp and then /usr/local/emacs/lisp.  If either of those
exists and is the v18 lisp directory (specifically term/x-win.el) then you
will lose.

	-- Jamie

From help-lucid-emacs-request@heavens-gate.lucid.com  Fri Jun  5 06:38:09 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA16930; Fri, 5 Jun 92 06:38:09 PDT
Received: by heavens-gate.lucid.com id AA04400g; Fri, 5 Jun 92 06:22:52 PDT
Received: from ora.com (ruby.ora.com) by heavens-gate.lucid.com id AA04396g; Fri, 5 Jun 92 06:22:45 PDT
Received: by ora.com (5.65c/Spike-2.1)
	id AA28918; Fri, 5 Jun 1992 09:30:49 -0400
Received: by artemis.ora.com (4.1/Spike-2.1)
	id AA00185; Fri, 5 Jun 92 08:56:15 EDT
Date: Fri, 5 Jun 92 08:56:15 EDT
From: david@ora.com (David Flanagan)
Message-Id: <9206051256.AA00185@artemis.ora.com>
To: help-lucid-emacs@lucid.com
Subject: Existing elisp code for lucid emacs?


Lucid emacs sounds great, but what can I do with it without hacking
elisp?  Is there a C-mode that will italicize comments, for example, or
a multi-font nroff-mode?  I thought Epoch was great until I discovered
that it didn't come with any elisp that took advantage of its
capabilities, and started spending all my time hacking elisp instead of
getting my "real work" done.

So: does Lucid ship any nifty new elisp?  Will Lucid maintain a
repository of neat elisp hacks?

	David Flanagan

From help-lucid-emacs-request@heavens-gate.lucid.com  Fri Jun  5 09:38:03 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA17094; Fri, 5 Jun 92 09:38:03 PDT
Received: by heavens-gate.lucid.com id AA04870g; Fri, 5 Jun 92 09:16:18 PDT
Received: from phloem.uoregon.edu by heavens-gate.lucid.com id AA04866g; Fri, 5 Jun 92 09:16:10 PDT
Received: from cambium.uoregon.edu by phloem.uoregon.edu
	(4.1/UofO NetSvc-05/01/91) id AA09956; Fri, 5 Jun 92 09:24:11 PDT
Date: Fri, 5 Jun 92 09:24:11 PDT
From: meyer@phloem.uoregon.edu (David M. Meyer 503/346-1747)
Message-Id: <9206051624.AA09956@phloem.uoregon.edu>
Received: by cambium.uoregon.edu (4.1/UofO NetSvc-03/02/92)
	id AA04537; Fri, 5 Jun 92 09:24:09 PDT
To: help-lucid-emacs@lucid.com
Subject: help building on SunOS 4.1.2

	Howdy,


	I haven't been able to build lemacs yet. If I configure
	it for USE_GCC and USE_OLIT I get the following when I
	link it:

		ld: Undefined symbol
		   ___main
		   _resource_string
		   _XtQString
		   _XtQFontStruct
		   _XtQFont
		   _XtQInt
		   _XtQBoolean
		   _XrmCompileResourceList
		*** Error code 2

	I shold point out that if you type "make" in the src
	directory it dies:

		make  -f xmakefile  all
		make: Fatal error: Don't know how to make target `all'
		Current working directory /net/phloem/disk1/home/meyer/lemacs-19.1/src
		*** Error code 1
		make: Fatal error: Command failed for target `doall'

	Finally, if I define  INCLUDE_EXTENSIONS in lwlib gcc
	dies horribly.

	Any ideas?

	Thanks,


	Dave

-------------------------------------------------------------------------------

	David M. Meyer			Voice:     503/346-1747
					Pager:	   503/342-9458
					FAX:	   503/346-4397
	Senior Network Engineer		Internet:  meyer@ns.uoregon.edu
	Office of University Computing	Bitnet:    meyer@oregon
  	University of Oregon		UUCP:	   ...!uoregon!meyer
	1225 Kincaid			
	Eugene, OR 97403	


From help-lucid-emacs-request@heavens-gate.lucid.com  Fri Jun  5 10:57:47 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA17239; Fri, 5 Jun 92 10:57:47 PDT
Received: by heavens-gate.lucid.com id AA05215g; Fri, 5 Jun 92 10:42:30 PDT
Received: from sgi.sgi.com (SGI.COM) by heavens-gate.lucid.com id AA05208g; Fri, 5 Jun 92 10:42:16 PDT
Received: from athos.pei.com by sgi.sgi.com via UUCP (911016.SGI/910110.SGI)
	for help-lucid-emacs@lucid.com id AA03603; Fri, 5 Jun 92 10:50:17 -0700
Received: from athos.pei.com by pei.pei.com (5.52/900721.SGI)
	for sgi!lucid.com!help-lucid-emacs id AA06166; Fri, 5 Jun 92 10:34:13 PDT
Received: by athos (4.1/SMI-4.1)
	id AA08138; Fri, 5 Jun 92 10:51:40 PDT
Date: Fri, 5 Jun 92 10:51:40 PDT
From: berry@athos.pei.com (Berry Kercheval)
Message-Id: <9206051751.AA08138@athos>
To: help-lucid-emacs@lucid.com
Subject: help building on SunOS 4.1.2
References: <9206051624.AA09956@phloem.uoregon.edu>
Reply-To: berry@pei.com


	Howdy,


	I haven't been able to build lemacs yet. If I configure
	it for USE_GCC and USE_OLIT I get the following when I
	link it:

		ld: Undefined symbol
		   ___main


I had this problem, and solved it by setting LIB_GCC in config.h to
the explicit path of my gcc library -- it's in a nonstandard place.

I used USE_LUCID, though -- It seemed to work just fine, although I
have no Lucid products.  I suspect USE_LUCID is really more like
USE_VANILLA_X_AND_THIS_NEAT_STUFF_WE_ARE_INCLUDING_FREE_WITH_EMACS.

Way cool, Jamie!

  --berry

--
Berry Kercheval :: berry@pei.com :: Protocol Engines, Inc.  Mt. View, CA
"And there's more where that came from!"


From help-lucid-emacs-request@heavens-gate.lucid.com  Fri Jun  5 10:59:45 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA17252; Fri, 5 Jun 92 10:59:45 PDT
Received: by heavens-gate.lucid.com id AA05228g; Fri, 5 Jun 92 10:45:51 PDT
Received: from watergate.lucid ([192.31.212.117]) by heavens-gate.lucid.com id AA05224g; Fri, 5 Jun 92 10:45:45 PDT
Received: by watergate.lucid (4.1/SMI-4.1)
	id AA08205; Fri, 5 Jun 92 10:53:56 PDT
Date: Fri, 5 Jun 92 10:53:56 PDT
From: eb@watergate (Eric Benson)
Message-Id: <9206051753.AA08205@watergate.lucid>
To: berry@pei.com
Cc: help-lucid-emacs@lucid.com
Subject: Re: help building on SunOS 4.1.2
In-Reply-To: Berry Kercheval's message of Fri 5-Jun-92 10:51:40 PDT <9206051751.AA08138@athos>
References: <9206051624.AA09956@phloem.uoregon.edu>
	<9206051751.AA08138@athos>

Yes, USE_LUCID means "use the Lucid widget set" instead of the Motif
or OLIT widget set.  The Lucid widget set is included with the
distribution.

From help-lucid-emacs-request@heavens-gate.lucid.com  Fri Jun  5 11:00:51 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA17256; Fri, 5 Jun 92 11:00:51 PDT
Received: by heavens-gate.lucid.com id AA05235g; Fri, 5 Jun 92 10:46:52 PDT
Received: from sgi.sgi.com (SGI.COM) by heavens-gate.lucid.com id AA05231g; Fri, 5 Jun 92 10:46:43 PDT
Received: from athos.pei.com by sgi.sgi.com via UUCP (911016.SGI/910110.SGI)
	for help-lucid-emacs@lucid.com id AA04267; Fri, 5 Jun 92 10:54:47 -0700
Received: from athos.pei.com by pei.pei.com (5.52/900721.SGI)
	for sgi!lucid.com!help-lucid-emacs id AA06179; Fri, 5 Jun 92 10:38:41 PDT
Received: by athos (4.1/SMI-4.1)
	id AA08146; Fri, 5 Jun 92 10:56:08 PDT
Date: Fri, 5 Jun 92 10:56:08 PDT
From: berry@athos.pei.com (Berry Kercheval)
Message-Id: <9206051756.AA08146@athos>
To: help-lucid-emacs@lucid.com
Subject: SuperCite broken?
Reply-To: berry@pei.com

Anyone noticed that SuperCite breaks under lucid emacs?  I have VM
5.31 and SuperCIte 2.1, and when replying I get a wrong type argument:
integer-or-marker-p error.  If no one has seen this I'll fix it but
was wondering if it had already been done...

  --berry

--
Berry Kercheval :: berry@pei.com :: Protocol Engines, Inc.  Mt. View, CA
"And there's more where that came from!"


From help-lucid-emacs-request@heavens-gate.lucid.com  Fri Jun  5 11:07:23 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA17265; Fri, 5 Jun 92 11:07:23 PDT
Received: by heavens-gate.lucid.com id AA05251g; Fri, 5 Jun 92 10:51:43 PDT
Received: from watergate.lucid ([192.31.212.117]) by heavens-gate.lucid.com id AA05247g; Fri, 5 Jun 92 10:51:37 PDT
Received: by watergate.lucid (4.1/SMI-4.1)
	id AA08235; Fri, 5 Jun 92 10:59:47 PDT
Date: Fri, 5 Jun 92 10:59:47 PDT
From: eb@watergate (Eric Benson)
Message-Id: <9206051759.AA08235@watergate.lucid>
To: berry@pei.com
Cc: help-lucid-emacs@lucid.com
Subject: Re: SuperCite broken?
In-Reply-To: Berry Kercheval's message of Fri 5-Jun-92 10:56:08 PDT <9206051756.AA08146@athos>
References: <9206051756.AA08146@athos>

This is probably an instance of this problem.  This is the most common
compatibility problem, and one that is easily fixed.  This is from the
NEWS file:

*** Compatibility note: if you have code which uses (mark) or (mark-marker),
then you need to either: change those calls to (mark t) or (mark-marker t);
or simply bind `zmacs-regions' to nil around the call to mark or mark-marker.
This is probably the best solution, since it will work in Emacs18 as well.

From help-lucid-emacs-request@heavens-gate.lucid.com  Fri Jun  5 12:36:04 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA17377; Fri, 5 Jun 92 12:36:04 PDT
Received: by heavens-gate.lucid.com id AA05592g; Fri, 5 Jun 92 12:16:08 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA05588g; Fri, 5 Jun 92 12:16:01 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA14932; Fri, 5 Jun 92 12:24:13 PDT
Date: Fri, 5 Jun 92 12:24:13 PDT
Message-Id: <9206051924.AA14932@thalidomide.lucid>
X-Windows: No hardware is safe.
From: Jamie Zawinski <jwz@heavens-gate.lucid.com>
Sender: jwz@thalidomide
To: meyer@phloem.uoregon.edu (David M. Meyer 503/346-1747)
Cc: help-lucid-emacs@lucid.com
Subject: Re: help building on SunOS 4.1.2
In-Reply-To: David M. Meyer's message of Fri 5-Jun-92 09:24:11 PDT <9206051624.AA09956@phloem.uoregon.edu>
References: <9206051624.AA09956@phloem.uoregon.edu>

In message <9206051624.AA09956@phloem.uoregon.edu> David M. Meyer wrote:
>
> 		ld: Undefined symbol
> 		   ___main

This seems to mean that you aren't linking with the GCC library; LIB_GCC
in config.h needs to be set to something appropriate.

> 		   _XtQString
> 		   _XtQFontStruct
> 		   _XtQFont

Perhaps this means that you are linking with R4 header files and R5 libraries,
or vice versa?  I'm not sure.

> 	I shold point out that if you type "make" in the src
> 	directory it dies:
> 
> 		make -f xmakefile all make: Fatal error: Don't know how to
> 		make target `all' Current working directory
> 		/net/phloem/disk1/home/meyer/lemacs-19.1/src *** Error code 1
> 		make: Fatal error: Command failed for target `doall'

Yes, that was a stupid mistake that I thought I had fixed *before* making the
tar files, but apparently I was wrong.  You just have to add

all: xemacs

> 	Finally, if I define  INCLUDE_EXTENSIONS in lwlib gcc
> 	dies horribly.

I suspect that by "dies horribly" you mean "can't find file IntrinsicI.h".
To use INCLUDE_EXTENSIONS, you have to have the X11 source tree online, 
and you have to tell the Imakefile where it is.  But you don't need
INCLUDE_EXTENSIONS for anything.  We only need it when building emacses
compiled with support for Energize.

	-- Jamie

From help-lucid-emacs-request@heavens-gate.lucid.com  Fri Jun  5 12:42:14 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA17382; Fri, 5 Jun 92 12:42:14 PDT
Received: by heavens-gate.lucid.com id AA05627g; Fri, 5 Jun 92 12:20:10 PDT
Received: from santafe.ecn.purdue.edu by heavens-gate.lucid.com id AA05623g; Fri, 5 Jun 92 12:20:04 PDT
Received: by santafe.ecn.purdue.edu (5.65/1.30jrs)
	id AA11573; Fri, 5 Jun 92 14:28:07 -0500
Date: Fri, 5 Jun 92 14:28:07 -0500
From: luj@ecn.purdue.edu (John Lu)
Message-Id: <9206051928.AA11573@santafe.ecn.purdue.edu>
To: help-lucid-emacs@lucid.com
Subject: problems in starting lemacs
Cc: luj@ecn.purdue.edu


Hi, Everyone,

I just ftp'ed lemacs sun4 binary. I made necessary links for lock and 
lisp directory. Then I invoked lemacs:

luj@santafe [14]$ ls
README  etc/    lisp@   lock@   src/
luj@santafe [15]$ src/lemacs
-----Emacs: *scratch*              (Fundamental)----All-------------------------

This version of emacs only runs under X Windows (for now).
Check that your $DISPLAY environment variable is properly set.
errno: 69               


Why did lemacs complain $DISPLAY was not set. I am running X11R5,
my $DISPLAY was :0.0   I also tried to explicite say

%ksh DISPLAY=`hostname`:0 src/lemacs


lemacs still complained the same way. What was wrong ? 
How can I fix this ?


Thanks a lot,

-- john
 

From help-lucid-emacs-request@heavens-gate.lucid.com  Fri Jun  5 12:52:34 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA17402; Fri, 5 Jun 92 12:52:34 PDT
Received: by heavens-gate.lucid.com id AA05674g; Fri, 5 Jun 92 12:33:18 PDT
Received: from foobar.cs.Colorado.EDU by heavens-gate.lucid.com id AA05670g; Fri, 5 Jun 92 12:33:11 PDT
Received: by foobar.cs.Colorado.EDU id AA17062
  (5.65c/IDA-1.4.4 for help-lucid-emacs@lucid.com); Fri, 5 Jun 1992 13:41:18 -0600
Date: Fri, 5 Jun 1992 13:41:18 -0600
From: Dirk Grunwald <grunwald@foobar.cs.Colorado.EDU>
Message-Id: <199206051941.AA17062@foobar.cs.Colorado.EDU>
To: help-lucid-emacs@lucid.com
Subject: Building on RISC/Ultrix 4.2
References: <9206051624.AA09956@phloem.uoregon.edu>
	<9206051924.AA14932@thalidomide.lucid>
Reply-To: grunwald@foobar.cs.colorado.edu
Office: 6-1 ECOT (303) 492-0452



Has anyone built lemacs on a DECstation?

I found the following problems:

	+ need -lcursesX -ltermcap specified in m/m-pmax.h
		(-lcursesX defined tparm, but -lcurses doesn't)

	+ need to have a version of strdup

	+ need 'remainder', which isn't available on DECstations

	+ fileio.c needs to include <sys/param.h>

	+ when I remove the define for real_path_name, the function
	isn't compiled in fileio.c, and causes link errors. 

	+ need to remove dependence of e.g., 'filehdr.h' from the 
	makefile (should be /usr/include/filehdr.h).

From help-lucid-emacs-request@heavens-gate.lucid.com  Fri Jun  5 12:59:34 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA17410; Fri, 5 Jun 92 12:59:34 PDT
Received: by heavens-gate.lucid.com id AA05664g; Fri, 5 Jun 92 12:31:59 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA05660g; Fri, 5 Jun 92 12:31:53 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA14980; Fri, 5 Jun 92 12:40:05 PDT
Date: Fri, 5 Jun 92 12:40:05 PDT
Message-Id: <9206051940.AA14980@thalidomide.lucid>
From: Jamie Zawinski <jwz@heavens-gate.lucid.com>
Sender: jwz@thalidomide
To: luj@ecn.purdue.edu (John Lu)
Cc: help-lucid-emacs@lucid.com
Subject: Re: problems in starting lemacs
In-Reply-To: John Lu's message of Fri 5-Jun-92 14:28:07 -0500 <9206051928.AA11573@santafe.ecn.purdue.edu>
References: <9206051928.AA11573@santafe.ecn.purdue.edu>

The "only runs under X" message tends to happen when an error happens very
early in emacs startup, before emacs is able to make the error message show up
(well, it could/should, but it doesn't right now.)  Probably what is happening
is that something is wrong with your lisp directory, and emacs is not finding
or is getting the wrong version of .../lisp/term/x-win.el.

If the lisp directory doesn't exist, then as a last resort, emacs tries 
/usr/local/lib/emacs/lisp and then /usr/local/emacs/lisp.  If either of those
exists and is the v18 lisp directory, then you will lose.

	-- Jamie

From help-lucid-emacs-request@heavens-gate.lucid.com  Fri Jun  5 13:47:36 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA17447; Fri, 5 Jun 92 13:47:36 PDT
Received: by heavens-gate.lucid.com id AA05934g; Fri, 5 Jun 92 13:30:09 PDT
Received: from SLCS.SLB.COM by heavens-gate.lucid.com id AA05924g; Fri, 5 Jun 92 13:29:59 PDT
Received: from sjosu1.sinet.slb.com (sjosu1.sjo.SINet.SLB.COM)
	by SLCS.SLB.COM (4.1/SLCS Mailhost 3.13)
	id AA26112; Fri, 5 Jun 92 15:37:44 CDT
Received: from fgs.slb.com (fgssu1) by sjosu1.sinet.slb.com
	id AA07702; Fri, 5 Jun 92 13:39:03 PDT
Received: from zippy.slb.com by fgs.slb.com (4.1/SINet-4.0.1)
	id AA06473; Fri, 5 Jun 92 13:39:42 PDT
Date: Fri, 5 Jun 92 13:39:42 PDT
From: santiago@fgssu1.fgs.slb.com (Ramon Santiago)
Message-Id: <9206052039.AA06473@fgs.slb.com>
To: help-lucid-emacs@lucid.com
Subject: missing all: target?

Ok, so I deleted the mail about the problem with the all: target.

Can someone send this to me again.


Ramon Santiago				e-mail:	santiago@fgssu1.fgs.slb.com
Finder Graphics Systems			phone:	(415) 927-0100
A Schlumberger Company			fax:	(415) 927-2923
Corte Madera, CA


From help-lucid-emacs-request@heavens-gate.lucid.com  Fri Jun  5 14:15:40 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA17491; Fri, 5 Jun 92 14:15:40 PDT
Received: by heavens-gate.lucid.com id AA06016g; Fri, 5 Jun 92 13:56:54 PDT
Received: from eiffeltower.ecn.purdue.edu by heavens-gate.lucid.com id AA06012g; Fri, 5 Jun 92 13:56:48 PDT
Received: from localhost by eiffeltower.ecn.purdue.edu (5.65/1.30jrs)
	id AA03440; Fri, 5 Jun 92 16:04:36 -0500
Message-Id: <9206052104.AA03440@eiffeltower.ecn.purdue.edu>
To: santiago@fgssu1.fgs.slb.com (Ramon Santiago)
Cc: help-lucid-emacs@lucid.com
Subject: Re: missing all: target? 
In-Reply-To: Your message of Fri, 05 Jun 92 13:39:42 -0700.
             <9206052039.AA06473@fgs.slb.com> 
X-Mailer: RAND/UCI MH System
Date: Fri, 05 Jun 92 16:04:33 -0500
From: John Lu <luj@ecn.purdue.edu>

> Ok, so I deleted the mail about the problem with the all: target.
> 
> Can someone send this to me again.
> 
Well all you need to do is to check src/ymakefile and add the target

all: xemacs


before the target for xemacs.

> 
> Ramon Santiago				e-mail:	santiago@fgssu1.fgs.slb.com
> Finder Graphics Systems			phone:	(415) 927-0100
> A Schlumberger Company			fax:	(415) 927-2923
> Corte Madera, CA
> 

-- John

From help-lucid-emacs-request@heavens-gate.lucid.com  Fri Jun  5 15:36:20 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA17539; Fri, 5 Jun 92 15:36:20 PDT
Received: by heavens-gate.lucid.com id AA06300g; Fri, 5 Jun 92 15:18:17 PDT
Received: from sgi.sgi.com (SGI.COM) by heavens-gate.lucid.com id AA06296g; Fri, 5 Jun 92 15:18:08 PDT
Received: from athos.pei.com by sgi.sgi.com via UUCP (911016.SGI/910110.SGI)
	for help-lucid-emacs@lucid.com id AA03952; Fri, 5 Jun 92 15:26:12 -0700
Received: from athos.pei.com by pei.pei.com (5.52/900721.SGI)
	for sgi!lucid.com!help-lucid-emacs id AA06849; Fri, 5 Jun 92 15:09:50 PDT
Received: by athos (4.1/SMI-4.1)
	id AA08500; Fri, 5 Jun 92 15:27:37 PDT
Date: Fri, 5 Jun 92 15:27:37 PDT
From: berry@athos.pei.com (Berry Kercheval)
Message-Id: <9206052227.AA08500@athos>
To: help-lucid-emacs@lucid.com
Subject: VM problem

Well when I used the vm provided with lemacs, doing vm-reply got me a
bad number of arguments error on a byte-compiled function deep inside
vm-delete-duplicates.  I set debug-on-error to t and loaded vm-misc.el
to see if I could get somthing more readable than 
	"(lamda () "\234\235\456\456\")"

Lo!  Now it works.  I re-byte-compiled and re-loaded the file, and it
still works.  How mysterious.

  --berry (puzzled but happy)

--
Berry Kercheval :: berry@pei.com :: Protocol Engines, Inc.  Mt. View, CA
"And there's more where that came from!"


From help-lucid-emacs-request@heavens-gate.lucid.com  Fri Jun  5 16:56:01 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA17660; Fri, 5 Jun 92 16:56:01 PDT
Received: by heavens-gate.lucid.com id AA06658g; Fri, 5 Jun 92 16:35:18 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA06650g; Fri, 5 Jun 92 16:34:45 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA15339; Fri, 5 Jun 92 16:42:59 PDT
Date: Fri, 5 Jun 92 16:42:59 PDT
Message-Id: <9206052342.AA15339@thalidomide.lucid>
X-Windows: A terminal disease.
From: Jamie Zawinski <jwz@heavens-gate.lucid.com>
Sender: jwz@thalidomide
To: berry@athos.pei.com (Berry Kercheval)
Cc: help-lucid-emacs@lucid.com
Cc: bug-lucid-emacs@lucid.com
Reply-To: jwz@heavens-gate.lucid.com
Subject: Re: VM problem
In-Reply-To: Berry Kercheval's message of Fri 5-Jun-92 15:27:37 PDT <9206052227.AA08500@athos>
References: <9206052227.AA08500@athos>

In message <9206052227.AA08500@athos> Berry Kercheval wrote:
>
> Well when I used the vm provided with lemacs, doing vm-reply got me a
> bad number of arguments error on a byte-compiled function deep inside
> vm-delete-duplicates.

That's very strange.  Can you reproduce it?  If so, I'd like to see the
backtrace.  (uuencode it before you mail it to me.)

It would also help if you could try to reproduce it in an emacs started
with -q, to see if the problem is a bad interaction with some code you
have loaded.

By the way, messages like this should go to bug-lucid-emacs, not
help-lucid-emacs.  I think that, at least for the next few days,
help-lucid-emacs should be a pretty low volume list.  It should be for
discussing the use of lemacs, not bugs in it, or in its installation
procedures.  If this high volume of bug reports keeps up, people are
going to unsubscribe from the help list, which would be bad.

	-- Jamie

From help-lucid-emacs-request@heavens-gate.lucid.com  Fri Jun  5 18:14:10 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA17702; Fri, 5 Jun 92 18:14:10 PDT
Received: by heavens-gate.lucid.com id AA06923g; Fri, 5 Jun 92 17:54:39 PDT
Received: from ucsd.edu by heavens-gate.lucid.com id AA06918g; Fri, 5 Jun 92 17:54:31 PDT
Received: from yukawa.ucsd.edu by ucsd.edu; id AA06022
	sendmail 5.64/UCSD-2.2-sun via SMTP
	Fri, 5 Jun 92 18:02:35 -0700 for help-lucid-emacs@lucid.com
Received: by yukawa.ucsd.edu (5.57/Ultrix3.0-C)
	id AA29540; Fri, 5 Jun 92 18:00:58 -0700
Date: Fri, 5 Jun 1992 18:00:55 -0700 (PDT)
From: Andrew Cohen <cohen@BUCRF16.BU.EDU>
Subject: lemacs on decstation
To: help-lucid-emacs@lucid.com
Message-Id: <Pine.2.4.55.9206051813.A29528@yukawa>






I just tried compiling lemacs on a decstation 3100 running ultrix4.2 
with X11R5, and had a few problems. After some minor fooling with makefiles
and config.h I got xemacs to compile, but when I run it, it first blanks
the xterminal from which I start it, then draws part of an emacs mode line,
and finishes with the message that lemacs currently only works under X,
and I should check my $DISPLAY variable. Well, the display is set correctly.
Has anyone tried to compile for this platform?


Andy Cohen

PS I am not experienced with C, but I am willing to play with the debugger
a bit. So far no luck....

From help-lucid-emacs-request@heavens-gate.lucid.com  Sat Jun  6 11:57:05 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA18333; Sat, 6 Jun 92 11:57:05 PDT
Received: by heavens-gate.lucid.com id AA08398g; Sat, 6 Jun 92 11:35:08 PDT
Received: from sun4nl.nluug.nl by heavens-gate.lucid.com id AA08392g; Sat, 6 Jun 92 11:34:58 PDT
Received: from mh.nl by sun4nl.nluug.nl via EUnet
	id AA02194 (5.65b/CWI-3.3); Sat, 6 Jun 1992 20:41:08 +0200
Received: by mhres.mh.nl (/\=-/\ Smail3.1.18.1 #18.10)
	id <m0lu4k0-0005D7C@mhres.mh.nl>; Sat, 6 Jun 92 19:39 METDST
Received: by pasta.mh.nl (/\==/\ Smail3.1.25.1 #25.1)
	id <m0lu4gv-00000PC@pasta.mh.nl>; Sat, 6 Jun 92 19:36 MET DST
Message-Id: <m0lu4gv-00000PC@pasta.mh.nl>
Date: Sat, 6 Jun 92 19:36 MET DST
From: jv@mh.nl (Johan Vromans)
X-From: Multihouse, Gouda, The Netherlands
To: help-lucid-emacs@lucid.com
Subject: build problems [VAX/Ultrix]
X-Mailer: GNU Emacs 18.58.2 with VM 4.42

Hi,

Trying to build lemacs-19.1 on VAX/Ultrix 4.2 (gcc 2.1) I encountered some
problems that may not be limited to my system.

  1 src/faces.c needs "#include <sys/types.h>" before 
    "#include <sys/stat.h>".
    (This could be Ultrix specific.)

  2 When compiled with HAVE_REALNAME, the linker cannot find
    "realname". When compiled w/o HAVE_REALNAME, src/fileio.c
    does not include the code for Freal_path_name, but does call that
    function anyway. Again, the linker complains.

  3 Is it only my system that lacks "strdup"? I found one in GNU
    Liberty, is that one safe to be used?

  4 src/data.c calls "remainder", which is not available on my system.
    It is also not clear if lemacs can be compiled without
    LISP_FLOAT_TYPE. 

  5 This one is a real booby trap.
    GCC 2.1 installs libgcc.a in /usr/local/lib/gcc-lib/vax/2.1/libgcc.a.
    Guess what happens if you #define LIB_GCC to this filename in config.h.
    (Hint: the preprocessor defines 'vax' to be 1)...

  6 etc/Makefile is rather specific instead of generic. 

I have worked around all points, except for points 2 and 4.
Any suggestions?

	Johan

From help-lucid-emacs-request@heavens-gate.lucid.com  Sun Jun  7 04:05:22 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA18882; Sun, 7 Jun 92 04:05:22 PDT
Received: by heavens-gate.lucid.com id AA09695g; Sun, 7 Jun 92 03:43:03 PDT
Received: from lynx (lynx.csis.dit.csiro.au) by heavens-gate.lucid.com id AA09691g; Sun, 7 Jun 92 03:42:53 PDT
Received: from argo.csis.dit.csiro.au by lynx (4.1/1.0)
	id AA10049; Sun, 7 Jun 92 20:50:38 EST
Received: by argo.csis.dit.csiro.au (4.1/1.0)
	id AA02518; Sun, 7 Jun 92 20:50:36 EST
From: stuarth@csis.dit.csiro.au
Message-Id: <9206071050.AA02518@argo.csis.dit.csiro.au>
Subject: Printing Lucid emacs documentation...
To: help-lucid-emacs@lucid.com
Date: Sun, 7 Jun 92 20:50:36 EST
X-Mailer: ELM [version 2.3 PL11]

Hi,

I'm in the process of running the emacs texinfo file through TeX and dvips
to produce a Postscript file.  I notice that all the pages (starting at
the numbered ones) are shoved up toward the top of the paper with a large
gap at the bottom of each page.

I'm a TeX neophyte so I need to ask: Is this what was intended or is there
something amiss with our Tex and dvips setup?

Stu

/-----------------------------------------------------------------------------\
| Stuart Hungerford | Internet : stuarth@csis.dit.csiro.au                    |
| CSIRO DIT         | Voice    : +61-6-2750941                                |
| Australia         | Fax      : +61-6-2571052                                |
\-----------------------------------------------------------------------------/
  "Being a 7 foot robot means never having to say you're sorry" --
   REX-1 to Teenage Mutant Ninja Turtles

From help-lucid-emacs-request@heavens-gate.lucid.com  Sun Jun  7 13:20:47 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA19022; Sun, 7 Jun 92 13:20:47 PDT
Received: by heavens-gate.lucid.com id AA10196g; Sun, 7 Jun 92 12:55:34 PDT
Received: from sun2.nsfnet-relay.ac.uk by heavens-gate.lucid.com id AA10192g; Sun, 7 Jun 92 12:55:25 PDT
Via: syma.sussex.ac.uk; Sun, 7 Jun 1992 21:03:15 +0100
Received: from tsunb by syma.sussex.ac.uk; Sun, 7 Jun 92 21:02:11 +0100
Message-Id: <6962.9206071953@tsunb.cogs.susx.ac.uk>
From: michaell@cogs.sussex.ac.uk (INSSOMNIAK)
Date: Sun, 7 Jun 1992 20:53:05 +0100
Return-Receipt-To: michaell@uk.ac.susx.cogs
X-Mailer: Z-Mail (2.0.5 1/15/92)
To: help-lucid-emacs@lucid.com
Subject: Compilation Problems
Cc: michaell@cogs.sussex.ac.uk

 I am trying to compile lucid emacs V19.1 on a sun4 running sunos 4.1.1. I
 am using gcc V2.1 .
 
 I am trying to compile lucid with OpenWindows but lucid isnt cooperating.
 I have set all the configuration stuff in config.h etc and when I do make
 all it makes etc/ quite happily and then says unable to make all in src/
 
 I sussed that out by doing make xemacs instead.
 
 I then get undefined control in lwlib.c: line 39. even though USE_OLIT is
 defined.
 
 I deleted the code and tried again only to get the error no such file
 "xt_extension.h"
 
 This is as far as I can get cos the file is nowhere to be found.
 
 Have I made a really stupid mistake or is the archive corrupt? I tried
gnu
 make and our standard make but it made no difference. I got the files
from
 labrea.stanford.edu.
 
 I also got the precompiled code for the sun4 and that works ok. I did
want
 the OpenWindows version though :-(
 
 Any help that could be offered would be very much appreciated.
 
 Mike. 
 -- 
 INSSOMNIAK





-- 
INSSOMNIAK

From help-lucid-emacs-request@heavens-gate.lucid.com  Sun Jun  7 17:53:54 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA19119; Sun, 7 Jun 92 17:53:54 PDT
Received: by heavens-gate.lucid.com id AA10672g; Sun, 7 Jun 92 17:37:04 PDT
Received: from gatech.edu by heavens-gate.lucid.com id AA10668g; Sun, 7 Jun 92 17:36:58 PDT
Received: from burdell.cc.gatech.edu by gatech.edu (4.1/Gatech-9.1)
	id AA17253 for help-lucid-emacs@lucid.com; Sun, 7 Jun 92 20:44:59 EDT
Received: from haring.cc.gatech.edu by burdell.cc.gatech.edu (4.1/SMI-4.1)
	id AA04257; Sun, 7 Jun 92 20:44:47 EDT
Received: by haring.cc.gatech.edu (4.1/SMI-4.1)
	id AA01451; Sun, 7 Jun 92 20:42:09 EDT
Date: Sun, 7 Jun 92 20:42:09 EDT
From: iansmith@cc.gatech.edu (Ian Smith)
Message-Id: <9206080042.AA01451@haring.cc.gatech.edu>
To: help-lucid-emacs@lucid.com
Sender: Ian Smith <iansmith@cc.gatech.edu>
Cc: 
Subject: subscribe
Reply-To: Ian Smith <iansmith@cc.gatech.edu>
X-Vi: NOT!
X-Mailer: VM 5.31 [Epoch 4.0]

please subscribe me.
iansmith@cc.gatech.edu


-----
I guess nobody will ever have as much slack as that big fat Quaker Oatmeal guy.
ian smith, multimedia computing group, georgia tech, iansmith@cc.gatech.edu 

From help-lucid-emacs-request@heavens-gate.lucid.com  Mon Jun  8 00:20:52 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA19484; Mon, 8 Jun 92 00:20:52 PDT
Received: by heavens-gate.lucid.com id AA11247g; Sun, 7 Jun 92 23:58:20 PDT
Received: from lynx (lynx.csis.dit.csiro.au) by heavens-gate.lucid.com id AA11243g; Sun, 7 Jun 92 23:58:04 PDT
Received: from argo.csis.dit.csiro.au by lynx (4.1/1.0)
	id AA27815; Mon, 8 Jun 92 17:05:51 EST
Received: by argo.csis.dit.csiro.au (4.1/1.0)
	id AA03004; Mon, 8 Jun 92 17:05:49 EST
From: stuarth@csis.dit.csiro.au
Message-Id: <9206080705.AA03004@argo.csis.dit.csiro.au>
Subject: Changing menu bar fonts and colours...
To: help-lucid-emacs@lucid.com
Date: Mon, 8 Jun 92 17:05:48 EST
X-Mailer: ELM [version 2.3 PL11]

I realize it's possible to change the look and feel of the emacs menu bar
by building it with Motif or OW but I haven't had much luck building the 
sources with our Motif setup.

Is it possible to change the menu bar fonts and colours through X resources
or emacs variables?  If so I can just use the binary version and forget about
building the source.

Stu

/-----------------------------------------------------------------------------\
| Stuart Hungerford | Internet : stuarth@csis.dit.csiro.au                    |
| CSIRO DIT         | Voice    : +61-6-2750941                                |
| Australia         | Fax      : +61-6-2571052                                |
\-----------------------------------------------------------------------------/
  "Being a 7 foot robot means never having to say you're sorry" --
   REX-1 to Teenage Mutant Ninja Turtles

From help-lucid-emacs-request@heavens-gate.lucid.com  Mon Jun  8 00:29:43 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA19489; Mon, 8 Jun 92 00:29:43 PDT
Received: by heavens-gate.lucid.com id AA11281g; Mon, 8 Jun 92 00:07:00 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA11277g; Mon, 8 Jun 92 00:06:54 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA19237; Mon, 8 Jun 92 00:15:15 PDT
Date: Mon, 8 Jun 92 00:15:15 PDT
Message-Id: <9206080715.AA19237@thalidomide.lucid>
X-Windows: A moment of convenience, a lifetime of regret.
From: Jamie Zawinski <jwz@heavens-gate.lucid.com>
Sender: jwz@thalidomide
To: stuarth%csis.dit.csiro.au@lucid.com
Cc: help-lucid-emacs@lucid.com
Subject: Re: Changing menu bar fonts and colours...
In-Reply-To: stuarth%csis.dit.csiro.au@lucid.com's message of Mon 8-Jun-92 17:05:48 EST <9206080705.AA03004@argo.csis.dit.csiro.au>
References: <9206080705.AA03004@argo.csis.dit.csiro.au>

In message <9206080705.AA03004@argo.csis.dit.csiro.au> stuarth%csis.dit.csiro.au@lucid.com wrote:
>
> Is it possible to change the menu bar fonts and colours through X resources
> or emacs variables?  If so I can just use the binary version and forget
> about building the source.

If you build with Motif, it's a real Motif menubar, with all the Motif
resources.  If you build with the Motif-lookalike menubar (which the binaries
on labrea were) then the resources are different, but mostly congruent; you'll
have to look at the file .../src/lwlib/xlwmenu.c to see the resources it
obeys.  We plan to make them more like the Motif resources.  (They can't be
exactly the same, because it's not possible to do things like make different
items the menubar have different fonts or colors.  The USE_LUCID menubar is
really a single widget which manages a couple of windows.  That's why it's
so fast.)

	-- Jamie

From help-lucid-emacs-request@heavens-gate.lucid.com  Mon Jun  8 05:42:35 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA19635; Mon, 8 Jun 92 05:42:35 PDT
Received: by heavens-gate.lucid.com id AA11642g; Mon, 8 Jun 92 05:22:45 PDT
Received: from lamont.ldgo.columbia.edu (ldgo.columbia.edu) by heavens-gate.lucid.com id AA11638g; Mon, 8 Jun 92 05:22:38 PDT
Received: from  (ko.ldgo.columbia.edu) by lamont.ldgo.columbia.edu (4.1/SMI-3.2)
	id AA12045; Mon, 8 Jun 92 08:30:41 EDT
Message-Id: <9206081230.AA12045@lamont.ldgo.columbia.edu>
Date: Mon, 8 Jun 92 08:30:32 EDT
From: fritzz@lamont.ldgo.columbia.edu (Fritz Zaucker)
To: help-lucid-emacs@lucid.com
Cc: bug-lucid-emacs@lucid.com
Reply-To: fritzz@lamont.ldgo.columbia.edu
Us-Snail: Lamont-Doherty Geological Observatory, Palisades, NY 10964




First: thanks for making this available. 

Some comments: 

1) Will you later on merge with GNU EMACS 19? I'd think it would be too
bad, if there were several new flavors of Emacs around.

2) Is there any hope that GNUS 3.14 will be adapted to lemacs? 3.13 seems
to have some problems.

3) latex.el from Nelson Beebe doesn't work with lemacs. It complains
about TeX-mode-map being undefined. Neither epoch nor GNU Emacs 18.58
have a problem there.

4) Running the labrea-binaries on a Sun Sparc 2, SunOS 4.1.1 and
displaying to an IBM RISC/6000, lemacs dies with the following error
message:

Error during initialization:
(error unrecognised color paleturquoise)


Problems 2 and 3 are right now sufficiently serious me switching back
to epoch. I'd rather not if somebody can tell me a fix.

Fritz

From help-lucid-emacs-request@heavens-gate.lucid.com  Mon Jun  8 07:23:13 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA19673; Mon, 8 Jun 92 07:23:13 PDT
Received: by heavens-gate.lucid.com id AA11782g; Mon, 8 Jun 92 06:59:24 PDT
Received: from ti.com by heavens-gate.lucid.com id AA11778g; Mon, 8 Jun 92 06:59:18 PDT
Received: from tilde.csc.ti.com ([128.247.160.56]) by ti.com with SMTP 
	(5.59/LAI-3.2) id AA20666; Mon, 8 Jun 92 09:07:34 CDT
Received: from sys_admin4.dadd.ti.com (dadsg1.dadd.ti.com) by tilde.csc.ti.com id AA01933; Mon, 8 Jun 1992 09:06:49 -0500
Received: from atg2.dadd.ti.com by sys_admin4.dadd.ti.com (4.1/SMI-4.1)
	id AA07960; Mon, 8 Jun 92 09:04:59 CDT
Received: by atg2.dadd.ti.com (4.1/SMI-4.1)
	id AA11504; Mon, 8 Jun 92 09:04:55 CDT
Date: Mon, 8 Jun 92 09:04:55 CDT
From: kenb@dadd.ti.com (Ken Butler)
Message-Id: <9206081404.AA11504@atg2.dadd.ti.com>
To: help-lucid-emacs@lucid.com
Subject: Trouble compiling ScreenWidget.c

I'm trying to compile lucid emacs on a Sun 4/370 running 4.1.1 with gcc
version 1.38.  Many things in the xmakefile compile fine, but when I get to
ScreenWidget.c,  I get the following error:

ScreenWidget.c: In function get_wm_shell:
ScreenWidget.c:201: dereferencing pointer to incomplete type
*** Error code 1
make: Fatal error: Command failed for target `ScreenWidget.o'

Has anyone encountered this before?  Is there a fix?

Thanks.

Ken

*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
Kenneth M. Butler                           (214) 997-6370 (office)
Texas Instruments                           (214) 997-2049 (FAX)
P.O. Box 655303 MS 3683                     kenb@dadd.ti.com
Dallas, TX 75265
*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*

From help-lucid-emacs-request@heavens-gate.lucid.com  Mon Jun  8 11:54:44 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA20043; Mon, 8 Jun 92 11:54:44 PDT
Received: by heavens-gate.lucid.com id AA12609g; Mon, 8 Jun 92 11:27:51 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA12598g; Mon, 8 Jun 92 11:26:56 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA20008; Mon, 8 Jun 92 11:35:13 PDT
Date: Mon, 8 Jun 92 11:35:13 PDT
Message-Id: <9206081835.AA20008@thalidomide.lucid>
X-Windows: No hardware is safe.
From: Jamie Zawinski <jwz@heavens-gate.lucid.com>
Sender: jwz@thalidomide
To: kenb@dadd.ti.com (Ken Butler)
Cc: help-lucid-emacs@lucid.com
Cc: bug-lucid-emacs@lucid.com
Subject: Re: Trouble compiling ScreenWidget.c
In-Reply-To: Ken Butler's message of Mon 8-Jun-92 09:04:55 CDT <9206081404.AA11504@atg2.dadd.ti.com>
References: <9206081404.AA11504@atg2.dadd.ti.com>

Please send messages like this to bug-lucid-emacs, not help-lucid-emacs.
People who aren't on the bug list aren't interested in hearing about these
problems.

In message <9206081404.AA11504@atg2.dadd.ti.com> Ken Butler wrote:
>
> ScreenWidget.c: In function get_wm_shell:
> ScreenWidget.c:201: dereferencing pointer to incomplete type
> *** Error code 1
> make: Fatal error: Command failed for target `ScreenWidget.o'

I haven't seen this before.  Line 201 is "wmshell && !XtIsWMShell (wmshell);".
XtIsWMShell is defined in X11/Intrinsic.h in both R4 and R5.

	-- Jamie

From help-lucid-emacs-request@heavens-gate.lucid.com  Mon Jun  8 12:16:22 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA20084; Mon, 8 Jun 92 12:16:22 PDT
Received: by heavens-gate.lucid.com id AA12741g; Mon, 8 Jun 92 11:53:57 PDT
Received: from dido.caltech.edu by heavens-gate.lucid.com id AA12734g; Mon, 8 Jun 92 11:53:47 PDT
Received: by dido.caltech.edu (4.1/1.2)
	id AA08725; Mon, 8 Jun 92 12:01:00 PDT
Date: Mon, 8 Jun 92 12:01:00 PDT
From: gwp@dido.caltech.edu (G. W. Pigman III)
Message-Id: <9206081901.AA08725@dido.caltech.edu>
To: help-lucid-emacs@lucid.com
Subject: screen-default-ailist

Isn't

	(setq screen-default-alist '((width . 80) (height . 36)))

supposed to set new screens to 80 columns and 36 lines?  I'm trying to
use -sony-fixed*24* and new screens don't fit my display (they appear
to be about 39 lines).


From help-lucid-emacs-request@heavens-gate.lucid.com  Mon Jun  8 12:16:25 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA20085; Mon, 8 Jun 92 12:16:25 PDT
Received: by heavens-gate.lucid.com id AA12763g; Mon, 8 Jun 92 11:57:27 PDT
Received: from grumpy (GRUMPY.SARNOFF.COM) by heavens-gate.lucid.com id AA12757g; Mon, 8 Jun 92 11:57:19 PDT
Received: from vague.sarnoff.com by grumpy (4.1/SMI-4.1)
	id AA02723; Mon, 8 Jun 92 15:05:30 EDT
Date: Mon, 8 Jun 92 15:05:30 EDT
Message-Id: <9206081905.AA02723@grumpy>
Received: by vague.sarnoff.com (4.1/SMI-4.1)
	id AA13619; Mon, 8 Jun 92 15:05:17 EDT
From: muller@vision.sarnoff.com
Sender: muller@sarnoff.com
To: help-lucid-emacs@lucid.com
Subject: vm

I can't send mail from within vm, whether compile or uncompiled, under emacs
19.  I get the error 

	Wrong number of arguments: #<byte-code [(to subject in-reply-to cc
replybuffer acti

Do I need a new version of vm or something?


From help-lucid-emacs-request@heavens-gate.lucid.com  Mon Jun  8 13:05:43 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA20141; Mon, 8 Jun 92 13:05:43 PDT
Received: by heavens-gate.lucid.com id AA12932g; Mon, 8 Jun 92 12:44:51 PDT
Received: from BU.EDU by heavens-gate.lucid.com id AA12928g; Mon, 8 Jun 92 12:44:45 PDT
Received: from BUCRF16.BU.EDU by BU.EDU (1.99) Mon, 8 Jun 92 15:52:46 -0400
Received: by BUCRF16.bu.edu (5.57/Ultrix3.0-C)
	id AA09906; Mon, 8 Jun 92 15:51:56 -0400
Date: Mon, 8 Jun 92 15:51:56 -0400
From: cohen@BUCRF16.BU.EDU (Andy Cohen)
Message-Id: <9206081951.AA09906@BUCRF16.bu.edu>
To: help-lucid-emacs@lucid.com
Subject: bad display

I have recently gotten the precompiled binaries for the sun4 for lemacs, but
when I try to start it up from an xterminal, it draws part of an emacs
modeline in the xterminal window, and then gives an error message that I
should check my DISPLAY environment variable. This variable seems to be
set correctly to hostname:0.0 

Am I missing something?



From help-lucid-emacs-request@heavens-gate.lucid.com  Mon Jun  8 14:15:04 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA20242; Mon, 8 Jun 92 14:15:04 PDT
Received: by heavens-gate.lucid.com id AA13168g; Mon, 8 Jun 92 13:47:19 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA13162g; Mon, 8 Jun 92 13:47:09 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA20351; Mon, 8 Jun 92 13:55:27 PDT
Date: Mon, 8 Jun 92 13:55:27 PDT
Message-Id: <9206082055.AA20351@thalidomide.lucid>
X-Windows: Japan's secret weapon.
From: Jamie Zawinski <jwz@heavens-gate.lucid.com>
Sender: jwz@thalidomide
To: cohen@BUCRF16.BU.EDU (Andy Cohen)
Cc: help-lucid-emacs@lucid.com
Subject: Re: bad display
In-Reply-To: Andy Cohen's message of Mon 8-Jun-92 15:51:56 -0400 <9206081951.AA09906@BUCRF16.bu.edu>
References: <9206081951.AA09906@BUCRF16.bu.edu>

Subject: "Check that your $DISPLAY environment variable is properly set"

If you get this error when starting up emacs, it is almost always because
emacs is finding the wrong lisp directory, or none at all.

Replace the function `normal-top-level' in startup.el with the following
definition, and byte-compile the file.  startup.el is loaded before emacs
is dumped, so you can't install this fix without re-dumping.

The best way to make emacs find the correct lisp and etc direcories is 
to keep those direcories in the same directory as the emacs executable.  
That is, if the lemacs executable in in /usr/foobar/bin/lemacs, then 
/usr/foobar/bin/lisp/ and /usr/foobar/bin/etc/ should exist as well.
They may be symbolic links to directories, too.

If these don't exist, then emacs will try to use /usr/local/lib/emacs/lisp/
or /usr/local/emacs/lisp/ instead.  If these directories exist, but are
for version 18 instead of Lucid GNU Emacs, then emacs will be unable to
run.

Another solution is to put the right directories in paths.h before 
building emacs, but that's not as good a solution because it means that
if you want to move the emacs executable to another directory later, 
you have to recompile.  

	-- Jamie

(defun normal-top-level ()
  (if command-line-processed
      (message "Back to top level.")
    (setq command-line-processed t)
    ;; In presence of symlinks, switch to cleaner form of default directory.
    (if (and (not (eq system-type 'vax-vms))
	     (getenv "PWD"))
	(setq default-directory (file-name-as-directory (getenv "PWD"))
	      cdlist (initialize-cdlist)))
    (let ((tail directory-abbrev-alist))
      (while tail
	(if (string-match (car (car tail)) default-directory)
	    (setq default-directory
		  (concat (cdr (car tail))
			  (substring default-directory (match-end 0)))))
	(setq tail (cdr tail))))
    (condition-case error
	(command-line)
      ;;
      ;; If we get an error here, it's almost always because emacs couldn't
      ;; find lisp/term/x-win.el, or it's loading the v18 lisp/term/x-win.el.
      ;; If emacs supported ttys, then we could concievably continue here,
      ;; and simply run in tty mode, but right now, that just causes the
      ;; bogus "only runs under X" error to be printed.  Even when ttys work,
      ;; there's not much point in trying to run if we know we're going to
      ;; be so completely crippled.  It probably just won't work.
      ;;
      ;; If we call message here, it clears the screen in an unattractive
      ;; way, so just blast the bits to stdout.
      ;;
      (error
       (send-string-to-terminal (format "\nInitialization error: %S\n" error))
       (send-string-to-terminal (format "\nload-path is %S" load-path))
       (send-string-to-terminal (format "\nexec-directory is %S\n"
					exec-directory))
       (kill-emacs 1)))))


From help-lucid-emacs-request@heavens-gate.lucid.com  Mon Jun  8 14:58:47 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA20339; Mon, 8 Jun 92 14:58:47 PDT
Received: by heavens-gate.lucid.com id AA13436g; Mon, 8 Jun 92 14:38:26 PDT
Received: from BU.EDU by heavens-gate.lucid.com id AA13432g; Mon, 8 Jun 92 14:38:19 PDT
Received: from BUCRF16.BU.EDU by BU.EDU (1.99) Mon, 8 Jun 92 17:46:03 -0400
Received: by BUCRF16.bu.edu (5.57/Ultrix3.0-C)
	id AA10594; Mon, 8 Jun 92 17:45:11 -0400
Date: Mon, 8 Jun 92 17:45:11 -0400
From: cohen@BUCRF16.BU.EDU (Andy Cohen)
Message-Id: <9206082145.AA10594@BUCRF16.bu.edu>
To: help-lucid-emacs@lucid.com
Subject: problems on decstation

I have finally succeeded in compiling lemacs-19.1 on a decstation 3100
running Ultrix4.2.  The only big problem was with using gmalloc. Once
I switched over to the system malloc, everything was fine. 

I ran into a few small problems in compiling, which are easily taken care
of. If anyone wants to know, just send me mail.



From help-lucid-emacs-request@heavens-gate.lucid.com  Mon Jun  8 17:18:12 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA20570; Mon, 8 Jun 92 17:18:12 PDT
Received: by heavens-gate.lucid.com id AA14025g; Mon, 8 Jun 92 16:55:53 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA14013g; Mon, 8 Jun 92 16:54:56 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA20685; Mon, 8 Jun 92 17:03:15 PDT
Date: Mon, 8 Jun 92 17:03:15 PDT
Message-Id: <9206090003.AA20685@thalidomide.lucid>
From: Jamie Zawinski <jwz@heavens-gate.lucid.com>
Sender: jwz@thalidomide
To: bug-lucid-emacs@lucid.com, help-lucid-emacs@lucid.com
Subject: "Composed" characters

If you understand how Multi_key is supposed to work, or if you have a working
Multi_key or "Compose" key on your keyboard, please send me mail.  I don't
really understand what the right way to make Emacs recognize multi-key
characters is.

In particular, I'm confused about the suggestion in the xmodmap man page to
make Multi_key and Meta_L (with a modifier bit) be the same key.  I can't
see how, in such a setup, emacs could be made to understand that key as both
a "meta" key and as a "compose" key.  I'm interested in how other applications
deal with this, and how exactly different X servers and libraries deal with
the XComposeStatus structure.

	-- Jamie

From help-lucid-emacs-request@heavens-gate.lucid.com  Mon Jun  8 18:01:38 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA20640; Mon, 8 Jun 92 18:01:38 PDT
Received: by heavens-gate.lucid.com id AA14203g; Mon, 8 Jun 92 17:40:11 PDT
Received: from nestroy.wu-wien.ac.at by heavens-gate.lucid.com id AA14199g; Mon, 8 Jun 92 17:40:01 PDT
Received: from dec4.wu-wien.ac.at by nestroy.wu-wien.ac.at with SMTP
	(16.6/15.6) id AA00289; Tue, 9 Jun 92 02:48:12 +0200
Received: by dec4.wu-wien.ac.at (5.57/Ultrix3.0-C)
	id AA15540; Tue, 9 Jun 92 02:48:56 +0200
From: neumann@dec4.wu-wien.ac.at (Gustaf Neumann)
Message-Id: <9206090048.AA15540@dec4.wu-wien.ac.at>
To: help-lucid-emacs@lucid.com
Subject: emacs: Cannot open termcap database file
Date: Tue, 9 Jun 92 02:38:48 MET

environment:
   DECstation 5000/200 Ultrix 4.2, gcc2.0
   #include "s/s-bsd4-2.h"
   #include "m/m-pmax.h"
   using system malloc

temacs is built with 

ld    -L. -L./lwlib    -o temacs pre-crt0.o /lib/crt0.o  dispnew.o screen.o scroll.o
xdisp.o window.o   events.o event-alloc.o event-stream.o   term.o cm.o xterm.o
xfns.o xselect.o xutils.o event-Xt.o menubar.o      emacs.o keyboard.o macros.o
keymap.o sysdep.o   buffer.o filelock.o insdel.o marker.o   minibuf.o fileio.o
dired.o filemode.o   cmds.o casetab.o casefiddle.o indent.o search.o regex.o undo.o 
alloc.o data.o doc.o editfns.o callint.o        eval.o floatfns.o fns.o print.o
lread.o         abbrev.o syntax.o unexmips.o  mocklisp.o bytecode.o    process.o
callproc.o environ.o   doprnt.o extents.o faces.o elhash.o hash.o     strdup.o
realpath.o terminfo.o lastfile.o alloca.o ScreenWidget.o ColumnWidget.o EmacsShell.o
-llw  -lXaw -lXext -lXt -lXmu -lX11          -lcursesX -ltermcap       
/gnu/gcc-2.0/libgcc.a  -lm  -lc 


./temacs -batch -l loadup.el dump
builds a nice xemacs file, but when i execute ./xemacs it aborts with 
the message 

	emacs: Cannot open termcap database file.

in its last actions xemacs calls 
	status = tgetent (tbuf, terminal_type);

with terminal_type == "invisible" and dies with status == -1.
if i call tgetent with the same arguments form a small sample program
in the same environment, it works perfectly well.

has anybody seen this before? Hints?

-gustaf
--
Gustaf Neumann          neumann@dec4.wu-wien.ac.at, neumann@awiwuw11.bitnet
Vienna University of Economics and Business Administration 
Augasse 2-6,  A-1090 Vienna, Austria		
Tel: +43 (222) 31-336 x4533  	Fax 347-555

From help-lucid-emacs-request@heavens-gate.lucid.com  Tue Jun  9 01:36:03 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA21028; Tue, 9 Jun 92 01:36:03 PDT
Received: by heavens-gate.lucid.com id AA15023g; Tue, 9 Jun 92 01:12:11 PDT
Received: from sun4nl.nluug.nl by heavens-gate.lucid.com id AA15011g; Tue, 9 Jun 92 01:11:55 PDT
Received: from mh.nl by sun4nl.nluug.nl via EUnet
	id AA28224 (5.65b/CWI-3.3); Tue, 9 Jun 1992 10:17:45 +0200
Received: by mhres.mh.nl (/\=-/\ Smail3.1.18.1 #18.10)
	id <m0lv1Av-0005DTC@mhres.mh.nl>; Tue, 9 Jun 92 10:03 METDST
Received: by largo.mh.nl (/\==/\ Smail3.1.22.1 #22.2)
	id <m0lv1B0-00039XC@largo.mh.nl>; Tue, 9 Jun 92 10:03 MET DST
To: help-lucid-emacs@lucid.com (Lucid Emacs Mailing List)
Message-Id: <Pine.2.4.55.9206061137.B29899@yukawa>
From: Andrew Cohen <cohen@BUCRF16.BU.EDU>
X-From: Multihouse, Gouda, The Netherlands
Subject: Re: build problems [VAX/Ultrix]
Date: Sat, 6 Jun 1992 12:00:54 -0700 (PDT)


Dear Johan:

I have been playing with compiling lemacs on my destation 3100 running
Ultrix 4.2. I have succeeded in compiling it--the two remaining problems
you have are easily solved:

1) As for realpath.c, I can send you a copy. You can
then just add it to the list of object files in xmakefile, and everything
will work.


2) The remainder call is not available on ultrix, but I believe the call
fmod is the same (this may be wrong, but at least it will get the thing
compiled). So just replace the call to remainder with this.


Unfortunately after compiling successfully I have not been able to run the
program; for some reason it trys to use the xterm window as a tty, and
doesn't successfully connect to the display. Actually this may be because
of the DEC Xserver. I have also tried to run the sun version of lemacs
displaying on my decstation and get the same error. 


Andy Cohen



------- End of forwarded message -------

From help-lucid-emacs-request@heavens-gate.lucid.com  Tue Jun  9 01:36:06 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA21029; Tue, 9 Jun 92 01:36:06 PDT
Received: by heavens-gate.lucid.com id AA15019g; Tue, 9 Jun 92 01:12:09 PDT
Received: from sun4nl.nluug.nl by heavens-gate.lucid.com id AA15012g; Tue, 9 Jun 92 01:11:52 PDT
Received: from mh.nl by sun4nl.nluug.nl via EUnet
	id AA28230 (5.65b/CWI-3.3); Tue, 9 Jun 1992 10:17:46 +0200
Received: by mhres.mh.nl (/\=-/\ Smail3.1.18.1 #18.10)
	id <m0lv1BW-0005DTC@mhres.mh.nl>; Tue, 9 Jun 92 10:04 METDST
Received: by largo.mh.nl (/\==/\ Smail3.1.22.1 #22.2)
	id <m0lv1Bb-00039XC@largo.mh.nl>; Tue, 9 Jun 92 10:04 MET DST
Message-Id: <m0lv1Bb-00039XC@largo.mh.nl>
To: help-lucid-emacs@lucid.com (Lucid Emacs Mailing List)
From: Jamie Zawinski <jwz@heavens-gate.lucid.com>
X-From: Multihouse, Gouda, The Netherlands
Subject: Re: Changing menu bar fonts and colours...
Date: Mon, 8 Jun 92 00:15:15 PDT

In message <9206080705.AA03004@argo.csis.dit.csiro.au> stuarth%csis.dit.csiro.au@lucid.com wrote:
>
> Is it possible to change the menu bar fonts and colours through X resources
> or emacs variables?  If so I can just use the binary version and forget
> about building the source.

If you build with Motif, it's a real Motif menubar, with all the Motif
resources.  If you build with the Motif-lookalike menubar (which the binaries
on labrea were) then the resources are different, but mostly congruent; you'll
have to look at the file .../src/lwlib/xlwmenu.c to see the resources it
obeys.  We plan to make them more like the Motif resources.  (They can't be
exactly the same, because it's not possible to do things like make different
items the menubar have different fonts or colors.  The USE_LUCID menubar is
really a single widget which manages a couple of windows.  That's why it's
so fast.)

	-- Jamie

From help-lucid-emacs-request@heavens-gate.lucid.com  Tue Jun  9 01:36:55 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA21039; Tue, 9 Jun 92 01:36:55 PDT
Received: by heavens-gate.lucid.com id AA15027g; Tue, 9 Jun 92 01:12:16 PDT
Received: from sun4nl.nluug.nl by heavens-gate.lucid.com id AA15014g; Tue, 9 Jun 92 01:11:53 PDT
Received: from mh.nl by sun4nl.nluug.nl via EUnet
	id AA28272 (5.65b/CWI-3.3); Tue, 9 Jun 1992 10:17:51 +0200
Received: by mhres.mh.nl (/\=-/\ Smail3.1.18.1 #18.10)
	id <m0lv1Cb-0005DTC@mhres.mh.nl>; Tue, 9 Jun 92 10:05 METDST
Received: by largo.mh.nl (/\==/\ Smail3.1.22.1 #22.2)
	id <m0lv1Cg-00039XC@largo.mh.nl>; Tue, 9 Jun 92 10:05 MET DST
Message-Id: <m0lv1Cg-00039XC@largo.mh.nl>
To: help-lucid-emacs@lucid.com (Lucid Emacs Mailing List)
From: neumann@dec4.wu-wien.ac.at (Gustaf Neumann)
X-From: Multihouse, Gouda, The Netherlands
Subject: emacs: Cannot open termcap database file
Date: Tue, 9 Jun 92 02:38:48 MET

environment:
   DECstation 5000/200 Ultrix 4.2, gcc2.0
   #include "s/s-bsd4-2.h"
   #include "m/m-pmax.h"
   using system malloc

temacs is built with 

ld    -L. -L./lwlib    -o temacs pre-crt0.o /lib/crt0.o  dispnew.o screen.o scroll.o
xdisp.o window.o   events.o event-alloc.o event-stream.o   term.o cm.o xterm.o
xfns.o xselect.o xutils.o event-Xt.o menubar.o      emacs.o keyboard.o macros.o
keymap.o sysdep.o   buffer.o filelock.o insdel.o marker.o   minibuf.o fileio.o
dired.o filemode.o   cmds.o casetab.o casefiddle.o indent.o search.o regex.o undo.o 
alloc.o data.o doc.o editfns.o callint.o        eval.o floatfns.o fns.o print.o
lread.o         abbrev.o syntax.o unexmips.o  mocklisp.o bytecode.o    process.o
callproc.o environ.o   doprnt.o extents.o faces.o elhash.o hash.o     strdup.o
realpath.o terminfo.o lastfile.o alloca.o ScreenWidget.o ColumnWidget.o EmacsShell.o
- -llw  -lXaw -lXext -lXt -lXmu -lX11          -lcursesX -ltermcap       
/gnu/gcc-2.0/libgcc.a  -lm  -lc 


./temacs -batch -l loadup.el dump
builds a nice xemacs file, but when i execute ./xemacs it aborts with 
the message 

	emacs: Cannot open termcap database file.

in its last actions xemacs calls 
	status = tgetent (tbuf, terminal_type);

with terminal_type == "invisible" and dies with status == -1.
if i call tgetent with the same arguments form a small sample program
in the same environment, it works perfectly well.

has anybody seen this before? Hints?

- -gustaf
- --
Gustaf Neumann          neumann@dec4.wu-wien.ac.at, neumann@awiwuw11.bitnet
Vienna University of Economics and Business Administration 
Augasse 2-6,  A-1090 Vienna, Austria		
Tel: +43 (222) 31-336 x4533  	Fax 347-555

From help-lucid-emacs-request@heavens-gate.lucid.com  Tue Jun  9 01:37:39 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA21043; Tue, 9 Jun 92 01:37:39 PDT
Received: by heavens-gate.lucid.com id AA15035g; Tue, 9 Jun 92 01:12:34 PDT
Received: from sun4nl.nluug.nl by heavens-gate.lucid.com id AA15015g; Tue, 9 Jun 92 01:11:59 PDT
Received: from mh.nl by sun4nl.nluug.nl via EUnet
	id AA28247 (5.65b/CWI-3.3); Tue, 9 Jun 1992 10:17:48 +0200
Received: by mhres.mh.nl (/\=-/\ Smail3.1.18.1 #18.10)
	id <m0lv1Bx-0005DTC@mhres.mh.nl>; Tue, 9 Jun 92 10:04 METDST
Received: by largo.mh.nl (/\==/\ Smail3.1.22.1 #22.2)
	id <m0lv1C3-00039XC@largo.mh.nl>; Tue, 9 Jun 92 10:04 MET DST
Message-Id: <m0lv1C3-00039XC@largo.mh.nl>
To: help-lucid-emacs@lucid.com (Lucid Emacs Mailing List)
From: cohen@BUCRF16.BU.EDU (Andy Cohen)
X-From: Multihouse, Gouda, The Netherlands
Subject: problems on decstation
Date: Mon, 8 Jun 92 17:45:11 -0400

I have finally succeeded in compiling lemacs-19.1 on a decstation 3100
running Ultrix4.2.  The only big problem was with using gmalloc. Once
I switched over to the system malloc, everything was fine. 

I ran into a few small problems in compiling, which are easily taken care
of. If anyone wants to know, just send me mail.

From help-lucid-emacs-request@heavens-gate.lucid.com  Tue Jun  9 02:35:34 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA21078; Tue, 9 Jun 92 02:35:34 PDT
Received: by heavens-gate.lucid.com id AA15149g; Tue, 9 Jun 92 02:01:56 PDT
Received: from att1.Mankato.MSUS.EDU by heavens-gate.lucid.com id AA15145g; Tue, 9 Jun 92 02:01:49 PDT
Received:  by att1.Mankato.MSUS.EDU (5.59/25-eef)
	id AA02591; Tue, 9 Jun 92 04:08:48 CDT
Date: Tue, 9 Jun 92 04:08:48 CDT
From: Jay A. Carlson <nop@att1.Mankato.MSUS.EDU>
Message-Id: <9206090908.AA02591@att1.Mankato.MSUS.EDU>
To: cohen@BUCRF16.BU.EDU
Cc: help-lucid-emacs@lucid.com
In-Reply-To: Andrew Cohen's message of Sat, 6 Jun 1992 12:00:54 -0700 (PDT) <Pine.2.4.55.9206061137.B29899@yukawa>
Subject: build problems [VAX/Ultrix]

> 1) As for realpath.c, I can send you a copy. You can
> then just add it to the list of object files in xmakefile, and everything
> will work.

I was in a hurry to play with this so after I noticed that
Freal_path_name is referenced one or two places regardless of
HAVE_REALPATH, I stubbed Freal_path_name in an #else clause.  Things
appear to work.  I'd appreciate a copy of this file.

> 2) The remainder call is not available on ultrix, but I believe the call
> fmod is the same (this may be wrong, but at least it will get the thing
> compiled). So just replace the call to remainder with this.

I did this also.

> Unfortunately after compiling successfully I have not been able to run the
> program; for some reason it trys to use the xterm window as a tty, and
> doesn't successfully connect to the display. Actually this may be because
> of the DEC Xserver. I have also tried to run the sun version of lemacs
> displaying on my decstation and get the same error. 

I had this problem initially.  After some hair-pulling I pinpointed it
as the result of having emacs18 files in front of emacs19 in my
load-path when building xemacs.  The autodetection stuff
found /usr/local/lib/emacs/lisp instead of ../lisp.  Invoking temacs
manually as $PWD/temacs or changing EMACSLOADPATH both worked for me.

My lemacs appears to be fully functional except for asynchronous
processes, which hang emacs hard.  I'm going to rebuild from a clean
distribution tomorrow and see if this persists.

  // Jay Carlson
\X/  nop@att1.mankato.msus.edu


From help-lucid-emacs-request@heavens-gate.lucid.com  Tue Jun  9 02:49:34 1992
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA21082; Tue, 9 Jun 92 02:49:34 PDT
Received: by heavens-gate.lucid.com id AA15187g; Tue, 9 Jun 92 02:20:51 PDT
Received: from telelogic.se by heavens-gate.lucid.com id AA15183g; Tue, 9 Jun 92 02:20:39 PDT
Received: from eclipse.logm.se (eclipse.telelogic.se) by telelogic.se with SMTP id AA14406
  (5.65c/IDA-1.4.4 for <help-lucid-emacs@lucid.com>); Tue, 9 Jun 1992 11:27:27 +0200
Return-Path: <Piotr.Nestorow@telelogic.se>
Date: Tue, 9 Jun 1992 11:27:27 +0200
From: Piotr Nestorow - TeleLOGIC Malmoe AB <Piotr.Nestorow@telelogic.se>
Message-Id: <199206090927.AA14406@telelogic.se>
To: help-lucid-emacs@lucid.com
Subject: lemacs-19.1,X11r5,Motif-1.1.4 dies with an XtError


Hi!
I compiled lemacs-19.1 with gcc-2.1 and linked with X11R5 & Motif-1.1.4 which
are compiled with gcc-2.1 as well. 
Lemacs dies with an Xt error while creating a menubar:

#0  XtError (message=0xf7ffc740 "Cannot perform malloc") at Error.c:416
#1  0x14dda0 in _XtDefaultErrorMsg (name=0x140170 "allocError", 
    type=0x140210 "malloc", class=0x154e00 "XtToolkitError", 
    defaultp=0x14017c "Cannot perform %s", params=0xf7ffd04c, 
    num_params=0xf7ffcff4) at Error.c:188
#2  0x14dfbc in XtErrorMsg (name=0x140170 "allocError", 
    type=0x140210 "malloc", class=0x154e00 "XtToolkitError", 
    defaultp=0x14017c "Cannot perform %s", params=0xf7ffd04c, 
    num_params=0xf7ffcff4) at Error.c:236
#3  0x1401e8 in _XtAllocError (type=0x140210 "malloc") at Alloc.c:78
#4  0x140250 in XtMalloc (size=0) at Alloc.c:96
#5  0xc7910 in XtCompositeChildren (widget=0x308c00, number=0xf7ffd198)
    at lwlib-utils.c:120
#6  0xc5c58 in destroy_all_children (widget=0x308c00) at lwlib-Xm.c:97
#7  0xc69b8 in xm_update_menu (instance=0x30e340, widget=0x308c00, 
    val=0x30e800) at lwlib-Xm.c:363
#8  0xc6e00 in xm_update_one_widget (instance=0x30e340, widget=0x308c00, 
    val=0x30e800) at lwlib-Xm.c:460
#9  0xc5378 in update_one_widget_instance (instance=0x30e340) at lwlib.c:403
#9  0xc5378 in update_one_widget_instance (instance=0x30e340) at lwlib.c:403
#10 0xc54c0 in initialize_widget_instance (instance=0x30e340) at lwlib.c:451
#11 0xc56e0 in lw_create_widget (type=0x46364 "menubar", 
    name=0x46364 "menubar", id=3201024, val=0x30ec40, parent=0x2f1e00, 
    pop_up_p=0 '\000', pre_activate_cb=0x46f3c <Fscreen_menubar+1532>, 
    selection_cb=0x4709c <Fscreen_menubar+1884>, post_activate_cb=0)
    at lwlib.c:547
#12 0x47524 in Fset_screen_menubar (menubar=338390852, screen=942725120)
    at menubar.c:492
#13 0x34a1c in Fx_create_screen (parms=338369380, lisp_window_id=69801988)
    at xfns.c:875
#14 0x8f528 in Ffuncall (nargs=2, args=0xf7ffd75c) at eval.c:1809
#15 0xa885c in Fbyte_code (bytestr=204456852, vector=271556064, maxdepth=4)
    at bytecode.c:428
#16 0x8fe1c in funcall_lambda (fun=405773760, nargs=1, arg_vector=0xf7ffda24)
    at eval.c:1970
#17 0x8f650 in Ffuncall (nargs=2, args=0xf7ffda20) at eval.c:1837
#18 0xa885c in Fbyte_code (bytestr=204456900, vector=271164864, maxdepth=2)
    at bytecode.c:428
#19 0x8e3bc in Feval (form=338391404) at eval.c:1419
#20 0x8ce28 in Fcondition_case (args=338369180) at eval.c:969
#21 0xa9138 in Fbyte_code (bytestr=204456888, vector=271556000, maxdepth=3)
    at bytecode.c:582
#22 0x8fe1c in funcall_lambda (fun=405773696, nargs=1, arg_vector=0xf7ffe01c)
    at eval.c:1970
#23 0x8f650 in Ffuncall (nargs=2, args=0xf7ffe018) at eval.c:1837
#24 0xa885c in Fbyte_code (bytestr=204153908, vector=271166336, maxdepth=4)
    at bytecode.c:428
#25 0x8fe1c in funcall_lambda (fun=405525632, nargs=0, arg_vector=0xf7ffe398)
    at eval.c:1970
#26 0x8f650 in Ffuncall (nargs=1, args=0xf7ffe394) at eval.c:1837
#27 0x8f310 in Ffuncall (nargs=2, args=0xf7ffe390) at eval.c:1787
#28 0x8ed58 in call1 (fn=69847064, arg=70038268) at eval.c:1615
#29 0x95bc0 in mapcar1 (leni=1, vals=0xf7ffe508, fn=69847064, seq=338390220)
    at fns.c:1240
#30 0x95e74 in Fmapcar (fn=69847064, seq=338390220) at fns.c:1297
#31 0x8f528 in Ffuncall (nargs=3, args=0xf7ffe6d8) at eval.c:1809
#32 0xa885c in Fbyte_code (bytestr=203423148, vector=270532076, maxdepth=4)
    at bytecode.c:428
#33 0x8fe1c in funcall_lambda (fun=404749696, nargs=1, arg_vector=0xf7ffe9a4)
    at eval.c:1970
#34 0x8f650 in Ffuncall (nargs=2, args=0xf7ffe9a0) at eval.c:1837
#35 0xa885c in Fbyte_code (bytestr=203500608, vector=270609500, maxdepth=2)
    at bytecode.c:428
#36 0x8e3bc in Feval (form=337718320) at eval.c:1419
#37 0x8ce28 in Fcondition_case (args=338740892) at eval.c:969
#38 0xa9138 in Fbyte_code (bytestr=203500356, vector=270609312, maxdepth=5)
    at bytecode.c:582
#39 0x8fe1c in funcall_lambda (fun=404826924, nargs=0, arg_vector=0xf7ffefa4)
    at eval.c:1970
#40 0x8f650 in Ffuncall (nargs=1, args=0xf7ffefa0) at eval.c:1837
#41 0xa885c in Fbyte_code (bytestr=203499128, vector=270608208, maxdepth=3)
    at bytecode.c:428
#42 0x8fe1c in funcall_lambda (fun=404825696, nargs=0, arg_vector=0xf7fff198)
    at eval.c:1970
#43 0x8fa20 in apply_lambda (fun=404825696, args=69801988, eval_flag=1)
    at eval.c:1901
#44 0x8e4b4 in Feval (form=337716536) at eval.c:1442
#45 0x8ce28 in Fcondition_case (args=338376716) at eval.c:969
#46 0xa9138 in Fbyte_code (bytestr=203498584, vector=270607536, maxdepth=5)
    at bytecode.c:582
#47 0x8fe1c in funcall_lambda (fun=404825152, nargs=0, arg_vector=0xf7fff6b8)
    at eval.c:1970
#48 0x8fa20 in apply_lambda (fun=404825152, args=69801988, eval_flag=1)
    at eval.c:1901
#49 0x8e4b4 in Feval (form=338325980) at eval.c:1442
#50 0x4d044 in top_level_2 () at keyboard.c:395
#51 0x8cf58 in internal_condition_case (bfun=0x4d030 <top_level_2>, 
    handlers=69802268, hfun=0x4cba0 <cmd_error>) at eval.c:1003
#52 0x4d0f8 in top_level_1 (dummy=69801988) at keyboard.c:404
#53 0x8c918 in internal_catch (tag=69802248, func=0x4d0b4 <top_level_1>, 
    arg=69801988) at eval.c:815
#54 0x4cf88 in command_loop () at keyboard.c:364
#55 0x4c9d4 in recursive_edit_1 () at keyboard.c:222
#56 0x4caf8 in Frecursive_edit () at keyboard.c:251
#57 0x4c074 in main (argc=1, argv=0xf7fffd54, envp=0xf7fffd5c) at emacs.c:880

Everything on an SS2 SunOS4.1.1. 
The offending XtMalloc is done in XtCompositeChildren where the `cw' 
(CompositeWidget) has 0 number of children.

Any ideas?

Piotr Nestorow
TeleLOGIC Malmo AB, SWEDEN
Piotr.Nestorow@telelogic.se

From help-lucid-emacs-request@heavens-gate.lucid.com  Tue Jun  9 02:51:04 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA21086; Tue, 9 Jun 92 02:51:04 PDT
Received: by heavens-gate.lucid.com id AA15201g; Tue, 9 Jun 92 02:22:24 PDT
Received: from moebius.loria.fr by heavens-gate.lucid.com id AA15197g; Tue, 9 Jun 92 02:22:14 PDT
Received: by moebius.loria.fr id AA01382
  (5.65c+/IDA-1.4.3 for help-lucid-emacs@lucid.com); Tue, 9 Jun 92 11:25:44 +0200
Date: Tue, 9 Jun 92 11:25:44 +0200
From: Guido Bosch <Guido.Bosch@loria.fr>
Message-Id: <9206090925.AA01382@moebius.loria.fr>
To: help-lucid-emacs@lucid.com
Subject: window selection hooks
Reply-To: Guido BOSCH <bosch@loria.fr>


Are there selection/deselection hooks to be activated when a window is
selected/deselected?

This would be useful to add/remove editing mode specific menus in the
menu bar. 

Or is there an other way to do this propperly? 

--
Guido BOSCH, INRIA-Lorraine/CRIN
Institut National de Recherche en Informatique et en Automatique (INRIA)
Centre de Recherche en Informatique de Nancy (CRIN)
Campus scientifique, B.P. 239            
54506 Vandoeuvre-les-Nancy CEDEX       	
Tel.: (+33) 83.91.24.24
Fax.: (+33) 83.41.30.79                	
email: bosch@loria.fr             	




From help-lucid-emacs-request@heavens-gate.lucid.com  Tue Jun  9 03:04:43 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA21094; Tue, 9 Jun 92 03:04:43 PDT
Received: by heavens-gate.lucid.com id AA15227g; Tue, 9 Jun 92 02:33:29 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA15223g; Tue, 9 Jun 92 02:33:21 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA22924; Tue, 9 Jun 92 02:41:46 PDT
Date: Tue, 9 Jun 92 02:41:46 PDT
Message-Id: <9206090941.AA22924@thalidomide.lucid>
X-Windows: Don't get frustrated without it.
From: Jamie Zawinski <jwz@heavens-gate.lucid.com>
Sender: jwz@thalidomide
To: Guido BOSCH <bosch%loria.fr@lucid.com>
Cc: help-lucid-emacs@lucid.com
Subject: Re: window selection hooks
In-Reply-To: Guido Bosch's message of Tue 9-Jun-92 11:25:44 +0200 <9206090925.AA01382@moebius.loria.fr>
References: <9206090925.AA01382@moebius.loria.fr>

In message <9206090925.AA01382@moebius.loria.fr> Guido Bosch wrote:
>
> Are there selection/deselection hooks to be activated when a window is
> selected/deselected?
> 
> This would be useful to add/remove editing mode specific menus in the
> menu bar. 

There's no way to do that now.  There are already hooks in place for running
code when a buffer or window becomes selected or deselected, but they are C
hooks only: you can't run lisp code there.  I'm not sure that it's a good 
idea to allow random lisp code to run in such a time-critical place.  There
are also GC considerations.

I was planning on making it possible for the menubar to be buffer-local 
instead of screen-local.  The menubar would be updated from these C hooks
based on the prevailing value of the menubar variable in the current buffer.
This is tricky to do, because it needs to be really fast.  It's not clear
to me that it's possible to make this fast enough using the Motif or OLIT
menubars; those toolkits are just too slow, especially over slow network
connections (too much server traffic.)  Possibly we will end up adding an
OpenLook "look and feel" to the non-widget menubar that you get when you
define USE_LUCID in the lwlib Imakefile, and give up on trying to squeeze
performance out of the toolkits entirely.

	-- Jamie

From help-lucid-emacs-request@heavens-gate.lucid.com  Tue Jun  9 05:34:03 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA21138; Tue, 9 Jun 92 05:34:03 PDT
Received: by heavens-gate.lucid.com id AA15519g; Tue, 9 Jun 92 05:11:51 PDT
Received: from sun4nl.nluug.nl by heavens-gate.lucid.com id AA15511g; Tue, 9 Jun 92 05:11:33 PDT
Received: from mh.nl by sun4nl.nluug.nl via EUnet
	id AA05469 (5.65b/CWI-3.3); Tue, 9 Jun 1992 14:16:55 +0200
Received: by mhres.mh.nl (/\=-/\ Smail3.1.18.1 #18.10)
	id <m0lv4bF-0005DTC@mhres.mh.nl>; Tue, 9 Jun 92 13:42 METDST
Received: by largo.mh.nl (/\==/\ Smail3.1.22.1 #22.2)
	id <m0lv4bH-00039XC@largo.mh.nl>; Tue, 9 Jun 92 13:42 MET DST
Message-Id: <m0lv4bH-00039XC@largo.mh.nl>
Date: Tue, 9 Jun 92 13:42 MET DST
From: jv@mh.nl (Johan Vromans)
X-From: Multihouse, Gouda, The Netherlands
To: help-lucid-emacs@lucid.com (Lucid Emacs Mailing List)
Cc: neumann@dec4.wu-wien.ac.at (Gustaf Neumann)
In-Reply-To: neumann@dec4.wu-wien.ac.at's message of Tue, 9 Jun 92 02:38:48 ME
Subject: Re: emacs: Cannot open termcap database file
X-Mailer: GNU Emacs 18.58.5 with VM 4.42


> environment:
>    DECstation 5000/200 Ultrix 4.2, gcc2.0
>    #include "s/s-bsd4-2.h"
>    #include "m/m-pmax.h"
>    using system malloc
> 
> temacs is built with 
> 
> ld    -L. -L./lwlib    -o temacs pre-crt0.o /lib/crt0.o  dispnew.o ...
...
> realpath.o terminfo.o lastfile.o alloca.o ScreenWidget.o ColumnWidget.o EmacsShell.o
> - -llw  -lXaw -lXext -lXt -lXmu -lX11          -lcursesX -ltermcap       
> /gnu/gcc-2.0/libgcc.a  -lm  -lc 

I had the same problems. Solution: specify in xmakefile

	termcapobj = termcap.o tparam.o 

and link with "-ltermcap" only.

	Johan

From help-lucid-emacs-request@heavens-gate.lucid.com  Tue Jun  9 05:34:26 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA21142; Tue, 9 Jun 92 05:34:26 PDT
Received: by heavens-gate.lucid.com id AA15516g; Tue, 9 Jun 92 05:11:51 PDT
Received: from sun4nl.nluug.nl by heavens-gate.lucid.com id AA15510g; Tue, 9 Jun 92 05:11:05 PDT
Received: from mh.nl by sun4nl.nluug.nl via EUnet
	id AA05479 (5.65b/CWI-3.3); Tue, 9 Jun 1992 14:16:58 +0200
Received: by mhres.mh.nl (/\=-/\ Smail3.1.18.1 #18.10)
	id <m0lv4pH-0005DTC@mhres.mh.nl>; Tue, 9 Jun 92 13:57 METDST
Received: by largo.mh.nl (/\==/\ Smail3.1.22.1 #22.2)
	id <m0lv4pN-00039XC@largo.mh.nl>; Tue, 9 Jun 92 13:57 MET DST
Message-Id: <m0lv4pN-00039XC@largo.mh.nl>
Date: Tue, 9 Jun 92 13:57 MET DST
From: jv@mh.nl (Johan Vromans)
X-From: Multihouse, Gouda, The Netherlands
To: help-lucid-emacs@lucid.com (Lucid Emacs Mailing List)
Subject: Scrollbars
X-Mailer: GNU Emacs 18.58.5 with VM 4.42

First of all: Lucid Emacs looks beautiful. Unfortunately we use
x-mouse code very much, and that seems to be highly incompatible. Time
to rethink, I guess.

What surprises me is that there are no scrollbars in the windows.
Pulldown menus and scrollbars are typical gadgets for windowing
systems. Is that intentional?

Thanks for the good work.

	Johan

From help-lucid-emacs-request@heavens-gate.lucid.com  Tue Jun  9 08:31:34 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA21222; Tue, 9 Jun 92 08:31:34 PDT
Received: by heavens-gate.lucid.com id AA15834g; Tue, 9 Jun 92 07:56:49 PDT
Received: from banzai.cc.columbia.edu by heavens-gate.lucid.com id AA15830g; Tue, 9 Jun 92 07:56:41 PDT
Received: by banzai.cc.columbia.edu (5.59/FCB)
	id AA23144; Tue, 9 Jun 92 11:04:48 EDT
Date: Tue, 9 Jun 92 11:04:46 EDT
From: Ben Fried <ben@banzai.cc.columbia.edu>
To: help-lucid-emacs@lucid.com
Subject: sample Xdefaults/.emacs files for lucid-emacs?
Message-Id: <CMM.0.90.0.708102286.ben@banzai.cc.columbia.edu>

Anyone have sample resource specifications and/or .emacs files with stuff
in them for lucid emacs?  If so, I'd like to see what you've got.  I
haven't done anything particularly fancy yet.

I've already looked at the sample in the etc/ directory.

Ben

From help-lucid-emacs-request@heavens-gate.lucid.com  Tue Jun  9 08:51:35 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA21238; Tue, 9 Jun 92 08:51:35 PDT
Received: by heavens-gate.lucid.com id AA15917g; Tue, 9 Jun 92 08:16:48 PDT
Received: from eco.twg.com by heavens-gate.lucid.com id AA15913g; Tue, 9 Jun 92 08:16:39 PDT
Received: from LOCAL.eco.twg.com by eco.twg.com (5.65/ECO.m-$Revision: 2.15 $)
	id AA00738; Tue, 9 Jun 92 11:24:30 -0400
Organization: The Wollongong Group, Inc., East Coast Operations
Address:      2010 Corporate Ridge Drive, Suite 550, McLean, VA 22102
Phone:        703-847-4500 (Voice); 703-847-4520 (Fax)
Received: by <LOCAL>.eco.twg.com (4.1/ECO.s-$Revision: 1.6 $)
	id AA12444; Tue, 9 Jun 92 11:26:23 EDT
Date: Tue, 9 Jun 92 11:26:23 EDT
From: skip@eco.twg.com (Skip Koppenhaver)
Message-Id: <9206091526.AA12444@eco.twg.com>
To: Ben Fried <ben@banzai.cc.columbia.edu>
Cc: help-lucid-emacs@lucid.com
Subject: Re: sample Xdefaults/.emacs files for lucid-emacs?
In-Reply-To: <CMM.0.90.0.708102286.ben@banzai.cc.columbia.edu>
References: <CMM.0.90.0.708102286.ben@banzai.cc.columbia.edu>
Reply-To: skip@eco.twg.com


Here's what I use, season to taste...

!
!  Lucid Emacs resources
!
#ifdef COLOR
Emacs*default.attributeForeground:	White
Emacs*default.attributeBackground:	DarkGreen
Emacs*bold.attributeForeground:		White
Emacs*bold.attributeBackground:		Blue
Emacs*italic.attributeForeground:	Yellow
Emacs*italic.attributeBackground:	DarkGreen
Emacs*bold-italic.attributeForeground:	Yellow
Emacs*bold-italic.attributeBackground:	NavyBlue
Emacs*cursorColor:			Red
Emacs*pointerColor:			Red
#endif
Emacs*default.attributeFont:	-misc-fixed-medium-r-*-*-20-*-75-75-c-*-*-*
Emacs.geometry:			81x36

--
Skip Koppenhaver
skip@eco.twg.com

From help-lucid-emacs-request@heavens-gate.lucid.com  Tue Jun  9 15:39:38 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA21932; Tue, 9 Jun 92 15:39:38 PDT
Received: by heavens-gate.lucid.com id AA17451g; Tue, 9 Jun 92 15:17:38 PDT
Received: from phloem.uoregon.edu by heavens-gate.lucid.com id AA17447g; Tue, 9 Jun 92 15:17:31 PDT
Received: from cambium.uoregon.edu by phloem.uoregon.edu
	(4.1/UofO NetSvc-05/01/91) id AA10387; Tue, 9 Jun 92 15:25:41 PDT
Date: Tue, 9 Jun 92 15:25:41 PDT
From: meyer@phloem.uoregon.edu (David M. Meyer 503/346-1747)
Message-Id: <9206092225.AA10387@phloem.uoregon.edu>
Received: by cambium.uoregon.edu (4.1/UofO NetSvc-03/02/92)
	id AA26674; Tue, 9 Jun 92 15:25:27 PDT
To: help-lucid-emacs@lucid.com
Subject: icon name

	Is there a way to make (lucid) emacs use the 
	"emacs@system" name in its icon (rather than its current
	buffer name)?

	Thanks,

	Dave

From help-lucid-emacs-request@heavens-gate.lucid.com  Tue Jun  9 15:59:22 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA21968; Tue, 9 Jun 92 15:59:22 PDT
Received: by heavens-gate.lucid.com id AA17526g; Tue, 9 Jun 92 15:38:03 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA17522g; Tue, 9 Jun 92 15:37:58 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA24579; Tue, 9 Jun 92 15:46:19 PDT
Date: Tue, 9 Jun 92 15:46:19 PDT
Message-Id: <9206092246.AA24579@thalidomide.lucid>
X-Windows: A terminal disease.
From: Jamie Zawinski <jwz@heavens-gate.lucid.com>
Sender: jwz@thalidomide
To: meyer@phloem.uoregon.edu (David M. Meyer 503/346-1747)
Cc: help-lucid-emacs@lucid.com
Subject: Re: icon name
In-Reply-To: David M. Meyer's message of Tue 9-Jun-92 15:25:41 PDT <9206092225.AA10387@phloem.uoregon.edu>
References: <9206092225.AA10387@phloem.uoregon.edu>

In message <9206092225.AA10387@phloem.uoregon.edu> David M. Meyer wrote:
>
> Is there a way to make (lucid) emacs use the "emacs@system" name in its
> icon (rather than its current buffer name)?

(setq screen-icon-title-format (concat invocation-name "@" (system-name)))

	-- Jamie

From help-lucid-emacs-request@heavens-gate.lucid.com  Tue Jun  9 18:07:30 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA22119; Tue, 9 Jun 92 18:07:30 PDT
Received: by heavens-gate.lucid.com id AA17966g; Tue, 9 Jun 92 17:43:33 PDT
Received: from sapir.cog.jhu.edu by heavens-gate.lucid.com id AA17961g; Tue, 9 Jun 92 17:43:25 PDT
Received: from localhost by sapir.cog.jhu.edu (NeXT-1.0 (From Sendmail 5.52)/NeXT-2.0)
	id AA03508; Tue, 9 Jun 92 20:51:10 EDT
Message-Id: <9206100051.AA03508@sapir.cog.jhu.edu>
To: help-lucid-emacs@lucid.com
Subject: porting lemacs to NeXT
Date: Tue, 09 Jun 92 20:51:09 -0400
From: anderson@sapir.cog.jhu.edu


I'd like to try to port lemacs to the NeXT (with PenCom's co-Xist
environment to provide X support). While I've brought emacs up on a
number of platforms, I've never tried a real port....is there anyone
out there with some experience in where I'll have to do some work on
this? I notice there's no s-mach.h file, for starters, as opposed to
the situation in emacs-18.

Any help will be appreciated.

--Steve Anderson

From help-lucid-emacs-request@heavens-gate.lucid.com  Tue Jun  9 18:30:24 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA22124; Tue, 9 Jun 92 18:30:24 PDT
Received: by heavens-gate.lucid.com id AA18072g; Tue, 9 Jun 92 18:09:42 PDT
Received: from wotan.compaq.com (compaq.com) by heavens-gate.lucid.com id AA18068g; Tue, 9 Jun 92 18:09:35 PDT
Received: by wotan.compaq.com (/\==/\ Smail3.1.21.1 #21.34)
	id <m0lvHIN-000DKvC@wotan.compaq.com>; Tue, 9 Jun 92 20:16 CDT
Received: by twisto.eng.hou.compaq.com (Smail3.1.21)
	id <m0lvHHd-0006HgC@twisto.eng.hou.compaq.com>; Tue, 9 Jun 92 20:15 CDT
Received: from localhost.eng.hou.compaq.com by akasha.eng.hou.compaq.com (4.1/1.36(MFA-SUN))
	id AA00389; Tue, 9 Jun 92 20:15:28 CDT
Message-Id: <9206100115.AA00389@akasha.eng.hou.compaq.com>
To: help-lucid-emacs%lucid.com@twisto.eng.hou.compaq.com ( Lucid Emacs Help Mailing List )
Subject: Cannot perform malloc error...
Date: Tue, 09 Jun 92 20:15:28 -0500
From: ( Colin :) <smiley@akasha.eng.hou.compaq.com>



Has anyone seen this?  I figured that I would ask before I go tracing
with gdb.  

Here is my current setup:

Sun Sparc 2, SunOS 4.1.1, GCC-2.2, X11R5, and Motif.

lemacs was compiled with gcc -g ( a minor nit, but you should take the
stuff about needing a -traditional flag out of the docs.  You don't
need it.  As a matter of fact, if you use -traditional, environ.c will
not compile.)

Whenever I try to start up lemacs, I get "Error: cannot perform
malloc."  

Any ideas?


Colin
-------------------------------------------------------------------------
Colin Smiley, Compaq Computer Corporation, Houston, Texas 77269-2000
e-mail: smiley@compaq.com                           Phone: (713) 378-8426
-------------------------------------------------------------------------
Disclaimer:  Any opinons expressed here do not reflect the opinions of
Compaq Computer Corp.  They make computers.  I make noise.


From help-lucid-emacs-request@heavens-gate.lucid.com  Tue Jun  9 21:30:04 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA22227; Tue, 9 Jun 92 21:30:04 PDT
Received: by heavens-gate.lucid.com id AA18474g; Tue, 9 Jun 92 21:07:50 PDT
Received: from NS.UTA.EDU by heavens-gate.lucid.com id AA18470g; Tue, 9 Jun 92 21:07:44 PDT
Received: from arrisun3.uta.edu.uta.edu by ns.uta.edu with SMTP; 
          Tue, 9 Jun 1992 23:19:36 CDT
Received: by arrisun3.uta.edu.uta.edu (4.1/SMI-4.1)
	id AA07324; Tue, 9 Jun 92 23:14:56 CDT
Date: Tue, 9 Jun 92 23:14:56 CDT
From: lindahl@arrisun3.uta.edu (Charlie Lindahl)
Message-Id: <9206100414.AA07324@arrisun3.uta.edu.uta.edu>
To: help-lucid-emacs@lucid.com
Subject: Help building/using LEMACS ...

Hello:

I'm running under SUNOS 4.1.1 on a Sparcstation 370. I've built EMACS
from source before, so I'm not a "babe in the woods" -- but I don't
get past the first step (make at top level, when it gets to the 
"src" directory). Shell transcript appears below. 

BTW, please make it VERY clear about the libresolv.a stuff. I knew
what you were saying, but it wasn't very well explained in the
PROBLEMS file. I can say from firsthand experience that the "setting
DISPLAY variable" problem DOES occur when trying to run the binary
that is distributed with the "tar.Z" file on EXPORT. 

Lastly, could their be something wrong/irregular in including an 
explicit path to "makedepend" in the Makefile? It is given as 

MKDEP = /cadillac1/utilities/makedepend -/ -fDependencies

which I would think would choke most systems.

Appreciate any help you can lend. 

Charlie S. Lindahl
Automation and Robotics Research Institute
University of Texas at Arlington
============================================================================
"C Code.  C code run.  Run, code, run... | Charlie S. Lindahl     |   -----   
 PLEASE!!!"  -- Barbara Toungue          | lindahl@sparki.uta.edu |  | - - |
                                         | "Robots Iz Us"         |  | === |
                                         |                        |  +-----+
----------------------------------------------------------------------------
Disclaimer: The opinions expressed are my own. They're too idiotic for the
            University to claim. 
============================================================================

--- SHELL SCRIPT OUTPUT APPEARS BELOW ---
% make
cd etc; make  all
cd src; make  all
make  -f xmakefile  all
make: Fatal error: Don't know how to make target `all'
Current working directory /usr/local/lucid/lemacs-19.1/src
*** Error code 1
make: Fatal error: Command failed for target `doall'
Current working directory /usr/local/lucid/lemacs-19.1/src
*** Error code 1
make: Fatal error: Command failed for target `src'
 
 


From help-lucid-emacs-request@heavens-gate.lucid.com  Tue Jun  9 22:41:23 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA22268; Tue, 9 Jun 92 22:41:23 PDT
Received: by heavens-gate.lucid.com id AA18612g; Tue, 9 Jun 92 22:13:04 PDT
Received: from NS.UTA.EDU by heavens-gate.lucid.com id AA18608g; Tue, 9 Jun 92 22:12:47 PDT
Received: from arrisun3.uta.edu.uta.edu by ns.uta.edu with SMTP; 
          Tue, 9 Jun 1992 23:24:12 CDT
Received: by arrisun3.uta.edu.uta.edu (4.1/SMI-4.1)
	id AA07413; Tue, 9 Jun 92 23:19:34 CDT
Date: Tue, 9 Jun 92 23:19:34 CDT
From: lindahl@arrisun3.uta.edu (Charlie Lindahl)
Message-Id: <9206100419.AA07413@arrisun3.uta.edu.uta.edu>
To: help-lucid-emacs@lucid.com
Subject: Whoops! Answered my own question (about rebuilding from

source) 

All:

Whoops! Figured out what was wrong ... I just now modified the original 
Makefile (in the tar src) from 

doall:
	$(MAKE) $(MAKEOVERRIDES) -f xmakefile ${MFLAGS} all

*to*
doall:
	$(MAKE) $(MAKEOVERRIDES) -f xmakefile ${MFLAGS} 

(i.e. took the "all" target off the make). And now things are
compiling happily in the background.

Charlie S. Lindahl
Automation and Robotics Research Institute
University of Texas at Arlington
============================================================================
"C Code.  C code run.  Run, code, run... | Charlie S. Lindahl     |   -----   
 PLEASE!!!"  -- Barbara Toungue          | lindahl@sparki.uta.edu |  | - - |
                                         | "Robots Iz Us"         |  | === |
                                         |                        |  +-----+
----------------------------------------------------------------------------
Disclaimer: The opinions expressed are my own. They're too idiotic for the
            University to claim. 
============================================================================

From help-lucid-emacs-request@heavens-gate.lucid.com  Tue Jun  9 22:42:44 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA22272; Tue, 9 Jun 92 22:42:44 PDT
Received: by heavens-gate.lucid.com id AA18643g; Tue, 9 Jun 92 22:18:24 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA18639g; Tue, 9 Jun 92 22:18:15 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA25293; Tue, 9 Jun 92 22:26:39 PDT
Date: Tue, 9 Jun 92 22:26:39 PDT
Message-Id: <9206100526.AA25293@thalidomide.lucid>
X-Windows: Power tools for power fools.
From: Jamie Zawinski <jwz@heavens-gate.lucid.com>
Sender: jwz@thalidomide
To: lindahl@arrisun3.uta.edu (Charlie Lindahl)
Cc: help-lucid-emacs@lucid.com
Subject: Re: Help building/using LEMACS ...
In-Reply-To: Charlie Lindahl's message of Tue 9-Jun-92 23:14:56 CDT <9206100414.AA07324@arrisun3.uta.edu.uta.edu>
References: <9206100414.AA07324@arrisun3.uta.edu.uta.edu>

In message <9206100414.AA07324@arrisun3.uta.edu.uta.edu> Charlie Lindahl wrote:
>
> BTW, please make it VERY clear about the libresolv.a stuff. I knew
> what you were saying, but it wasn't very well explained in the
> PROBLEMS file.

Part of the problem here is that most of the text files floating around in
the emacs directories don't really apply any more; much has changed, and
little installation documentation has been corrected.  About six man-years
of work have gone into this branch of emacs since it last saw the light of
day, and only about three weeks was spent readying it for the general public.

Hopefully we'll have it working with the GNU "configure" system eventually,
and then things will go a lot more smoothly.  You won't even have to use
imake.  

I'm going to do what I can to make emacs easier to install, but to a large
extent I'm going to have to depend on you folks sending in patches, because
emacs isn't what pays the bills around here.

> MKDEP = /cadillac1/utilities/makedepend -/ -fDependencies
> 
> which I would think would choke most systems.

Yeah, that shouldn't be in there.  "Pay no attention to the man behind the
curtain." 

> I can say from firsthand experience that the "setting DISPLAY variable"
> problem DOES occur when trying to run the binary that is distributed with
> the "tar.Z" file on EXPORT. 

------- Start of forwarded message -------
Date: Fri, 5 Jun 92 18:59:37 PDT
Message-Id: <9206060159.AA15556@thalidomide.lucid>
From: Jamie Zawinski <jwz@heavens-gate.lucid.com>
To: bug-lucid-emacs@lucid.com
Subject: "Check that your $DISPLAY environment variable is properly set"

If you get this error when starting up emacs, it is almost always because
emacs is finding the wrong lisp directory, or none at all.

Replace the function `normal-top-level' in startup.el with the following
definition, and byte-compile the file.  startup.el is loaded before emacs
is dumped, so you can't install this fix without re-dumping.

The best way to make emacs find the correct lisp and etc direcories is 
to keep those direcories in the same directory as the emacs executable.  
That is, if the lemacs executable in in /usr/foobar/bin/lemacs, then 
/usr/foobar/bin/lisp/ and /usr/foobar/bin/etc/ should exist as well.
They may be symbolic links to directories, too.

If these don't exist, then emacs will try to use /usr/local/lib/emacs/lisp/
or /usr/local/emacs/lisp/ instead.  If these directories exist, but are
for version 18 instead of Lucid GNU Emacs, then emacs will be unable to
run.

Another solution is to put the right directories in paths.h before 
building emacs, but that's not as good a solution because it means that
if you want to move the emacs executable to another directory later, 
you have to recompile.  

	-- Jamie

(defun normal-top-level ()
  (if command-line-processed
      (message "Back to top level.")
    (setq command-line-processed t)
    ;; In presence of symlinks, switch to cleaner form of default directory.
    (if (and (not (eq system-type 'vax-vms))
	     (getenv "PWD"))
	(setq default-directory (file-name-as-directory (getenv "PWD"))
	      cdlist (initialize-cdlist)))
    (let ((tail directory-abbrev-alist))
      (while tail
	(if (string-match (car (car tail)) default-directory)
	    (setq default-directory
		  (concat (cdr (car tail))
			  (substring default-directory (match-end 0)))))
	(setq tail (cdr tail))))
    (condition-case error
	(command-line)
      ;;
      ;; If we get an error here, it's almost always because emacs couldn't
      ;; find lisp/term/x-win.el, or it's loading the v18 lisp/term/x-win.el.
      ;; If emacs supported ttys, then we could concievably continue here,
      ;; and simply run in tty mode, but right now, that just causes the
      ;; bogus "only runs under X" error to be printed.  Even when ttys work,
      ;; there's not much point in trying to run if we know we're going to
      ;; be so completely crippled.  It probably just won't work.
      ;;
      ;; If we call message here, it clears the screen in an unattractive
      ;; way, so just blast the bits to stdout.
      ;;
      (error
       (send-string-to-terminal (format "\nInitialization error: %S\n" error))
       (send-string-to-terminal (format "\nload-path is %S" load-path))
       (send-string-to-terminal (format "\nexec-directory is %S\n"
					exec-directory))
       (kill-emacs 1)))))

------- End of forwarded message -------

From help-lucid-emacs-request@heavens-gate.lucid.com  Wed Jun 10 07:52:22 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA22698; Wed, 10 Jun 92 07:52:22 PDT
Received: by heavens-gate.lucid.com id AA19588g; Wed, 10 Jun 92 07:20:49 PDT
Received: from grumpy (GRUMPY.SARNOFF.COM) by heavens-gate.lucid.com id AA19584g; Wed, 10 Jun 92 07:20:42 PDT
Received: from vague.sarnoff.com by grumpy (4.1/SMI-4.1)
	id AA00423; Wed, 10 Jun 92 10:28:57 EDT
Date: Wed, 10 Jun 92 10:28:57 EDT
Message-Id: <9206101428.AA00423@grumpy>
Received: by vague.sarnoff.com (4.1/SMI-4.1)
	id AA14587; Wed, 10 Jun 92 10:28:48 EDT
From: muller@vision.sarnoff.com
Sender: muller@sarnoff.com
To: help-lucid-emacs@lucid.com
Subject: vm

  I'm still having trouble with vm.  I autoload the version provided with
emacs 19.1, but when I say "vm" it immediately says "Cannot open load file:
vm-babyl".  There's no such file in that version of vm, nor any reference to it
in the source.

  Jim


From help-lucid-emacs-request@heavens-gate.lucid.com  Wed Jun 10 08:48:00 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA22767; Wed, 10 Jun 92 08:48:00 PDT
Received: by heavens-gate.lucid.com id AA19720g; Wed, 10 Jun 92 08:19:51 PDT
Received: from moebius.loria.fr by heavens-gate.lucid.com id AA19713g; Wed, 10 Jun 92 08:19:38 PDT
Received: by moebius.loria.fr id AA04143
  (5.65c+/IDA-1.4.3 for help-lucid-emacs@lucid.com); Wed, 10 Jun 92 17:26:04 +0200
Date: Wed, 10 Jun 92 17:26:04 +0200
From: Guido Bosch <Guido.Bosch@loria.fr>
Message-Id: <9206101526.AA04143@moebius.loria.fr>
To: help-lucid-emacs@lucid.com
Subject: mail-mode / .signature file

In mail mode, the command 

	`mail-signature'

seems no longer be bound to `C-c C-w' as the info manual still claims
(File: emacs, Node: Mail Mode).  Also the mail-mode docstring doesn't
mention it.

However, when sending the message, the .signature is automatically
added. Is there a variable to custommize this behavior (I would
preferr to decide myself when the .signature is appended).




From help-lucid-emacs-request@heavens-gate.lucid.com  Wed Jun 10 09:18:19 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA22807; Wed, 10 Jun 92 09:18:19 PDT
Received: by heavens-gate.lucid.com id AA19820g; Wed, 10 Jun 92 08:50:22 PDT
Received: from CAMIS.Stanford.EDU by heavens-gate.lucid.com id AA19816g; Wed, 10 Jun 92 08:50:14 PDT
Received: from mcs-ipc-3.Stanford.EDU by CAMIS.Stanford.EDU (4.1/inc-1.0)
	id AA16455; Wed, 10 Jun 92 08:58:28 PDT
Date: Wed, 10 Jun 1992 08:50:16 -0700 (PDT)
From: Kevin Brock <Brock@sumex-aim.stanford.edu>
Reply-To: Brock@sumex-aim.stanford.edu
Subject: RE: Cannot perform malloc error...
To: smiley@akasha.eng.hou.compaq.com
Cc: help-lucid-emacs@lucid.com
In-Reply-To: smiley@akasha.eng.hou.compaq.com's message of Tue, 09 Jun 92 20:15:28 -0500: <9206100115.AA00389@akasha.eng.hou.compaq.com>
Message-Id: <Ximap.708191908.7590.brock@MCS-IPC-3>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

>Sun Sparc 2, SunOS 4.1.1, GCC-2.2, X11R5, and Motif.

That's what we've got too... 

>lemacs was compiled with gcc -g ( a minor nit, but you should take the
>stuff about needing a -traditional flag out of the docs.  You don't
>need it.  As a matter of fact, if you use -traditional, environ.c will
>not compile.)

'cause of two 'const char*' casts in there

>Whenever I try to start up lemacs, I get "Error: cannot perform
>malloc."  

I got rid of that by commenting out the portion of
config.h that #undef'd SYSTEM_MALLOC and #define'd GNU_MALLOC.
Worked fine after that. SYSTEM_MALLOC is #define'd in s-sunos4.h.

On another thread -- when I tried to build lemacs with acc, Sun's
ANSI C compiler I got all kinds of warnings, and when I tried
to run it, got bus errors in various places.  Is Sun's ANSI C 
compiler broken, or is the code for lemacs just pseudo-ANSI?

Also, does anyone know when there's going to be better documentaion
on the X interface for lemacs?

Kevin Brock
brock@sumex-aim.stanford.edu


From help-lucid-emacs-request@heavens-gate.lucid.com  Wed Jun 10 10:00:52 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA22878; Wed, 10 Jun 92 10:00:52 PDT
Received: by heavens-gate.lucid.com id AA19995g; Wed, 10 Jun 92 09:32:03 PDT
Received: from foobar.cs.Colorado.EDU by heavens-gate.lucid.com id AA19990g; Wed, 10 Jun 92 09:31:53 PDT
Received: by foobar.cs.Colorado.EDU id AA27278
  (5.65c/IDA-1.4.4 for help-lucid-emacs@lucid.com); Wed, 10 Jun 1992 10:40:08 -0600
Date: Wed, 10 Jun 1992 10:40:08 -0600
From: Dirk Grunwald <grunwald@foobar.cs.Colorado.EDU>
Message-Id: <199206101640.AA27278@foobar.cs.Colorado.EDU>
To: help-lucid-emacs@lucid.com
Subject: Time for a newsgroup?
Reply-To: grunwald@foobar.cs.colorado.edu
Office: 6-1 ECOT (303) 492-0452



Well, I just found out I need the answer to the ``termcap database not
found'' question, but I had deleted it a while ago.

Perhaps it's time for a newsgroup rather than a mailing list?

From help-lucid-emacs-request@heavens-gate.lucid.com  Wed Jun 10 10:01:07 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA22882; Wed, 10 Jun 92 10:01:07 PDT
Received: by heavens-gate.lucid.com id AA19986g; Wed, 10 Jun 92 09:31:31 PDT
Received: from watergate.lucid ([192.31.212.117]) by heavens-gate.lucid.com id AA19982g; Wed, 10 Jun 92 09:31:23 PDT
Received: by watergate.lucid (4.1/SMI-4.1)
	id AA22955; Wed, 10 Jun 92 09:39:43 PDT
Date: Wed, 10 Jun 92 09:39:43 PDT
From: eb@watergate (Eric Benson)
Message-Id: <9206101639.AA22955@watergate.lucid>
To: Brock@sumex-aim.stanford.edu
Cc: help-lucid-emacs@lucid.com, smiley@akasha.eng.hou.compaq.com
Subject: RE: Cannot perform malloc error...
In-Reply-To: Kevin Brock's message of Wed 10-Jun-92 08:50:16 -0700 <Ximap.708191908.7590.brock@MCS-IPC-3>
References: <9206100115.AA00389@akasha.eng.hou.compaq.com>
	<Ximap.708191908.7590.brock@MCS-IPC-3>

In message <Ximap.708191908.7590.brock@MCS-IPC-3> Kevin Brock wrote:
> On another thread -- when I tried to build lemacs with acc, Sun's
> ANSI C compiler I got all kinds of warnings, and when I tried
> to run it, got bus errors in various places.  Is Sun's ANSI C 
> compiler broken, or is the code for lemacs just pseudo-ANSI?

Well, Emacs is definitely "pseudo-ANSI".  Both GCC and LCC (Lucid's C
compiler) have default modes that are "permissive," i.e. they try to
accept both ANSI and traditional K&R C whenever possible.  We have
built Emacs with both LCC and GCC, but never with Sun's ACC.  We
haven't made an effort to compile in strict ANSI mode with either
compiler.  If anyone does this, we would of course like to receive
those changes.

From help-lucid-emacs-request@heavens-gate.lucid.com  Wed Jun 10 10:11:08 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA22914; Wed, 10 Jun 92 10:11:08 PDT
Received: by heavens-gate.lucid.com id AA20080g; Wed, 10 Jun 92 09:43:53 PDT
Received: from moebius.loria.fr by heavens-gate.lucid.com id AA20074g; Wed, 10 Jun 92 09:43:43 PDT
Received: by moebius.loria.fr id AA04673
  (5.65c+/IDA-1.4.3 for help-lucid-emacs@lucid.com); Wed, 10 Jun 92 18:50:12 +0200
Date: Wed, 10 Jun 92 18:50:12 +0200
From: Guido Bosch <Guido.Bosch@loria.fr>
Message-Id: <9206101650.AA04673@moebius.loria.fr>
To: help-lucid-emacs@lucid.com
Subject: non-ASCII characters
Reply-To: Guido BOSCH <bosch@loria.fr>

Lucid Emacs 19 has been called "8-bit clean". But I always get the
octal representation for non-ASCII characters, i.e., sth. looking like
\234.

What is the trick to display them just as ordinary characters?

					Guido
			

From help-lucid-emacs-request@heavens-gate.lucid.com  Wed Jun 10 10:22:11 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA22947; Wed, 10 Jun 92 10:22:11 PDT
Received: by heavens-gate.lucid.com id AA20137g; Wed, 10 Jun 92 09:55:28 PDT
Received: from sun2.nsfnet-relay.ac.uk by heavens-gate.lucid.com id AA20128g; Wed, 10 Jun 92 09:54:38 PDT
Via: aifh.edinburgh.ac.uk; Wed, 10 Jun 1992 18:02:18 +0100
Date: Wed, 10 Jun 92 17:58:07 BST
Message-Id: <2092.9206101658@aisb.ed.ac.uk>
From: Tim Bradshaw <tim.bradshaw@edinburgh.ac.uk>
To: bosch <@lucid.com:bosch@loria.fr>
Cc: help-lucid-emacs@lucid.com
In-Reply-To: Guido Bosch's message of Wed, 10 Jun 92 18:50:12 +0200 <9206101650.AA04673@moebius.loria.fr>
Subject: Re: non-ASCII characters

>>>>> On Wed, 10 Jun 92 18:50:12 +0200, Guido Bosch <Guido.Bosch%loria.fr@com.lucid> said:

> Lucid Emacs 19 has been called "8-bit clean". But I always get the
> octal representation for non-ASCII characters, i.e., sth. looking like
> \234.

I don't think it's eight bit clean in its output unless it was
changed since the old version I'm still running.

--tim


From help-lucid-emacs-request@heavens-gate.lucid.com  Wed Jun 10 10:22:26 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA22954; Wed, 10 Jun 92 10:22:26 PDT
Received: by heavens-gate.lucid.com id AA20126g; Wed, 10 Jun 92 09:54:37 PDT
Received: from chenas.inria.fr by heavens-gate.lucid.com id AA20121g; Wed, 10 Jun 92 09:54:17 PDT
Received: from poly.polytechnique.fr by chenas.inria.fr (5.65c8d/92.02.29)
	via Fnet-EUnet id AA02488; Wed, 10 Jun 1992 19:02:24 +0200 (MET)
Received: by poly.polytechnique.fr (5.57/Ultrix3.0-C)
	id AA11247; Wed, 10 Jun 92 19:02:33 +0200
Received: by titus (4.0/Sun-4.0)
	id AA06738; Wed, 10 Jun 92 19:00:29 +0200
Date: Wed, 10 Jun 92 19:00:29 +0200
From: besancon@titus.polytechnique.fr (Thierry Besancon)
Message-Id: <9206101700.AA06738@titus>
Organization: LIX, Laboratoire d'Informatique de l'Ecole Polytechnique
        Ecole Polytechnique, 91128 Palaiseau Cedex, France
        tel: 69 33 34 85; fax: 69 33 30 14
To: help-lucid-emacs@lucid.com
Subject: Re:  Time for a newsgroup?


My 2 cents contribution:
I subscribed to the 2 mailing lists 2 days ago and I think that about 50 mails
in the last 30 hours are worth a newsgroup.

			Thierry

From help-lucid-emacs-request@heavens-gate.lucid.com  Wed Jun 10 10:22:29 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA22955; Wed, 10 Jun 92 10:22:29 PDT
Received: by heavens-gate.lucid.com id AA20120g; Wed, 10 Jun 92 09:53:48 PDT
Received: from ti.com by heavens-gate.lucid.com id AA20113g; Wed, 10 Jun 92 09:53:25 PDT
Received: from tilde.csc.ti.com ([128.247.160.56]) by ti.com with SMTP 
	(5.59/LAI-3.2) id AA24477; Wed, 10 Jun 92 12:01:53 CDT
Received: from sys_admin4.dadd.ti.com (dadsg1.dadd.ti.com) by tilde.csc.ti.com id AA06614; Wed, 10 Jun 1992 12:01:14 -0500
Received: from atg2.dadd.ti.com by sys_admin4.dadd.ti.com (4.1/SMI-4.1)
	id AA15903; Wed, 10 Jun 92 11:59:05 CDT
Received: by atg2.dadd.ti.com (4.1/SMI-4.1)
	id AA16032; Wed, 10 Jun 92 11:58:59 CDT
Date: Wed, 10 Jun 92 11:58:59 CDT
From: kenb@dadd.ti.com (Ken Butler)
Message-Id: <9206101658.AA16032@atg2.dadd.ti.com>
To: Guido.Bosch%loria.fr@lucid.com
Cc: help-lucid-emacs@lucid.com
In-Reply-To: Guido Bosch's message of Wed, 10 Jun 92 17:26:04 +0200
Subject: Re: mail-mode / .signature file

On Wed, 10 Jun 92 17:26:04 +0200, Guido Bosch <Guido.Bosch%loria.fr@lucid.com> said:

Guido> In mail mode, the command 

Guido> 	`mail-signature'

Guido> seems no longer be bound to `C-c C-w' as the info manual still claims
Guido> (File: emacs, Node: Mail Mode).  Also the mail-mode docstring doesn't
Guido> mention it.

Guido> However, when sending the message, the .signature is automatically
Guido> added. Is there a variable to custommize this behavior (I would
Guido> preferr to decide myself when the .signature is appended).

Here's what I'm doing:

(setq mail-setup-hook
      (function
       (lambda ()
         (my-sc-overload-hook)
         (setq mail-signature-inserted t))))


By the way, what was the solution to changing sc-cite so that the marks are
set when you yank mail into a mail buffer?  That was posted a couple of
days ago, but I lost the posting.  Please e-mail me direct so that the rest
of the group doesn't have to suffer the redundancy.

Thanks.

Ken

--

*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
Kenneth M. Butler                           (214) 997-6370 (office)
Texas Instruments                           (214) 997-2049 (FAX)
P.O. Box 655303 MS 3683                     kenb@dadd.ti.com
Dallas, TX 75265
*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*

From help-lucid-emacs-request@heavens-gate.lucid.com  Wed Jun 10 10:41:54 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA22993; Wed, 10 Jun 92 10:41:54 PDT
Received: by heavens-gate.lucid.com id AA20205g; Wed, 10 Jun 92 10:09:21 PDT
Received: from moebius.loria.fr by heavens-gate.lucid.com id AA20198g; Wed, 10 Jun 92 10:08:54 PDT
Received: by moebius.loria.fr id AA05013
  (5.65c+/IDA-1.4.3 for help-lucid-emacs@lucid.com); Wed, 10 Jun 92 19:15:13 +0200
Date: Wed, 10 Jun 92 19:15:13 +0200
From: Guido Bosch <Guido.Bosch@loria.fr>
Message-Id: <9206101715.AA05013@moebius.loria.fr>
To: help-lucid-emacs@lucid.com
Subject: Re: non-ASCII characters
In-Reply-To: <2092.9206101658@aisb.ed.ac.uk>
References: <2092.9206101658@aisb.ed.ac.uk>
	<9206101650.AA04673@moebius.loria.fr>
Reply-To: Guido BOSCH <bosch@loria.fr>

Tim Bradshaw writes:
 > >>>>> On Wed, 10 Jun 92 18:50:12 +0200, Guido Bosch <Guido.Bosch%loria.fr@com.lucid> said:
 > 
 > > Lucid Emacs 19 has been called "8-bit clean". But I always get the
 > > octal representation for non-ASCII characters, i.e., sth. looking like
 > > \234.
 > 
 > I don't think it's eight bit clean in its output unless it was
 > changed since the old version I'm still running.
 > 

You're right Tim, I should have read the etc/NEWS file more carefully.
It says clearly:

Known Problems / TODO List
==========================

Horizontally-split windows don't work.  Selective-display doesn't work.
Display tables don't work.  Lucid GNU Emacs is not "8-bit clean."  We plan to
do some extensive work on redisplay soon, which will likely fix all of this.


				Guido


From help-lucid-emacs-request@heavens-gate.lucid.com  Wed Jun 10 10:51:54 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA23009; Wed, 10 Jun 92 10:51:54 PDT
Received: by heavens-gate.lucid.com id AA20321g; Wed, 10 Jun 92 10:22:25 PDT
Received: from sapir.cog.jhu.edu by heavens-gate.lucid.com id AA20314g; Wed, 10 Jun 92 10:22:17 PDT
Received: from localhost by sapir.cog.jhu.edu (NeXT-1.0 (From Sendmail 5.52)/NeXT-2.0)
	id AA04168; Wed, 10 Jun 92 13:30:00 EDT
Message-Id: <9206101730.AA04168@sapir.cog.jhu.edu>
To: besancon%titus.polytechnique.fr@lucid.com (Thierry Besancon)
Cc: help-lucid-emacs@lucid.com
Subject: Re: Time for a newsgroup? 
In-Reply-To: Your message of "Wed, 10 Jun 92 19:00:29 +0200."
             <9206101700.AA06738@titus> 
Date: Wed, 10 Jun 92 13:29:59 -0400
From: anderson@sapir.cog.jhu.edu

>>>>> On Wed, 10 Jun 92 19:00:29 +0200,
besancon%titus.polytechnique.fr@lucid.com (Thierry Besancon) said: 

	TB> My 2 cents contribution: I subscribed to the 2 mailing
	TB> lists 2 days ago and I think that about 50 mails in the
	TB> last 30 hours are worth a newsgroup.

My $.02 worth: I just subscribed yesterday, and have already gotten a
fair number of items. Perhaps more to the point, I HAVEN'T gotten
items sent out before yesterday, and I imagine I've already missed a
lot of useful information. Newsgroups are easier to manage that way,
since they are usually self-archiving within a limited time window. 

On the other hand, it'll take forever to get comp.emacs.lucid or
whatever created. I'd think alt.lemacs would be the way to go, unless
there are too many members of these lists whose nearest news sites
don't get the alt groups.

--Steve Anderson

From help-lucid-emacs-request@heavens-gate.lucid.com  Wed Jun 10 11:08:16 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA23057; Wed, 10 Jun 92 11:08:16 PDT
Received: by heavens-gate.lucid.com id AA20394g; Wed, 10 Jun 92 10:41:12 PDT
Received: from mescal.NOC.Vitalink.COM by heavens-gate.lucid.com id AA20389g; Wed, 10 Jun 92 10:40:57 PDT
Received: by mescal.NOC.Vitalink.COM with UUCP id AA08902
  (5.65c/IDA-1.4.4 for help-lucid-emacs@lucid.com); Wed, 10 Jun 1992 10:43:23 -0700
Received: by wsrcc.com id AA16586
  (5.65c/IDA-1.4.4-WSR-02/03/92 for help-lucid-emacs@lucid.com); Wed, 10 Jun 1992 10:46:28 -0700
Date: Wed, 10 Jun 1992 10:46:28 -0700
From: wolfgang@wsrcc.com (Wolfgang S. Rupprecht)
Message-Id: <199206101746.AA16586@wsrcc.com>
To: help-lucid-emacs@lucid.com
Subject: getting started
Organization: W S Rupprecht Computer Consulting, Fremont CA


I'm impressed - someone put a lot of work into this emacs.
Good job!

Just some getting started questions...

What is the purpose to the 2-line minibuffer window?  

Is this a bug in my compilation of lucid-emacs?  
(Sparc/Sunos 4.1/gcc 2.2 -O2/X11R5p12)

Some other things I have noticed:

* the line-indicating arrow in edebug causes displayed line to move right.

* during query replace the first char of an extent will become
   unhighlighed if replaced.  When the second char is replaced the
   first char will return to correct highlighting.

* during an isearch the buffer will readjust itself in inch-worm
   fashion as the highlighting moves down the page.  Very disconcerting...

Zmacs highlighting/marking takes some getting used to, but I think I
like it better this way.  Some things that are a bit too strange:

* \M-> and  \M-< both claim "mark set" but don't really set mark.

* with zmacs highlighting mode active, a mark previously set but not
   currently highlighted: \C-w fails (no mark set) but \C-x\C-x works
   and highlights the region.

-wolfgang

PS. Please cc me in any followups - I may not be on the mailing list yet.
---
Wolfgang Rupprecht    wolfgang@wsrcc.com (or) wsrcc!wolfgang
Snail Mail:           39469 Gallaudet Drive, Fremont, CA 94538-4511

From help-lucid-emacs-request@heavens-gate.lucid.com  Wed Jun 10 12:03:13 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA23112; Wed, 10 Jun 92 12:03:13 PDT
Received: by heavens-gate.lucid.com id AA20602g; Wed, 10 Jun 92 11:36:39 PDT
Received: from watergate.lucid ([192.31.212.117]) by heavens-gate.lucid.com id AA20598g; Wed, 10 Jun 92 11:36:34 PDT
Received: by watergate.lucid (4.1/SMI-4.1)
	id AA23100; Wed, 10 Jun 92 11:44:55 PDT
Date: Wed, 10 Jun 92 11:44:55 PDT
From: eb@watergate (Eric Benson)
Message-Id: <9206101844.AA23100@watergate.lucid>
To: wolfgang@wsrcc.com (Wolfgang S. Rupprecht)
Cc: help-lucid-emacs@lucid.com
Subject: Re: getting started
In-Reply-To: Wolfgang S. Rupprecht's message of Wed 10-Jun-92 10:46:28 -0700 <199206101746.AA16586@wsrcc.com>
References: <199206101746.AA16586@wsrcc.com>

In message <199206101746.AA16586@wsrcc.com> Wolfgang S. Rupprecht wrote:
>
> 
> I'm impressed - someone put a lot of work into this emacs.
> Good job!

Thanks!

> Just some getting started questions...
> 
> What is the purpose to the 2-line minibuffer window?  
> 
> Is this a bug in my compilation of lucid-emacs?  
> (Sparc/Sunos 4.1/gcc 2.2 -O2/X11R5p12)

Could be.  Have you tried the already-compiled binary distribution?
The minibuffer is the same size as Emacs 18 in our version, just one
line.  You can make it larger in your init file if you want to.

> Some other things I have noticed:
> 
> * the line-indicating arrow in edebug causes displayed line to move
> right.

My fault.  I changed the "gdb" arrow to be inserted instead of
overlayed, because I didn't like having my text covered up.  Our
original plan was to have a separate column for this arrow and other
glyphs related to each line, so that this wouldn't throw off the
display of the line with the arrow.  This will probably appear in a
later version.

> Zmacs highlighting/marking takes some getting used to, but I think I
> like it better this way.  Some things that are a bit too strange:
> 
> * \M-> and  \M-< both claim "mark set" but don't really set mark.

They actually do set the mark, but they do not make the region active.
This is intentional.  As before, there is always a region after a mark
has been set in the buffer.  The difference is that region commands
don't work unless the region is active, and the region is only
activated by C-space or C-x C-x (followed by any number of motion-only
commands).

> * with zmacs highlighting mode active, a mark previously set but not
>    currently highlighted: \C-w fails (no mark set) but \C-x\C-x
>    works and highlights the region.

Right, that's the way it works.  C-x C-x C-x C-x always activates the
region and leaves point where it was.  The intention is to avoid
losing when you type C-w accidentally (perhaps you meant C-e), and
also so you can see exactly what part of the buffer will be affected
by the region command you are about to perform.

From help-lucid-emacs-request@heavens-gate.lucid.com  Wed Jun 10 12:13:30 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA23124; Wed, 10 Jun 92 12:13:30 PDT
Received: by heavens-gate.lucid.com id AA20650g; Wed, 10 Jun 92 11:45:05 PDT
Received: from uswat.advtech.uswest.com by heavens-gate.lucid.com id AA20644g; Wed, 10 Jun 92 11:44:47 PDT
Received: from alder.advtech.uswest.com by uswat.advtech.uswest.com with SMTP id AA21807
  (5.65c/IDA-1.4.4 for <help-lucid-emacs@lucid.com>); Wed, 10 Jun 1992 12:52:55 -0600
Received: by alder.advtech.uswest.com (advtech.uswest.com)
   id AA13759 (4.1/at-generic.11Feb92); Wed, 10 Jun 92 12:52:56 MDT
Date: Wed, 10 Jun 92 12:52:56 MDT
From: Chris McClenaghan <mcclen@advtech.uswest.com>
Message-Id: <9206101852.AA13759@alder.advtech.uswest.com>
To: help-lucid-emacs@lucid.com
Subject: vm

In vm-5.32.L I get the following error if my INBOX is empty

  Wrong type argument: arrayp, nil

If the folder (INBOX, or visited folder) has mail there is no
error. 

Here's my .vm -

(setq vm-reply-subject-prefix "Re: ")
(setq vm-reply-ignored-addresses (list "mcclen"))
(setq vm-startup-with-summary t)
(setq vm-flush-interval nil)
(setq vm-follow-summary-cursor t)
(setq vm-folder-directory "/u/mcclen/Mail/")
(setq vm-spool-files (cons "/usr/spool/mail/mcclen" nil))
(setq vm-delete-after-saving t)
(setq vm-auto-folder-alist
      '(("Subject" ("Homebrew Digest" . "homebrew"))
	("To" ("bug-lucid-emacs" . "bug-lucid-emacs")
	 ("help-lucid-emacs" . "help-lucid-emacs")
	 ("ange-ftp-lovers" . "ange-ftp")
	 ("metamail" . "meta-mail")
	 ("hyperbole" . "hyperbole"))
	("Cc" ("bug-lucid-emacs" . "bug-lucid-emacs")
	 ("help-lucid-emacs" . "help-lucid-emacs")
	 ("ange-ftp-lovers" . "ange-ftp")
	 ("metamail" . "meta-mail")
	 ("hyperbole" . "hyperbole"))
	))	
;;;(setq vm-mode-hooks '(lambda()
;;;	;;metamail support
;;;	(require 'metamail)
;;;	(setq vm-show-message-hook '(lambda()
;;;				      (setq vm-never-execute-automatically nil)
;;;				      (vm-check-content-type)))
;;;;;;	(require 'vm-hack)
;;;;;;	(setq vm-hack-summary-mode "anything")
;;;;;;	(setq vm-hack-hostname "alder")
;;;	))
;;;(bbdb-insinuate-vm)

Here's the relevant section from my .emacs -

;;vm stuff. other stuff in rc file
(autoload 'vm "vm" nil t)
(autoload 'vm-mode "vm" nil t)
(autoload 'vm-visit-folder "vm" nil t)
(autoload 'vm-visit-virtual-folder "vm-virtual" nil t)
(autoload 'vm-mail "vm-reply" nil t)

--
Chris McClenaghan    mcclen@uswest.com


From help-lucid-emacs-request@heavens-gate.lucid.com  Wed Jun 10 12:21:36 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA23136; Wed, 10 Jun 92 12:21:36 PDT
Received: by heavens-gate.lucid.com id AA20709g; Wed, 10 Jun 92 11:50:55 PDT
Received: from watergate.lucid ([192.31.212.117]) by heavens-gate.lucid.com id AA20703g; Wed, 10 Jun 92 11:50:44 PDT
Received: by watergate.lucid (4.1/SMI-4.1)
	id AA23131; Wed, 10 Jun 92 11:59:05 PDT
Date: Wed, 10 Jun 92 11:59:05 PDT
From: eb@watergate (Eric Benson)
Message-Id: <9206101859.AA23131@watergate.lucid>
To: Guido BOSCH <bosch%loria.fr@lucid.com>
Cc: help-lucid-emacs@lucid.com
Subject: Re: non-ASCII characters
In-Reply-To: Guido Bosch's message of Wed 10-Jun-92 18:50:12 +0200 <9206101650.AA04673@moebius.loria.fr>
References: <9206101650.AA04673@moebius.loria.fr>

In message <9206101650.AA04673@moebius.loria.fr> Guido Bosch wrote:
>
> Lucid Emacs 19 has been called "8-bit clean". But I always get the
> octal representation for non-ASCII characters, i.e., sth. looking
> like \234.
> 
> What is the trick to display them just as ordinary characters?
> 
> 					Guido

As it says in the NEWS file, Emacs isn't "8-bit clean" in output.  We
just didn't get around to it.  I don't think it's very hard to do,
given the current modularization of redisplay.  It should probably be
controlled by the variable "ctl-arrow".  Currently if this is t,
control characters are displayed as "^F", if it is nil they are
displayed as "\006" (as are all characters 128 and above).  It would
be quite easy to change it so that a non-nil, non-t setting of ctl-arrow
would cause all characters to be displayed as "themselves", i.e. just
use whatever glyph happens to be in the font for that character
value.  The function "pixel_to_glyph_translation" in dispnew.c does
all the work.  There are two places in that function where essentially
the same computation is performed.

From help-lucid-emacs-request@heavens-gate.lucid.com  Wed Jun 10 12:30:35 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA23153; Wed, 10 Jun 92 12:30:35 PDT
Received: by heavens-gate.lucid.com id AA20798g; Wed, 10 Jun 92 12:07:15 PDT
Received: from math.mit.edu (WEYL.MIT.EDU) by heavens-gate.lucid.com id AA20790g; Wed, 10 Jun 92 12:06:46 PDT
Received: from euler (EULER.MIT.EDU) by math.mit.edu (4.1/Math-2.0) 
	id AA27255; Wed, 10 Jun 92 15:06:53 EDT
Received: by euler; Wed, 10 Jun 92 15:14:36 EDT
Date: Wed, 10 Jun 92 15:14:36 EDT
From: richard@math.mit.edu
Message-Id: <9206101914.AA02247@euler>
To: help-lucid-emacs@lucid.com
Subject: Differences between Lucid emacs 19 and `official' emacs 19 ?


Could someone list some of the expected or known differences between
Lucid emacs 19 and the official version?
I would like to start programming with emacs-lisp of version 19, but
I'm not sure I want to program in Lucid emacs-lisp if it 
has significant differences from the forthcoming official version.
I wouldn't want to write code that is incompatible with GNU emacs-lisp.

;; -----------------------------------------------
;; Richard Y. Kim		richard@ear.mit.edu
;; (617) 253-8142 (W),   	(617) 449-7347 (H)

From help-lucid-emacs-request@heavens-gate.lucid.com  Wed Jun 10 12:50:25 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA23173; Wed, 10 Jun 92 12:50:25 PDT
Received: by heavens-gate.lucid.com id AA20860g; Wed, 10 Jun 92 12:25:43 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA20856g; Wed, 10 Jun 92 12:25:37 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA25935; Wed, 10 Jun 92 12:33:59 PDT
Date: Wed, 10 Jun 92 12:33:59 PDT
Message-Id: <9206101933.AA25935@thalidomide.lucid>
X-Windows: graphics hacking :: roman numerals : sqrt(pi)
From: Jamie Zawinski <jwz@heavens-gate.lucid.com>
Sender: jwz@thalidomide
To: richard@math.mit.edu
Cc: help-lucid-emacs@lucid.com
Subject: Re: Differences between Lucid emacs 19 and `official' emacs 19 ?
In-Reply-To: richard@math.mit.edu's message of Wed 10-Jun-92 15:14:36 EDT <9206101914.AA02247@euler>
References: <9206101914.AA02247@euler>

In message <9206101914.AA02247@euler> richard@math.mit.edu wrote:
>
> Could someone list some of the expected or known differences between
> Lucid emacs 19 and the official version?
> I would like to start programming with emacs-lisp of version 19, but
> I'm not sure I want to program in Lucid emacs-lisp if it 
> has significant differences from the forthcoming official version.
> I wouldn't want to write code that is incompatible with GNU emacs-lisp.

The known differences between Lucid GNU Emacs 19.1 and GNU Emacs 18.57 are
enumerated in the NEWS file.  (Emphasis on "known".)  Many of the more subtle
changes that were made were not made by us, but were made by the FSF folks
before we diverged; your `read' example (which is an example of a change that
I, at least, didn't know about) is one of these.  That change will most likely
be in FSF's v19, since we weren't responsible for it.

If you discover a significant difference in elisp that isn't mentioned in the
NEWS file, let us know and we'll put it there.

	-- Jamie

From help-lucid-emacs-request@heavens-gate.lucid.com  Wed Jun 10 13:02:44 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA23185; Wed, 10 Jun 92 13:02:44 PDT
Received: by heavens-gate.lucid.com id AA20901g; Wed, 10 Jun 92 12:35:30 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA20897g; Wed, 10 Jun 92 12:35:09 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA25952; Wed, 10 Jun 92 12:43:30 PDT
Date: Wed, 10 Jun 92 12:43:30 PDT
Message-Id: <9206101943.AA25952@thalidomide.lucid>
X-Windows: The first fully modular software disaster.
From: Jamie Zawinski <jwz@heavens-gate.lucid.com>
Sender: jwz@thalidomide
To: eb%watergate@lucid.com (Eric Benson)
Cc: Guido BOSCH <bosch%loria.fr@lucid.com>, help-lucid-emacs@lucid.com
Subject: Re: non-ASCII characters
In-Reply-To: Eric Benson's message of Wed 10-Jun-92 11:59:05 PDT <9206101859.AA23131@watergate.lucid>
References: <9206101650.AA04673@moebius.loria.fr>
	<9206101859.AA23131@watergate.lucid>

In message <9206101859.AA23131@watergate.lucid> Eric Benson wrote:
>
> It should probably be controlled by the variable "ctl-arrow".

This is the way several popular patches to emacs 18 work, but from reading
the code, it seems that the FSF folks intended to do it differently.  From
what I can tell, the idea was that each window or buffer could have a
"display table".  This is a 256-long vector, indexed by buffer-characters.
Each element of this vector could be a character (int) or string, or (some
representation of a) bitmap to display instead of the buffer-character in
question.  So to make all high-bit characters display as themselves, you'd
need to set up a display-table were (aref table x) --> x for all of the
high-bit characters.  

But this lets you do a lot more, like display some characters as multi-char
sequences, and translate between the character encoding of a file and the
character encoding of the font you are using.  This seems like a decent
way of doing things to me, so it's probably what I'll implement eventually,
but comments are welcome.

	-- Jamie

From help-lucid-emacs-request@heavens-gate.lucid.com  Wed Jun 10 13:03:43 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA23189; Wed, 10 Jun 92 13:03:43 PDT
Received: by heavens-gate.lucid.com id AA20918g; Wed, 10 Jun 92 12:37:11 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA20914g; Wed, 10 Jun 92 12:37:01 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA25960; Wed, 10 Jun 92 12:45:23 PDT
Date: Wed, 10 Jun 92 12:45:23 PDT
Message-Id: <9206101945.AA25960@thalidomide.lucid>
X-Windows: The joke that kills.
From: Jamie Zawinski <jwz@heavens-gate.lucid.com>
Sender: jwz@thalidomide
To: anderson@sapir.cog.jhu.edu
Cc: help-lucid-emacs@lucid.com
Subject: Re: Time for a newsgroup? 
In-Reply-To: anderson@sapir.cog.jhu.edu's message of Wed 10-Jun-92 13:29:59 -0400 <9206101730.AA04168@sapir.cog.jhu.edu>
References: <9206101700.AA06738@titus>
	<9206101730.AA04168@sapir.cog.jhu.edu>

In message <9206101730.AA04168@sapir.cog.jhu.edu> anderson@sapir.cog.jhu.edu wrote:
>
> On the other hand, it'll take forever to get comp.emacs.lucid or
> whatever created. I'd think alt.lemacs would be the way to go, unless
> there are too many members of these lists whose nearest news sites
> don't get the alt groups.

I'm going to look in to what it will take to get gnu.emacs.lucid.help and
gnu.emacs.lucid.bug created.

	-- Jamie

From help-lucid-emacs-request@heavens-gate.lucid.com  Wed Jun 10 13:28:10 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA23234; Wed, 10 Jun 92 13:28:10 PDT
Received: by heavens-gate.lucid.com id AA21024g; Wed, 10 Jun 92 12:59:37 PDT
Received: from ti.com by heavens-gate.lucid.com id AA21020g; Wed, 10 Jun 92 12:59:28 PDT
Received: from tilde.csc.ti.com ([128.247.160.56]) by ti.com with SMTP 
	(5.59/LAI-3.2) id AA01425; Wed, 10 Jun 92 15:07:49 CDT
Received: from sys_admin4.dadd.ti.com (dadsg1.dadd.ti.com) by tilde.csc.ti.com id AA13582; Wed, 10 Jun 1992 15:07:14 -0500
Received: from atg2.dadd.ti.com by sys_admin4.dadd.ti.com (4.1/SMI-4.1)
	id AA16513; Wed, 10 Jun 92 15:05:08 CDT
Received: by atg2.dadd.ti.com (4.1/SMI-4.1)
	id AA18710; Wed, 10 Jun 92 15:04:59 CDT
Date: Wed, 10 Jun 92 15:04:59 CDT
From: kenb@dadd.ti.com (Ken Butler)
Message-Id: <9206102004.AA18710@atg2.dadd.ti.com>
To: jwz@lucid.com
Cc: anderson@sapir.cog.jhu.edu, help-lucid-emacs@lucid.com
In-Reply-To: Jamie Zawinski's message of Wed, 10 Jun 92 12:45:23 PDT
Subject: RMAIL enhancement

I made a little modification to rmailsum.el so that you can "point and
shoot" in the summary buffer:

(define-key rmail-summary-mode-map 'button1 'rmail-summary-mouse-goto)

(defun rmail-summary-mouse-goto (event)
  (interactive "@e")
  "Set the pointer down, then jump that that message."
  (mouse-set-point event)
  (rmail-summary-goto-msg))

I'm sure that something similar can be done in vm.

Ken

P.S. I'm in agreement on setting up a newgroup.  Thanks for looking into
     it, Jamie.

--

*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
Kenneth M. Butler                           (214) 997-6370 (office)
Texas Instruments                           (214) 997-2049 (FAX)
P.O. Box 655303 MS 3683                     kenb@dadd.ti.com
Dallas, TX 75265
*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*

From help-lucid-emacs-request@heavens-gate.lucid.com  Wed Jun 10 13:54:37 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA23274; Wed, 10 Jun 92 13:54:37 PDT
Received: by heavens-gate.lucid.com id AA21159g; Wed, 10 Jun 92 13:23:56 PDT
Received: from physics.wm.edu by heavens-gate.lucid.com id AA21155g; Wed, 10 Jun 92 13:23:44 PDT
Received: by physics.wm.edu (4.1/SMI-4.0)
	id AA00911; Wed, 10 Jun 92 16:28:55 EDT
From: ajn@physics.wm.edu (Touch Not The Cat With The Glove)
Message-Id: <9206102028.AA00911@physics.wm.edu>
Subject: screen-name
To: help-lucid-emacs@lucid.com
Date: Wed, 10 Jun 92 16:28:54 EDT
X-Mailer: ELM [version 2.3 PL0]

OK I am confused about how to name screens/extract the screen name etc. in lucid emacs
I am a lisp neophyte so please treat me gently...

-- 
+-----------------------------------------------------------------------------+
|..Alastair Neil................................|                             |
|..(804)-221-3533..[ajn@physics.wm.edu].........|       None Shall Sleep      |
+-----------------------------------------------------------------------------+

From help-lucid-emacs-request@heavens-gate.lucid.com  Wed Jun 10 14:02:47 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA23286; Wed, 10 Jun 92 14:02:47 PDT
Received: by heavens-gate.lucid.com id AA21193g; Wed, 10 Jun 92 13:29:53 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA21189g; Wed, 10 Jun 92 13:29:45 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA26147; Wed, 10 Jun 92 13:38:07 PDT
Date: Wed, 10 Jun 92 13:38:07 PDT
Message-Id: <9206102038.AA26147@thalidomide.lucid>
X-Windows: A terminal disease.
From: Jamie Zawinski <jwz@heavens-gate.lucid.com>
Sender: jwz@thalidomide
To: ajn@physics.wm.edu (Touch Not The Cat With The Glove)
Cc: help-lucid-emacs@lucid.com
Subject: Re: screen-name
In-Reply-To: Touch Not The Cat With The Glove's message of Wed 10-Jun-92 16:28:54 EDT <9206102028.AA00911@physics.wm.edu>
References: <9206102028.AA00911@physics.wm.edu>

You can only name screens at the time they are created, since the name is used
to interrogate the X resource database when the widgets are created.  To make
a named screen, do this

  (x-create-screen '((name . "your-name-here")))

To get the name of the selected screen, use (screen-name (selected-screen)).

Also do `C-h f get-screen-for-buffer RET' to see a description of how to
have screens automatically created for certain buffers.  

	-- Jamie

From help-lucid-emacs-request@heavens-gate.lucid.com  Wed Jun 10 14:29:39 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA23339; Wed, 10 Jun 92 14:29:39 PDT
Received: by heavens-gate.lucid.com id AA21311g; Wed, 10 Jun 92 13:53:37 PDT
Received: from wotan.compaq.com (compaq.com) by heavens-gate.lucid.com id AA21307g; Wed, 10 Jun 92 13:53:30 PDT
Received: by wotan.compaq.com (/\==/\ Smail3.1.21.1 #21.34)
	id <m0lvZkG-000DJEC@wotan.compaq.com>; Wed, 10 Jun 92 15:58 CDT
Received: by twisto.eng.hou.compaq.com (Smail3.1.21)
	id <m0lvZhg-0006HgC@twisto.eng.hou.compaq.com>; Wed, 10 Jun 92 15:55 CDT
Received: from localhost.eng.hou.compaq.com by akasha.eng.hou.compaq.com (4.1/1.36(MFA-SUN))
	id AA02926; Wed, 10 Jun 92 15:55:35 CDT
Message-Id: <9206102055.AA02926@akasha.eng.hou.compaq.com>
To: help-lucid-emacs%lucid.com@twisto.eng.hou.compaq.com ( Lucid Emacs Help Mailing List )
Subject: OK, time for more differences, etc...
Date: Wed, 10 Jun 92 15:55:34 -0500
From: ( Colin :) <smiley@akasha.eng.hou.compaq.com>



Do we need a FAQ yet?  I'd like to see one...

I am an epoch user, and have grown quite accustomed to the neat things
I can do with it, the questions I have are can I do them with lemacs?

The following questions are proposed FAQ fodder.

1) Can the minibuffer be detached and made it's own window?  I have
gotten quite used to having just one minibuffer for all my screens.

2) Can the fonts and colors of the menu bar be changed (via Xrdb)?
The impression I have is not yet.

3) I think I saw something in the TO DO list about making the menubar
a buffer sensetive item.  My $0.02...Great idea!  It would be great to
have a separate GDB menubar, MH-e menubar, etc.  Also, how about a
function that toggles whether or not the menubar appears on a screen
(on a screen by screen) basis?

4) Has anyone written a package that has different faces for different
regions of text following certain conventions?  What I mean is can you
get multicolor modelines, and have your C, C++, lisp code come up with
different colors for different kinds of statements (#defines,
comments, etc)?

5) Am I correct in assuming that extents can be used like zones in
epoch such that you can make a hyper-text-ish info browser, man
browser, dired?

Whew!  just a few questions...

If anyone has similar questions or ideas, let's talk about them!  I
would like to see this stuff in lemacs (plus about half of the TO DO
list - if I only had the time...).


Colin

-------------------------------------------------------------------------
Colin Smiley, Compaq Computer Corporation, Houston, Texas 77269-2000
e-mail: smiley@compaq.com                           Phone: (713) 378-8426
-------------------------------------------------------------------------
Disclaimer:  Any opinons expressed here do not reflect the opinions of
Compaq Computer Corp.  They make computers.  I make noise.


From help-lucid-emacs-request@heavens-gate.lucid.com  Wed Jun 10 14:32:51 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA23343; Wed, 10 Jun 92 14:32:51 PDT
Received: by heavens-gate.lucid.com id AA21388g; Wed, 10 Jun 92 14:05:27 PDT
Received: from earth (earth.med.ohio-state.edu) by heavens-gate.lucid.com id AA21384g; Wed, 10 Jun 92 14:05:21 PDT
Received: from jupiter.ohio-state.edu by earth (4.1/5.901120)
	id AA21488; Wed, 10 Jun 92 17:06:48 EDT
Date: Wed, 10 Jun 92 17:06:48 EDT
From: Nasir K. Amra <amra@med.ohio-state.edu>
Message-Id: <9206102106.AA21488@earth>
Received: by jupiter.ohio-state.edu (4.1/SMI-4.1)
	id AA08128; Wed, 10 Jun 92 17:09:47 EDT
To: help-lucid-emacs@lucid.com
Subject: hyperbole and emacs19
Comments: Hyperbole mail buttons accepted, v3.04.

	I am currently a user of hyperbole and enjoy the mouse point
and click interface. Does hyperbole seamlessly integrate with emacs19
or do I have to hack something in emacs19 to get hyperbole to work?
	another question I have is there any preliminary documentation
as the differences in emacs-lisp coding in emacs19 .vs. emacs18.5?.
Thanks,

---------------------------------------------------------------------
Nasir K. Amra				      amra@med.ohio-state.edu
Laboratory for Knowledge Based Medical Systems
Ohio State University
571 Health Science Library,376 W. 10th , Columbus, Ohio, 43210
tel. (614)-292-8614

From help-lucid-emacs-request@heavens-gate.lucid.com  Wed Jun 10 15:52:39 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA23441; Wed, 10 Jun 92 15:52:39 PDT
Received: by heavens-gate.lucid.com id AA21666g; Wed, 10 Jun 92 15:22:34 PDT
Received: from BU.EDU by heavens-gate.lucid.com id AA21660g; Wed, 10 Jun 92 15:22:24 PDT
Received: from BUCRF16.BU.EDU by BU.EDU (1.99) Wed, 10 Jun 92 18:30:32 -0400
Received: by BUCRF16.bu.edu (5.57/Ultrix3.0-C)
	id AA14325; Wed, 10 Jun 92 18:29:38 -0400
Date: Wed, 10 Jun 92 18:29:38 -0400
From: cohen@BUCRF16.BU.EDU (Andy Cohen)
Message-Id: <9206102229.AA14325@BUCRF16.bu.edu>
To: help-lucid-emacs@lucid.com
Subject: ange-ftp

My version of ange-ftp doesn't work with lemacs19.1. Does anyone have a version
that does?




From help-lucid-emacs-request@heavens-gate.lucid.com  Wed Jun 10 16:02:09 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA23473; Wed, 10 Jun 92 16:02:09 PDT
Received: by heavens-gate.lucid.com id AA21724g; Wed, 10 Jun 92 15:35:46 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA21720g; Wed, 10 Jun 92 15:35:35 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA26387; Wed, 10 Jun 92 15:43:59 PDT
Date: Wed, 10 Jun 92 15:43:59 PDT
Message-Id: <9206102243.AA26387@thalidomide.lucid>
X-Windows: Dissatisfaction guaranteed.
From: Jamie Zawinski <jwz@heavens-gate.lucid.com>
Sender: jwz@thalidomide
To: cohen@BUCRF16.BU.EDU (Andy Cohen)
Cc: help-lucid-emacs@lucid.com
Subject: Re: ange-ftp
In-Reply-To: Andy Cohen's message of Wed 10-Jun-92 18:29:38 -0400 <9206102229.AA14325@BUCRF16.bu.edu>
References: <9206102229.AA14325@BUCRF16.bu.edu>

In message <9206102229.AA14325@BUCRF16.bu.edu> Andy Cohen wrote:
>
> My version of ange-ftp doesn't work with lemacs19.1. Does anyone have a
> version that does?

The version of ange-ftp in .../lisp/dired/ange-ftp.el works.  In fact, all
sufficiently recent versions (except the one released yesterday) work.

In general, check the lemacs lisp directory for copies of any other packages
you use; if we have included one, it's often because it needed modifications.

	-- Jamie

From help-lucid-emacs-request@heavens-gate.lucid.com  Wed Jun 10 16:12:29 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA23491; Wed, 10 Jun 92 16:12:29 PDT
Received: by heavens-gate.lucid.com id AA21782g; Wed, 10 Jun 92 15:45:44 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA21778g; Wed, 10 Jun 92 15:45:33 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA26431; Wed, 10 Jun 92 15:53:57 PDT
Date: Wed, 10 Jun 92 15:53:57 PDT
Message-Id: <9206102253.AA26431@thalidomide.lucid>
X-Windows: The Cutting Edge of Obsolescence.
From: Jamie Zawinski <jwz@heavens-gate.lucid.com>
Sender: jwz@thalidomide
To: Nasir K. Amra <amra@med.ohio-state.edu>
Cc: help-lucid-emacs@lucid.com
Subject: Re: hyperbole and emacs19
In-Reply-To: Nasir K. Amra's message of Wed 10-Jun-92 17:06:48 EDT <9206102106.AA21488@earth>
References: <9206102106.AA21488@earth>

In message <9206102106.AA21488@earth> Nasir K. Amra wrote:
>
> 	I am currently a user of hyperbole and enjoy the mouse point
> and click interface. Does hyperbole seamlessly integrate with emacs19
> or do I have to hack something in emacs19 to get hyperbole to work?

If you just load the Hyperbole .elc files, it will probably work the same
in lemacs as it does in emacs 18.5*.  It won't do all of the nifty Epoch
stuff, until someone either hacks Hyperbole to know about lemacs, or (a
better idea) writes an Epoch-compatibility package for lemacs.

However, there is a bug in Hyperbole which prevents it from working when
compiled with the new byte-compiler, which is included with lemacs.  I
believe Bob Weiner has fixed this, but I don't know if he has released
the fixed version yet.  So don't recompile it, or compile it with v18.
The v18 .elc files can be loaded into lemacs with no problem.

> 	another question I have is there any preliminary documentation
> as the differences in emacs-lisp coding in emacs19 .vs. emacs18.5?.

All there is right now is what's in the NEWS file.

	-- Jamie

From help-lucid-emacs-request@heavens-gate.lucid.com  Wed Jun 10 17:09:23 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA23546; Wed, 10 Jun 92 17:09:23 PDT
Received: by heavens-gate.lucid.com id AA22083g; Wed, 10 Jun 92 16:43:26 PDT
Received: from erewhon.CS.Berkeley.EDU by heavens-gate.lucid.com id AA22079g; Wed, 10 Jun 92 16:43:18 PDT
Received: by erewhon.CS.Berkeley.EDU (5.57/Ultrix3.0-C) id AA19583; Wed, 10 Jun 92 16:53:32 -0700
Message-Id: <9206102353.AA19583@erewhon.CS.Berkeley.EDU>
From: Adam Glass <glass@postgres.berkeley.edu>
To: Jamie Zawinski <jwz@lucid.com>
Cc: help-lucid-emacs@lucid.com
Subject: Re: ange-ftp 
In-Reply-To: Your message of Wed, 10 Jun 92 15:43:59 PST.
             <9206102243.AA26387@thalidomide.lucid> 
Date: Wed, 10 Jun 92 16:53:29 PDT
Sender: glass@postgres.Berkeley.EDU

> In message <9206102229.AA14325@BUCRF16.bu.edu> Andy Cohen wrote:
> >
> > My version of ange-ftp doesn't work with lemacs19.1. Does anyone have a
> > version that does?
> 
> The version of ange-ftp in .../lisp/dired/ange-ftp.el works.  In fact, all
> sufficiently recent versions (except the one released yesterday) work.
> 
> In general, check the lemacs lisp directory for copies of any other packages
> you use; if we have included one, it's often because it needed modifications.
> 
> 	-- Jamie

Umm.  I haven't gotten the version in the distribution to work either.
Same problem, it just locks up.

This is on a decstation 5k/200 running ultrix4.2a.

later,
Adam Glass



From help-lucid-emacs-request@heavens-gate.lucid.com  Wed Jun 10 17:11:57 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA23550; Wed, 10 Jun 92 17:11:57 PDT
Received: by heavens-gate.lucid.com id AA22109g; Wed, 10 Jun 92 16:48:33 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA22105g; Wed, 10 Jun 92 16:48:24 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA26577; Wed, 10 Jun 92 16:56:48 PDT
Date: Wed, 10 Jun 92 16:56:48 PDT
Message-Id: <9206102356.AA26577@thalidomide.lucid>
X-Windows: The Cutting Edge of Obsolescence.
From: Jamie Zawinski <jwz@heavens-gate.lucid.com>
Sender: jwz@thalidomide
To: Adam Glass <glass@postgres.berkeley.edu>
Cc: help-lucid-emacs@lucid.com
Subject: Re: ange-ftp 
In-Reply-To: Adam Glass's message of Wed 10-Jun-92 16:53:29 PDT <9206102353.AA19583@erewhon.CS.Berkeley.EDU>
References: <9206102243.AA26387@thalidomide.lucid>
	<9206102353.AA19583@erewhon.CS.Berkeley.EDU>

In message <9206102353.AA19583@erewhon.CS.Berkeley.EDU> Adam Glass wrote:
>
> Umm.  I haven't gotten the version in the distribution to work either.
> Same problem, it just locks up.
> 
> This is on a decstation 5k/200 running ultrix4.2a.

What's the symptom you're seeing?  I use it all the time on a Sparc2.
Possibly this is a bug in the subprocess code; do shell buffers and
GNUS work for you?

	-- Jamie

From help-lucid-emacs-request@heavens-gate.lucid.com  Wed Jun 10 17:47:46 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA23591; Wed, 10 Jun 92 17:47:46 PDT
Received: by heavens-gate.lucid.com id AA22265g; Wed, 10 Jun 92 17:23:18 PDT
Received: from erewhon.CS.Berkeley.EDU by heavens-gate.lucid.com id AA22261g; Wed, 10 Jun 92 17:23:10 PDT
Received: by erewhon.CS.Berkeley.EDU (5.57/Ultrix3.0-C) id AA19678; Wed, 10 Jun 92 17:33:23 -0700
From: <glass@postgres.berkeley.edu>
Message-Id: <9206110033.AA19678@erewhon.CS.Berkeley.EDU>
To: Jamie Zawinski <jwz@lucid.com>
Cc: Adam Glass <glass@postgres.berkeley.edu>, help-lucid-emacs@lucid.com
Subject: Re: ange-ftp 
In-Reply-To: Your message of Wed, 10 Jun 92 16:56:48 PST.
             <9206102356.AA26577@thalidomide.lucid> 
Date: Wed, 10 Jun 92 17:33:21 PDT

> In message <9206102353.AA19583@erewhon.CS.Berkeley.EDU> Adam Glass wrote:
> >
> > Umm.  I haven't gotten the version in the distribution to work either.
> > Same problem, it just locks up.
> > 
> > This is on a decstation 5k/200 running ultrix4.2a.
> 
> What's the symptom you're seeing?  I use it all the time on a Sparc2.
> Possibly this is a bug in the subprocess code; do shell buffers and
> GNUS work for you?
> 
> 	-- Jamie

Hmm.. Should've checked that myself.

shell-buffers, and GNUS seem to block on something.  If you send
lemacs a SIGTERM, they wake up.  In the case of GNUS the signal gets
it to the 'Getting active file stage' but it blocks there.  with M-x
shell sending a SIGTERM it sometimes wakes up the shell which then
echos a few lines of prompts, and then says it got a hangup.
Sometimes the emacs dies period.

configuration: lemacs, ultrix-4.2a, dec 5k/200, using the m-pmax file
from 18.57 on advice from Andrew Cohen (this resolved 80% of my
missing functions problems).

later,
Adam Glass

ps. its definitely using the lucid lisp stuff....

From help-lucid-emacs-request@heavens-gate.lucid.com  Wed Jun 10 19:04:02 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA23658; Wed, 10 Jun 92 19:04:02 PDT
Received: by heavens-gate.lucid.com id AA22560g; Wed, 10 Jun 92 18:41:47 PDT
Received: from physics.wm.edu by heavens-gate.lucid.com id AA22553g; Wed, 10 Jun 92 18:41:33 PDT
Received: by physics.wm.edu (4.1/SMI-4.0)
	id AA01999; Wed, 10 Jun 92 21:46:22 EDT
From: ajn@physics.wm.edu (Touch Not The Cat With The Glove)
Message-Id: <9206110146.AA01999@physics.wm.edu>
Subject: more screen name confusion
To: help-lucid-emacs@lucid.com
Date: Wed, 10 Jun 92 21:46:21 EDT
X-Mailer: ELM [version 2.3 PL0]

OK, I'm slowly getting the hang of this, however I am still a little confused.
Primarily I would like to configure lemacs to automagically set the screen
name on startup to some value determined either from some general pattern
in the filename (e.g. snd.* or something like that) and/or by major mode
ie to distinguish between TeX files and Fortran files etc. I have already
been pointed in the direction of get-screen-for-buffer function - but I
have no Idea where to go from there... also can anyone recommend a 
good lisp reference, so I can cease being a general pain.

-- 
+-----------------------------------------------------------------------------+
|..Alastair Neil................................|                             |
|..(804)-221-3533..[ajn@physics.wm.edu].........|       None Shall Sleep      |
+-----------------------------------------------------------------------------+

From help-lucid-emacs-request@heavens-gate.lucid.com  Wed Jun 10 19:58:12 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA23687; Wed, 10 Jun 92 19:58:12 PDT
Received: by heavens-gate.lucid.com id AA22654g; Wed, 10 Jun 92 19:31:42 PDT
Received: from clouso.crim.ca by heavens-gate.lucid.com id AA22650g; Wed, 10 Jun 92 19:31:34 PDT
Received: from ireq-robot.hydro.qc.ca by clouso.crim.ca (4.1/SMI-4.1)
	id AA07929; Wed, 10 Jun 92 22:39:44 EDT
Received: by ireq-robot.hydro.qc.ca (4.1/IRBT-2.4)
	id AA05371; Wed, 10 Jun 92 22:41:39 EDT
Date: Wed, 10 Jun 92 22:41:39 EDT
From: Martin Boyer <gamin@ireq-robot.hydro.qc.ca>
Message-Id: <9206110241.AA05371@ireq-robot.hydro.qc.ca>
To: help-lucid-emacs@lucid.com
Subject: Re: vm
References: <9206101852.AA13759@alder.advtech.uswest.com>

>>>>> Chris McClenaghan writes:
>In vm-5.32.L I get the following error if my INBOX is empty
>
>Wrong type argument: arrayp, nil
>
>If the folder (INBOX, or visited folder) has mail there is no
>error. 

Standard vm 5.32 does that too.  I notified the author a while ago.

--
Martin Boyer                            mboyer@ireq-robot.hydro.qc.ca
Institut de recherche d'Hydro-Quebec    mboyer@ireq-robot.uucp
Varennes, QC, Canada   J3X 1S1
+1 514 652-8412

From help-lucid-emacs-request@heavens-gate.lucid.com  Thu Jun 11 01:42:34 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA24080; Thu, 11 Jun 92 01:42:34 PDT
Received: by heavens-gate.lucid.com id AA23224g; Thu, 11 Jun 92 01:15:34 PDT
Received: from bernina.ethz.ch by heavens-gate.lucid.com id AA23220g; Thu, 11 Jun 92 01:15:25 PDT
Received: from bozo by bernina.ethz.ch with SMTP inbound id <395-0@bernina.ethz.ch>; Thu, 11 Jun 1992 10:23:31 +0200
Received: by vision.ethz.ch; Thu, 11 Jun 92 10:23:38 +0200
From: mpeter@vision.ethz.ch (Martin Peter)
Date: Thu, 11 Jun 92 10:23:38 +0200
Message-Id: <9206110823.AA16699@vision.ethz.ch>
To: help-lucid-emacs@lucid.com
Subject: compile problems

Greatings,
seems that I have an elementary problem in compiling lemacs19.1 on
sparc/sunos 4.1.1 with gcc.

I get: 

krishna[local]176: cd ../src
krishna[local]177: make xmakefile
rm -f xmakefile
cp ymakefile junk.c
cc -E junk.c | sed -e 's/^#.*//' -e 's/^[ \f\t][ \f\t]*$//' -e 's/^ /   /' | \
sed -n -e '/^..*$/p' > xmakefile
rm -f junk.c
krishna[local]178: make xemacs
make  -f xmakefile  xemacs
gcc -g     -Demacs  -I./lwlib  -c  crt0.c
 .......
 ........

rm -f lwlib-Xlw.o
gcc -c -O   -I/usr/include       lwlib-Xlw.c
lwlib-Xlw.c: In function `xlw_create_menubar':
lwlib-Xlw.c:68: warning: passing arg 3 of `XtAddCallback' from incompatible pointer type
lwlib-Xlw.c:69: warning: passing arg 3 of `XtAddCallback' from incompatible pointer type
lwlib-Xlw.c: In function `xlw_create_popup_menu':
lwlib-Xlw.c:87: warning: passing arg 3 of `XtAddCallback' from incompatible pointer type
rm -f xlwmenu.o
gcc -c -O   -I/usr/include       xlwmenu.c
rm -f lwlib-utils.o
gcc -c -O   -I/usr/include       lwlib-utils.c
rm -f liblw.a
ar clq liblw.a  lwlib.o lwlib-Xlw.o xlwmenu.o lwlib-utils.o 
ranlib liblw.a
ld   -e __start -Bstatic    -L. -L./lwlib -o temacs crt0.o dispnew.o screen.o scroll.o xdisp.o window.o  events.o event-alloc.o event-stream.o  term.o cm.o xterm.o xfns.o xselect.o xutils.o event-Xt.o menubar.o play.o libsst.o  emacs.o keyboard.o macros.o keymap.o sysdep.o  buffer.o filelock.o insdel.o marker.o  minibuf.o fileio.o dired.o filemode.o  cmds.o casetab.o casefiddle.o indent.o search.o regex.o undo.o  alloc.o data.o doc.o editfns.o callint.o  eval.o floatfns.o fns.o print.o lread.o  abbrev.o syntax.o unexec.o mocklisp.o bytecode.o  process.o callproc.o environ.o  doprnt.o extents.o faces.o elhash.o hash.o tparam.o lastfile.o gmalloc.o vm-limit.o ScreenWidget.o ColumnWidget.o EmacsShell.o sunOS-fix.o  -L/usr/demo/SOUND -laudio    -llw  -lXaw -lXext -lXt -lXmu -lX11   -ltermcap  -lg  -lm -lc
Undefined
___main
*** Error code 2
make: Fatal error: Command failed for target `temacs'
Current working directory /usr/krishna/biwibig/morelocal/lemacs-19.1/src
*** Error code 1
make: Fatal error: Command failed for target `doxemacs'


What am I doing wrong ??

Thanks Martin

------------------------------------------------------------
Martin Peter                   e-mail: mpeter@vision.ethz.ch 
ETH Zuerich                    tel:    41 1 256 5286
Computer Vision Group          fax:    41 1 261 3492
IKT/BIWI Gloriastrasse 35
8092 Zurich/ Switzerland

From help-lucid-emacs-request@heavens-gate.lucid.com  Thu Jun 11 07:19:39 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA24221; Thu, 11 Jun 92 07:19:39 PDT
Received: by heavens-gate.lucid.com id AA23713g; Thu, 11 Jun 92 06:48:21 PDT
Received: from Sun.COM by heavens-gate.lucid.com id AA23709g; Thu, 11 Jun 92 06:48:15 PDT
Received: from snail.Sun.COM (snail.Corp.Sun.COM) by Sun.COM (4.1/SMI-4.1)
	id AA25457; Thu, 11 Jun 92 06:56:26 PDT
Received: from East.Sun.COM by snail.Sun.COM (4.1/SMI-4.1)
	id AA08200; Thu, 11 Jun 92 06:56:24 PDT
Received: from sundeck.East.Sun.COM by East.Sun.COM (4.1/SMI-4.1)
	id AA18110; Thu, 11 Jun 92 09:56:23 EDT
Received: by sundeck.East.Sun.COM (4.1/SMI-4.1)
	id AA07230; Thu, 11 Jun 92 09:56:21 EDT
Date: Thu, 11 Jun 92 09:56:21 EDT
From: jdesai@sundeck.East.Sun.COM (Jatin Desai -- Contractor)
Message-Id: <9206111356.AA07230@sundeck.East.Sun.COM>
To: help-lucid-emacs@lucid.com
Subject: Re: compile problems


Has any one built this with OLIT menubar version? I tried 
and got an undefined symbol resource_string (from lwlib-Xol.c) and an unknown
include file xt_extension.h in the same C file. I modified code from 
the routine resource_motif_string and put it in as resource_string and that
seems to work ok according to my debug messages. I also commented out include
"xt_extensions.h" line and found no apparent compilation problems.

However, when I run the resulting xemacs, it just dies with 

Fatal error (11).Segmentation fault

I can't debug with dbx because dbx falls over its face when loading xemacs and
I don't have gdb. When I built it with the built in Motif like menus, it works
just fine.

Thanks for the help,

Jatin Desai


From help-lucid-emacs-request@heavens-gate.lucid.com  Thu Jun 11 15:08:35 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA24832; Thu, 11 Jun 92 15:08:35 PDT
Received: by heavens-gate.lucid.com id AA25401g; Thu, 11 Jun 92 14:33:08 PDT
Received: from relay2.UU.NET by heavens-gate.lucid.com id AA25397g; Thu, 11 Jun 92 14:32:59 PDT
Received: from uunet.uu.net (via LOCALHOST.UU.NET) by relay2.UU.NET with SMTP 
	(5.61/UUNET-internet-primary) id AA25261; Thu, 11 Jun 92 17:41:18 -0400
Received: from meaddata.UUCP by uunet.uu.net with UUCP/RMAIL
	(queueing-rmail) id 174028.11715; Thu, 11 Jun 1992 17:40:28 EDT
Received: from pepperoni.meaddata.com by meaddata.com (4.1/SMI-4.1)
	id AA28842; Thu, 11 Jun 92 17:26:00 EDT
Received: by pepperoni.meaddata.com (4.1/SMI-4.1)
	id AA02860; Thu, 11 Jun 92 17:26:00 EDT
Date: Thu, 11 Jun 92 17:26:00 EDT
From: marko@meaddata.com (Mark Osbourne)
Message-Id: <9206112126.AA02860@pepperoni.meaddata.com>
To: help-lucid-emacs@lucid.com
Subject: Help VM find current-timer

vm-flush-timer-function expects for a variable named current-timer to
exist.  The doc-string for the function start-timer even says that a
timer function can access the current timer through the current-timer
variable.

However, I (and the VM elisp code) cannot find a definition of
current-timer.  Can anyone shed some light on this mystery?

--
Mark Osbourne
marko@meaddata.com

--
--- Mark Osbourne (marko@meaddata.com) (...!uunet!meaddata!marko)
--

From help-lucid-emacs-request@heavens-gate.lucid.com  Thu Jun 11 15:31:36 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA24854; Thu, 11 Jun 92 15:31:36 PDT
Received: by heavens-gate.lucid.com id AA25493g; Thu, 11 Jun 92 15:00:22 PDT
Received: from uswat.advtech.uswest.com by heavens-gate.lucid.com id AA25489g; Thu, 11 Jun 92 15:00:15 PDT
Received: from alder.advtech.uswest.com by uswat.advtech.uswest.com with SMTP id AA05118
  (5.65c/IDA-1.4.4 for <help-lucid-emacs@lucid.com>); Thu, 11 Jun 1992 16:08:33 -0600
Received: by alder.advtech.uswest.com (advtech.uswest.com)
   id AA14908 (4.1/at-generic.11Feb92); Thu, 11 Jun 92 16:08:33 MDT
Date: Thu, 11 Jun 92 16:08:33 MDT
From: Chris McClenaghan <mcclen@advtech.uswest.com>
Message-Id: <9206112208.AA14908@alder.advtech.uswest.com>
To: Lucid Emacs 19 Help <help-lucid-emacs@lucid.com>
Subject: X resources and sounds

I'm using Sun OS 4.1.2 Sparc IPC X11R4 Motif 1.0(?)

Two quick questions -

What are acceptable resource specifications for lemacs?
Everything I've seen posted doesn't seem to work.

Also, what conditional expression is appropriate to detect that
I'm running Lucid emacs on a Sparc console to conditionally set
sound-alist? 

Chris McClenaghan    mcclen@uswest.com


From help-lucid-emacs-request@heavens-gate.lucid.com  Thu Jun 11 15:49:14 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA24883; Thu, 11 Jun 92 15:49:14 PDT
Received: by heavens-gate.lucid.com id AA25582g; Thu, 11 Jun 92 15:22:29 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA25578g; Thu, 11 Jun 92 15:22:23 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA29904; Thu, 11 Jun 92 15:30:48 PDT
Date: Thu, 11 Jun 92 15:30:48 PDT
Message-Id: <9206112230.AA29904@thalidomide.lucid>
X-Windows: Live the nightmare.
From: Jamie Zawinski <jwz@heavens-gate.lucid.com>
Sender: jwz@thalidomide
To: marko@meaddata.com (Mark Osbourne)
Cc: help-lucid-emacs@lucid.com
Subject: Re: Help VM find current-timer
In-Reply-To: Mark Osbourne's message of Thu 11-Jun-92 17:26:00 EDT <9206112126.AA02860@pepperoni.meaddata.com>
References: <9206112126.AA02860@pepperoni.meaddata.com>

In message <9206112126.AA02860@pepperoni.meaddata.com> Mark Osbourne wrote:
>
> vm-flush-timer-function expects for a variable named current-timer to
> exist.  The doc-string for the function start-timer even says that a
> timer function can access the current timer through the current-timer
> variable.

My mistake.  Replace the definition of timer-callback in the timer.el that
comes with lemacs with this:

(defun timer-callback (current-timer)
  (funcall (timer-function current-timer)))

	-- Jamie

From help-lucid-emacs-request@heavens-gate.lucid.com  Thu Jun 11 15:54:45 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA24890; Thu, 11 Jun 92 15:54:45 PDT
Received: by heavens-gate.lucid.com id AA25600g; Thu, 11 Jun 92 15:25:43 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA25596g; Thu, 11 Jun 92 15:25:26 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA29912; Thu, 11 Jun 92 15:33:51 PDT
Date: Thu, 11 Jun 92 15:33:51 PDT
Message-Id: <9206112233.AA29912@thalidomide.lucid>
X-Windows: It could be worse, but it'll take time.
From: Jamie Zawinski <jwz@heavens-gate.lucid.com>
Sender: jwz@thalidomide
To: Chris McClenaghan <mcclen@advtech.uswest.com>
Cc: Lucid Emacs 19 Help <help-lucid-emacs@lucid.com>
Subject: Re: X resources and sounds
In-Reply-To: Chris McClenaghan's message of Thu 11-Jun-92 16:08:33 MDT <9206112208.AA14908@alder.advtech.uswest.com>
References: <9206112208.AA14908@alder.advtech.uswest.com>

In message <9206112208.AA14908@alder.advtech.uswest.com> Chris McClenaghan wrote:
>
> What are acceptable resource specifications for lemacs?
> Everything I've seen posted doesn't seem to work.

See below; that text is in the NEWS file now.

> Also, what conditional expression is appropriate to detect that
> I'm running Lucid emacs on a Sparc console to conditionally set
> sound-alist? 

(string-match emacs-version "Lucid").

Detecting whether you're on console is trickier; you could look at the value
of (getenv "DISPLAY") but that won't work if you start emacs with -display.
It doesn't much matter, though, because the sound-alist will be ignored if
you're not on a sparc console.

	-- Jamie

X Resources
===========

The Emacs resources are generally per-screen.  Each Emacs screen can have its
own name, or the same name as another, depending on the name passed to the
x-create-screen function.  

You can specify resources for all screens with the syntax

	Emacs*parameter: value
or
	Emacs.EmacsScreen*parameter: value

You can specify resources for a particular screen with the syntax

	Emacs.SCREEN-NAME*parameter: value


To make the default size of all emacs be 80 columns by 55 lines, do this:

	Emacs*EmacsScreen.geometry: 80x55

As a special case, this geometry specification also works:

	Emacs.geometry: 80x55

since that is the syntax used with most other applications (since most other
applications, unlike emacs, have only one top-level window.)  In general,
however, the top-level shell doesn't have any interesting resources on it,
and you should set the resources on the screens instead.

To set the geometry of a particular screen named, "foo", do this:

	Emacs*foo.geometry: 80x55

In particular, do --NOT-- use this syntax:

	Emacs*geometry: 80x55

One should never use "*geometry" with any X application.  It does not say
"make the geometry of emacs be 80 columns by 55 lines."  It really says,
"make emacs and all subwindows thereof be 80x35 in whatever units they care
to measure in."  In particular, that is both telling the emacs text pane
to be 80x55 in characters, and telling the menubar pane to be 80x55 pixels,
which is surely not what you want.

The "-geometry" command-line argument sets the geometry only of the initial
screen created by emacs.


Emacs screens accept the following resources:

  iconic (class Iconic): boolean

	Whether the initial window should appear in the iconified state.

  internalBorderWidth (class InternalBorderWidth): int

	How many blank pixels to leave between the text and the edge of the
	window.

  interline (class Interline): int

	How many pixels to leave between each line.

  cursorColor (class CursorColor): color

	The color of the text cursor.

  textPointer (class Cursor): cursor-name

	The cursor to use when the mouse is over text.  This resource is
	used to initialize the variable `x-pointer-shape'.

  spacePointer (class Cursor): cursor-name

	The cursor to use when the mouse is over a blank space in a buffer
	(that is, after the end of a line or after the end-of-file).  This
	resource is used to initialize the variable `x-nontext-pointer-shape'.

  modePointer (class Cursor): cursor-name

	The cursor to use when the mouse is over a modeline.  This resource
	is used to initialize the variable `x-mode-pointer-shape'.

  gcPointer (class Cursor): cursor-name

	The cursor to display when a garbage-collection is in progress.  This
	resource is used to initialize the variable `x-gc-pointer-shape'.

  pointerColor (class Foreground): color-name

	The foreground and background colors of the mouse cursors.  
	These resources are used to initialize the variables 
	`x-pointer-foreground-color' and `x-pointer-background-color'.


The attributes of faces are also per-screen.  They may be specified as

	Emacs*FACE_NAME.parameter: value
or
	Emacs.SCREEN_NAME.FACE_NAME.parameter: value

Faces accept the following resources:

  attributeFont (class AttributeFont): font-name

	The font of this face.

  attributeForeground (class AttributeForeground): color-name
  attributeBackground (class AttributeBackground): color-name

	The foreground and background colors of this face.

  attributeBackgroundPixmap (class attributeBackgroundPixmap): file-name

	The name of an XBM file, to use as a background stipple.

  attributeUnderline (class AttributeUnderline): boolean

	Whether text in this face should be underlined.

All text is displayed in some face, defaulting to the face named "default".
So to set the font of normal text, use "Emacs*default.attributeFont".
To set it in the screen named "foo", use "Emacs*foo*default.attributeFont".

These are the names of the predefined faces:

	default			Everything inherits from this.

	bold			If this is not specified in the resource
				database, Emacs tries to find a "bold" 
				version of the font of the "default" face.

	italic			ditto.

	bold-italic		ditto.

	primary-selection	This is the face that mouse-selections are
				displayed in.

	isearch			This is the face that the matched text being
				searched for is displayed in.

	info-node		This is the face of info menu items.  If
				unspecified, it is copied from "bold-italic".

	info-xref		This is the face of info cross-references.
				If unspecified, it is copied from "bold".


From help-lucid-emacs-request@heavens-gate.lucid.com  Thu Jun 11 16:46:26 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA24972; Thu, 11 Jun 92 16:46:26 PDT
Received: by heavens-gate.lucid.com id AA25751g; Thu, 11 Jun 92 16:16:09 PDT
Received: from uswat.advtech.uswest.com by heavens-gate.lucid.com id AA25746g; Thu, 11 Jun 92 16:15:58 PDT
Received: from alder.advtech.uswest.com by uswat.advtech.uswest.com with SMTP id AA05887
  (5.65c/IDA-1.4.4); Thu, 11 Jun 1992 17:24:17 -0600
Received: by alder.advtech.uswest.com (advtech.uswest.com)
   id AA15201 (4.1/at-generic.11Feb92); Thu, 11 Jun 92 17:24:16 MDT
Date: Thu, 11 Jun 92 17:24:16 MDT
From: Chris McClenaghan <mcclen@advtech.uswest.com>
Message-Id: <9206112324.AA15201@alder.advtech.uswest.com>
To: Jamie Zawinski <jwz@lucid.com>
Cc: Lucid Emacs 19 Help <help-lucid-emacs@lucid.com>
Subject: Re: X resources and sounds
References: <9206112208.AA14908@alder.advtech.uswest.com>
	<9206112233.AA29912@thalidomide.lucid>

The X resource information was of some help, using the binary
version from labrea, I can set the font through a resource spec,
but not background or foreground. Here's what I'm using. Maybe I
don't understand what the last two will do.

Emacs*default.attributeFont:	-adobe-courier-bold-r-normal--14-140-75-75-m-*-iso8859-1
Emacs*default.attributeForeground: MidnightBlue
Emacs*default.attributeBackground: LightBlue	

In the version that I built, none of these work. I used both
USE_LUCID and USE_MOTIF in building lwlib, if that matters. The
Imakefile says the combination is okay, but I recall one of your
repsonses to this list suggested that it not be done.

Chris McClenaghan    mcclen@uswest.com


From help-lucid-emacs-request@heavens-gate.lucid.com  Thu Jun 11 17:09:40 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA24993; Thu, 11 Jun 92 17:09:40 PDT
Received: by heavens-gate.lucid.com id AA25822g; Thu, 11 Jun 92 16:40:52 PDT
Received: from uswat.advtech.uswest.com by heavens-gate.lucid.com id AA25818g; Thu, 11 Jun 92 16:40:43 PDT
Received: from alder.advtech.uswest.com by uswat.advtech.uswest.com with SMTP id AA06057
  (5.65c/IDA-1.4.4 for <help-lucid-emacs@lucid.com>); Thu, 11 Jun 1992 17:49:01 -0600
Received: by alder.advtech.uswest.com (advtech.uswest.com)
   id AA15241 (4.1/at-generic.11Feb92); Thu, 11 Jun 92 17:49:01 MDT
Date: Thu, 11 Jun 92 17:49:01 MDT
From: Chris McClenaghan <mcclen@advtech.uswest.com>
Message-Id: <9206112349.AA15241@alder.advtech.uswest.com>
To: Lucid Emacs 19 Help <help-lucid-emacs@lucid.com>
Subject: command line switches

The command line switches -bg and -fg seem to only effect the
menubar's color, is that correct? How can I change the color of
the pane in which the text resides?

Chris McClenaghan    mcclen@uswest.com


From help-lucid-emacs-request@heavens-gate.lucid.com  Thu Jun 11 17:38:12 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA25014; Thu, 11 Jun 92 17:38:12 PDT
Received: by heavens-gate.lucid.com id AA25898g; Thu, 11 Jun 92 17:07:38 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA25894g; Thu, 11 Jun 92 17:07:31 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA00101; Thu, 11 Jun 92 17:15:56 PDT
Date: Thu, 11 Jun 92 17:15:56 PDT
Message-Id: <9206120015.AA00101@thalidomide.lucid>
X-Windows: Power tools for power fools.
From: Jamie Zawinski <jwz@heavens-gate.lucid.com>
Sender: jwz@thalidomide
To: Chris McClenaghan <mcclen@advtech.uswest.com>
Cc: Lucid Emacs 19 Help <help-lucid-emacs@lucid.com>
Subject: Re: X resources and sounds
In-Reply-To: Chris McClenaghan's message of Thu 11-Jun-92 17:24:16 MDT <9206112324.AA15201@alder.advtech.uswest.com>
References: <9206112208.AA14908@alder.advtech.uswest.com>
	<9206112233.AA29912@thalidomide.lucid>
	<9206112324.AA15201@alder.advtech.uswest.com>

In message <9206112324.AA15201@alder.advtech.uswest.com> Chris McClenaghan wrote:
>
> The X resource information was of some help, using the binary
> version from labrea, I can set the font through a resource spec,
> but not background or foreground. 

Perhaps you've got something in the app-defaults file that is more specific,
and overriding it?  Here are some of the resources I set:

Emacs*cursorColor:			Red3
Emacs*pointerColor:			Blue
Emacs*default.attributeForeground:	black
Emacs*AttributeBackground:		#e0e0d2
Emacs*modeline.attributeForeground:	white
Emacs*modeline.attributeBackground:	gray35

Try doing "setenv XAPPLRESDIR /tmp ; setenv XFILESEARCHPATH /tmp" and see
if that makes the problem go away.

> In the version that I built, none of these work. I used both
> USE_LUCID and USE_MOTIF in building lwlib, if that matters. The
> Imakefile says the combination is okay, but I recall one of your
> repsonses to this list suggested that it not be done.

I don't think it matters, but you currently don't gain anything by it.

> The command line switches -bg and -fg seem to only effect the
> menubar's color, is that correct? How can I change the color of
> the pane in which the text resides?

Arrgh, X resources are such a crock.  I can make -fg and -bg control
the default colors of the text (make them be the same as the resources
"*default.attributeForeground" and "*default.attributeBackground") but
then they won't control the colors of the menubar.

	-- Jamie

From help-lucid-emacs-request@heavens-gate.lucid.com  Thu Jun 11 18:14:43 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA25059; Thu, 11 Jun 92 18:14:43 PDT
Received: by heavens-gate.lucid.com id AA26014g; Thu, 11 Jun 92 17:43:25 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA26006g; Thu, 11 Jun 92 17:42:13 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA00179; Thu, 11 Jun 92 17:50:39 PDT
Date: Thu, 11 Jun 92 17:50:39 PDT
Message-Id: <9206120050.AA00179@thalidomide.lucid>
X-Windows: The problem for your problem.
From: Jamie Zawinski <jwz@heavens-gate.lucid.com>
Sender: jwz@thalidomide
To: bug-lucid-emacs@lucid.com, help-lucid-emacs@lucid.com
Reply-To: jwz@heavens-gate.lucid.com
Subject: another volunteer sought

David Zuhn has done most of the work needed to make Lucid GNU Emacs able to
be compiled with the GNU "configure" program, but now he's busy and won't
have time to finish it any time soon.  If you would like to help out with
this, please send me mail.  He thinks it's probably not that much work, and
it will earn you the beer/pop/beverage-of-choice if you live anywhere where
he or I'll will be going anytime soon.

Making lemacs able to be compiled with configure will make a huge number of
compilation/porting problems go away.  You will be the idol of millions if
you do this.  Fame, fortune, fans, gold records, your name in lights...

	-- Jamie

From help-lucid-emacs-request@heavens-gate.lucid.com  Thu Jun 11 19:15:20 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA25095; Thu, 11 Jun 92 19:15:20 PDT
Received: by heavens-gate.lucid.com id AA26196g; Thu, 11 Jun 92 18:48:57 PDT
Received: from CAMIS.Stanford.EDU by heavens-gate.lucid.com id AA26192g; Thu, 11 Jun 92 18:48:50 PDT
Received: from mcs-ipc-3.Stanford.EDU by CAMIS.Stanford.EDU (4.1/inc-1.0)
	id AA14649; Thu, 11 Jun 92 18:57:06 PDT
Date: Thu, 11 Jun 1992 18:50:48 -0700 (PDT)
From: Kevin Brock <Brock@sumex-aim.stanford.edu>
Sender: Brock@sumex-aim.stanford.edu
Reply-To: Brock@sumex-aim.stanford.edu
Subject: X properties?
To: help-lucid-emacs@lucid.com
Message-Id: <Ximap.708314226.4084.brock@MCS-IPC-3>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

I noticed that on the wish list was an Epoch/Lucid Emacs
compatibility package.  When I was looking through NEWS
I didn't see analogs for some of the low level Epoch functions
for dealing with X.  Most notably the epoch::get-property
and epoch::set-property functions.  Is there some Lucid elisp
equivalent?  This probably doesn't come into play much unless
you're using GWM, but for true Epoch/Lemacs code translation
you would need *something* of the sort...

Kevin Brock
brock@sumex-aim.stanford.edu



From help-lucid-emacs-request@heavens-gate.lucid.com  Thu Jun 11 19:24:06 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA25108; Thu, 11 Jun 92 19:24:06 PDT
Received: by heavens-gate.lucid.com id AA26206g; Thu, 11 Jun 92 18:52:56 PDT
Received: from CAMIS.Stanford.EDU by heavens-gate.lucid.com id AA26202g; Thu, 11 Jun 92 18:52:50 PDT
Received: from mcs-ipc-3.Stanford.EDU by CAMIS.Stanford.EDU (4.1/inc-1.0)
	id AA14677; Thu, 11 Jun 92 19:01:08 PDT
Date: Thu, 11 Jun 1992 19:00:05 -0700 (PDT)
From: Kevin Brock <Brock@sumex-aim.stanford.edu>
Reply-To: Brock@sumex-aim.stanford.edu
Subject: Sorry (was: X properties?)
To: help-lucid-emacs@lucid.com
In-Reply-To: Kevin Brock's message of Thu, 11 Jun 1992 18:50:48 -0700: <Ximap.708314226.4084.brock@MCS-IPC-3>
Message-Id: <Ximap.708314468.2781.brock@MCS-IPC-3>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

>for dealing with X.  Most notably the epoch::get-property
>and epoch::set-property functions.  Is there some Lucid elisp

I found the x-set/get-selection-internal functions.  Sorry.

Kevin

From help-lucid-emacs-request@heavens-gate.lucid.com  Thu Jun 11 19:29:14 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA25112; Thu, 11 Jun 92 19:29:14 PDT
Received: by heavens-gate.lucid.com id AA26235g; Thu, 11 Jun 92 19:01:13 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA26231g; Thu, 11 Jun 92 19:01:03 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA00447; Thu, 11 Jun 92 19:09:30 PDT
Date: Thu, 11 Jun 92 19:09:30 PDT
Message-Id: <9206120209.AA00447@thalidomide.lucid>
X-Windows: Live the nightmare.
From: Jamie Zawinski <jwz@heavens-gate.lucid.com>
Sender: jwz@thalidomide
To: Brock@sumex-aim.stanford.edu
Cc: help-lucid-emacs@lucid.com
Subject: Re: X properties?
In-Reply-To: Kevin Brock's message of Thu 11-Jun-92 18:50:48 -0700 <Ximap.708314226.4084.brock@MCS-IPC-3>
References: <Ximap.708314226.4084.brock@MCS-IPC-3>

In message <Ximap.708314226.4084.brock@MCS-IPC-3> Kevin Brock wrote:
>
> I noticed that on the wish list was an Epoch/Lucid Emacs compatibility
> package.  When I was looking through NEWS I didn't see analogs for some of
> the low level Epoch functions for dealing with X.  Most notably the
> epoch::get-property and epoch::set-property functions.  Is there some Lucid
> elisp equivalent?  This probably doesn't come into play much unless you're
> using GWM, but for true Epoch/Lemacs code translation you would need
> *something* of the sort...

No, there is no equivalent of get-property and set-property, but it wouldn't
be too hard to modify some of the code in xselect.c to be user-accessible.

> I found the x-set/get-selection-internal functions.  Sorry.

Selections aren't the same as properties.  I'm pretty sure that Epoch's 
propery-munging code does more than you can do with the selection code 
(though I also have the impression that our selection code does more than 
Epoch does, but not more than it -can-.)

However, there is a pretty substantial difference in the design philosophy
of the Epoch and Lucid Emacs interfaces.  Epoch took the approach of being
a lot like WINTERP: a lisp interface onto the X library.  X is -very- close
to the surface in Epoch.  There's nothing fundamentally wrong with this, but
one of our original goals was to have the X specific parts be, for the the
most part, invisible to the user.  We would like the user to be able to write
code that will run unaltered under X and NeXTStep, for example.  Also, we want
everything to work on dumb ttys, something that's very hard to do if you get
into bed with X.

I think it would be fine to provide in Lucid Emacs whatever X substrate an
Epoch compatibility package needs, but I think that there should be another,
interface which is not X specific.  Even better would be if Epoch itself
adopted the same interface, so that the X-specific code could be phased out,
and arbitrarily hairy interfaces could work on ttys and other window systems,
once (if?) the ports get done.

	-- Jamie

From help-lucid-emacs-request@heavens-gate.lucid.com  Fri Jun 12 00:54:42 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA25528; Fri, 12 Jun 92 00:54:42 PDT
Received: by heavens-gate.lucid.com id AA26831g; Fri, 12 Jun 92 00:18:48 PDT
Received: from bernina.ethz.ch by heavens-gate.lucid.com id AA26827g; Fri, 12 Jun 92 00:18:39 PDT
Received: from bozo by bernina.ethz.ch with SMTP inbound id <28209-0@bernina.ethz.ch>; Fri, 12 Jun 1992 09:26:46 +0200
Received: by vision.ethz.ch; Fri, 12 Jun 92 09:26:55 +0200
From: mpeter@vision.ethz.ch (Martin Peter)
Date: Fri, 12 Jun 92 09:26:55 +0200
Message-Id: <9206120726.AA23747@vision.ethz.ch>
To: help-lucid-emacs@lucid.com
Subject: VERY slow file load

I noticed that bringing a new (small) file into a buffer (c-x c-f) is VERY
slow, may be around 20 seconds on a SS2 with a 4/490 server. Nothing
seems to happen during this time. lemacs in in sleep state and the
file server is idle. With emacs 18.57 file access happens with almost
no delay. Any ideas ?

Martin

------------------------------------------------------------
Martin Peter                   e-mail: mpeter@vision.ethz.ch 
ETH Zuerich                    tel:    41 1 256 5286
Computer Vision Group          fax:    41 1 261 3492
IKT/BIWI Gloriastrasse 35
8092 Zurich/ Switzerland

From help-lucid-emacs-request@heavens-gate.lucid.com  Fri Jun 12 01:25:26 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA25543; Fri, 12 Jun 92 01:25:26 PDT
Received: by heavens-gate.lucid.com id AA26860g; Fri, 12 Jun 92 00:49:39 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA26856g; Fri, 12 Jun 92 00:49:32 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA01342; Fri, 12 Jun 92 00:58:02 PDT
Date: Fri, 12 Jun 92 00:58:02 PDT
Message-Id: <9206120758.AA01342@thalidomide.lucid>
X-Windows: Dissatisfaction guaranteed.
From: Jamie Zawinski <jwz@heavens-gate.lucid.com>
Sender: jwz@thalidomide
To: mpeter%vision.ethz.ch@lucid.com (Martin Peter)
Cc: help-lucid-emacs@lucid.com
Subject: Re: VERY slow file load
In-Reply-To: Martin Peter's message of Fri 12-Jun-92 09:26:55 +0200 <9206120726.AA23747@vision.ethz.ch>
References: <9206120726.AA23747@vision.ethz.ch>

In message <9206120726.AA23747@vision.ethz.ch> Martin Peter wrote:
>
> I noticed that bringing a new (small) file into a buffer (c-x c-f) is VERY
> slow, may be around 20 seconds on a SS2 with a 4/490 server. Nothing
> seems to happen during this time. lemacs in in sleep state and the
> file server is idle. With emacs 18.57 file access happens with almost
> no delay. Any ideas ?

Perhaps the call to realpath() is slow?  See if it gets faster if you do
(defun compute-buffer-file-truename ()).

You may also have to set find-file-compare-truenames to nil.

	-- Jamie

From help-lucid-emacs-request@heavens-gate.lucid.com  Fri Jun 12 04:30:20 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA25605; Fri, 12 Jun 92 04:30:20 PDT
Received: by heavens-gate.lucid.com id AA27097g; Fri, 12 Jun 92 03:52:56 PDT
Received: from mailgate (mailgate.ericsson.se) by heavens-gate.lucid.com id AA27093g; Fri, 12 Jun 92 03:52:49 PDT
Received: from edski.ericsson.se by mailgate (4.1/SMI-4.1-MAILGATE1.10)
	id AA20375; Fri, 12 Jun 92 13:01:03 +0200
Received: from tyr.ericsson.se by edski.ericsson.se (4.1/SMI-4.1)
	id AA06705; Fri, 12 Jun 92 13:01:06 +0200
Date: Fri, 12 Jun 92 13:01:06 +0200
From: edsuwe@edski.ericsson.se (Ulf Westermark  Tph +46 87263406)
Message-Id: <9206121101.AA06705@edski.ericsson.se>
To: help-lucid-emacs@lucid.com
Subject: 8-bit charachters & SUN ANSI C


Two hopefully easy questions about the interesting software Lucid GNU Emacs:

1) Is input and displaying of 8-bit charachters supported ?

2) Can you compile Lucid Emacs with SUN:s ANSI C-compiler ?

3) Can you easily cut-paste between Lucid Emacs and Open Windows-programs ?

Regards
Ulf Westermark


From help-lucid-emacs-request@heavens-gate.lucid.com  Fri Jun 12 07:49:19 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA25656; Fri, 12 Jun 92 07:49:19 PDT
Received: by heavens-gate.lucid.com id AA27329g; Fri, 12 Jun 92 07:07:44 PDT
Received: from moebius.loria.fr by heavens-gate.lucid.com id AA27325g; Fri, 12 Jun 92 07:07:34 PDT
Received: by moebius.loria.fr id AA10625
  (5.65c+/IDA-1.4.3 for help-lucid-emacs@lucid.com); Fri, 12 Jun 92 16:13:41 +0200
Date: Fri, 12 Jun 92 16:13:41 +0200
From: Guido Bosch <Guido.Bosch@loria.fr>
Message-Id: <9206121413.AA10625@moebius.loria.fr>
To: help-lucid-emacs@lucid.com
Subject: popup menu for senmail.el
Reply-To: Guido BOSCH <bosch@loria.fr>

Here comes  a patch for sendmail.el to add a popup menu to the mail
mode. There is, however, a problem with it: 

The commands that switches to a header field (mail-to, mail-subject,
mail-cc and so on) produce an error if the cursor is already in the
header aerea. More precisely, the error is due to a call of the
subroutine `expand-abbrev'. It does not occur if the corresponding
functions are called from the keyboard instead from the menu.

Any idea what happens?

			Guido

-------------------------- sendmail-patch2 --------------------------
*** sendmail.el~	Thu Jun 11 11:39:53 1992
--- sendmail.el	Fri Jun 12 16:11:44 1992
***************
*** 127,133 ****
  C-c C-y  mail-yank-original (insert current message, in Rmail).
  C-c C-w  mail-signature (insert signature file).
  C-c C-q  mail-fill-yanked-message (fill what was yanked).
! C-c C-v  mail-sent-via (add a sent-via field for each To or CC)."
    (interactive)
    (kill-all-local-variables)
    (make-local-variable 'mail-reply-buffer)
--- 127,135 ----
  C-c C-y  mail-yank-original (insert current message, in Rmail).
  C-c C-w  mail-signature (insert signature file).
  C-c C-q  mail-fill-yanked-message (fill what was yanked).
! C-c C-v  mail-sent-via (add a sent-via field for each To or CC)
! 
! Button 3 Popup menu with the above commands."
    (interactive)
    (kill-all-local-variables)
    (make-local-variable 'mail-reply-buffer)
***************
*** 165,171 ****
    (define-key mail-mode-map "\C-c\C-q" 'mail-fill-yanked-message)
    (define-key mail-mode-map "\C-c\C-v" 'mail-sent-via)
    (define-key mail-mode-map "\C-c\C-c" 'mail-send-and-exit)
!   (define-key mail-mode-map "\C-c\C-s" 'mail-send))
  
  (defun mail-send-and-exit (arg)
    "Send message like mail-send, then, if no errors, exit from mail buffer.
--- 167,211 ----
    (define-key mail-mode-map "\C-c\C-q" 'mail-fill-yanked-message)
    (define-key mail-mode-map "\C-c\C-v" 'mail-sent-via)
    (define-key mail-mode-map "\C-c\C-c" 'mail-send-and-exit)
!   (define-key mail-mode-map "\C-c\C-s" 'mail-send)
!   (define-key mail-mode-map '(button3) 'mail-mode-menu))
! 
! ;;; mail-mode popup menu
! 
! (defvar mail-mode-menu nil
!   "Popup menu called by the function `mail-mode-menu'.")
! 
! (setq mail-mode-menu
!   '(nil
!     "Sending Mail:"
!     "----"
!     ["Send and Exit" mail-send-and-exit t]
!     ["Send Mail" mail-send t ]
!     ["Sent Via" mail-sent-via t]
!     "----"
!     "Go to Field:"
!     "----"
!     ["To:" mail-to t]
!     ["Subject:" mail-subject t]
!     ["CC:" mail-cc t]
!     ["BCC:" mail-bcc t]
!     ["Text" mail-text t]
!     "----"
!     "Miscellaneous Commands:"
!     "----"
!     ["Yank Original" mail-yank-original t]
!     ["Fill Yanked Message" mail-fill-yanked-message t]
!     ["Insert Signature" mail-signature t]
!     "----"
!     ["Abort" kill-buffer t]
!     ))
! 
! (defun mail-mode-menu (event)
!   "Pop up the mail mode menu, defined by the variable `mail-mode-menu'."
!   (interactive "e")
!   (select-window (event-window event))
!   (popup-menu mail-mode-menu))
! 
  
  (defun mail-send-and-exit (arg)
    "Send message like mail-send, then, if no errors, exit from mail buffer.

From help-lucid-emacs-request@heavens-gate.lucid.com  Fri Jun 12 09:03:40 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA25717; Fri, 12 Jun 92 09:03:40 PDT
Received: by heavens-gate.lucid.com id AA27509g; Fri, 12 Jun 92 08:26:12 PDT
Received: from portal.bcm.tmc.edu by heavens-gate.lucid.com id AA27505g; Fri, 12 Jun 92 08:26:04 PDT
Received: from shell.shell.com by shell.com SHELL-X1.3 id AA17100; Fri, 12 Jun 92 08:51:02 -0500
Received: from colorado by shell.shell.com SHELL-I1.3 id AA17091; Fri, 12 Jun 92 08:50:06 -0500
Received: by colorado.agr.shell.com (4.1/AGR-2.0)
	id AA24732; Fri, 12 Jun 92 08:56:25 CDT
Date: Fri, 12 Jun 92 08:56:25 CDT
From: jody@shell.com
Message-Id: <9206121356.AA24732@colorado.agr.shell.com>
To: help-lucid-emacs@lucid.com
Subject: Ephoch functionality
Sender: jody@shell.com
Source-Info:  From (or Sender) name not authenticated.

The largest portion of functionality that I miss from epoch is the
hilight package.  Is anyone working on one for lucid or do I need to
get started?

Jody Winston		jody@shell.com
..!{sun,psuvax1,bcm,rice,decwrl,cs.utexas.edu}!shell!jody
Consultant to:
Shell Development Company, Bellaire Research Center
P.O. Box 481, Room 4205, Houston, TX 77001	(Voice: 713 245-7574)

From help-lucid-emacs-request@heavens-gate.lucid.com  Fri Jun 12 09:45:46 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA25800; Fri, 12 Jun 92 09:45:46 PDT
Received: by heavens-gate.lucid.com id AA27620g; Fri, 12 Jun 92 09:06:30 PDT
Received: from CAMIS.Stanford.EDU by heavens-gate.lucid.com id AA27616g; Fri, 12 Jun 92 09:06:23 PDT
Received: from mcs-ipc-3.Stanford.EDU by CAMIS.Stanford.EDU (4.1/inc-1.0)
	id AA13929; Fri, 12 Jun 92 09:14:42 PDT
Date: Fri, 12 Jun 1992 09:02:13 -0700 (PDT)
From: Kevin Brock <Brock@sumex-aim.stanford.edu>
Reply-To: Brock@sumex-aim.stanford.edu
Subject: Re: X properties?
To: Jamie Zawinski <jwz@lucid.com>
Cc: help-lucid-emacs@lucid.com
In-Reply-To: Jamie Zawinski's message of Thu, 11 Jun 92 19:09:30 PDT: <9206120209.AA00447@thalidomide.lucid>
Message-Id: <Ximap.708365683.899.brock@MCS-IPC-3>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

>Selections aren't the same as properties.  I'm pretty sure that Epoch's 
>propery-munging code does more than you can do with the selection code 
>(though I also have the impression that our selection code does more than 
>Epoch does, but not more than it -can-.)

After looking at the code, I agree with you.  Making the intern/unintern
atom stuff available would probably be pretty easy.  How hard do you 
think it would be to work up some equivalent of the property-change 
events?

>However, there is a pretty substantial difference in the design philosophy
>of the Epoch and Lucid Emacs interfaces.  Epoch took the approach of being
>a lot like WINTERP: a lisp interface onto the X library.  X is -very- close
>to the surface in Epoch.  There's nothing fundamentally wrong with this, but
>one of our original goals was to have the X specific parts be, for the the
>most part, invisible to the user.  We would like the user to be able to
>write code that will run unaltered under X and NeXTStep, for example.
>Also, we want everything to work on dumb ttys, something that's very hard
>to do if you get into bed with X.

Portability is nice, but the other side of window system independence 
in the LCD phenomenon.  If you go for complete portability, you're 
going to be missing some (probably some of the nicer) features of the 
window system.  It might be better to have a core which is portable,
and an additional set of built in features which are window system 
dependent.

Code built for one window system would then not be *completely*
portable, but the window system dependencies would be well defined
and fairly easy to hunt down...

NeXTStep would be interesting.  I know the Epoch group announced that
they were going to be porting Epoch to native NeXTStep (but that we
shouldn't hold our breath waiting for the release).  

Kevin




From help-lucid-emacs-request@heavens-gate.lucid.com  Fri Jun 12 11:14:40 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA25918; Fri, 12 Jun 92 11:14:40 PDT
Received: by heavens-gate.lucid.com id AA27936g; Fri, 12 Jun 92 10:33:18 PDT
Received: from iscp.bellcore.com by heavens-gate.lucid.com id AA27930g; Fri, 12 Jun 92 10:33:09 PDT
Received: from italia.iscp.bellcore.com by iscp.bellcore.com (AIX 3.1/UCB 5.61/4.03)
          id AA57371; Fri, 12 Jun 92 13:39:42 -0400
Received: by italia.iscp.bellcore.com (AIX 3.2/UCB 5.64/4.03)
          id AA19064; Fri, 12 Jun 1992 13:39:41 -0400
From: aaron@iscp.bellcore.com (Aaron Akman)
Message-Id: <9206121739.AA19064@italia.iscp.bellcore.com>
To: help-lucid-emacs@lucid.com
Subject: how solid?
Date: Fri, 12 Jun 92 13:39:40 -0500



I've used epoch pretty extensively, and I'm waiting for emacs 19 to be a
nice-sized step forward from there.

How solid is this preliminary version and what is the general reaction of
epoch users who try it out for the first time?  Is it worth downloading yet to
be my primary emacs?

If I just want to peek, can I do ANYTHING without the lisp libraries?  Much
easier to just download the binaries for starters than to download everything.


aaron@iscp.bellcore.com (Aaron Akman)
RRC 4B-325, x6262

From help-lucid-emacs-request@heavens-gate.lucid.com  Fri Jun 12 11:59:10 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA25989; Fri, 12 Jun 92 11:59:10 PDT
Received: by heavens-gate.lucid.com id AA27965g; Fri, 12 Jun 92 10:39:01 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA27961g; Fri, 12 Jun 92 10:38:54 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA01873; Fri, 12 Jun 92 10:47:18 PDT
Date: Fri, 12 Jun 92 10:47:18 PDT
Message-Id: <9206121747.AA01873@thalidomide.lucid>
X-Windows: The problem for your problem.
From: Jamie Zawinski <jwz@heavens-gate.lucid.com>
Sender: jwz@thalidomide
To: aaron@iscp.bellcore.com (Aaron Akman)
Cc: help-lucid-emacs@lucid.com
Subject: Re: how solid?
In-Reply-To: Aaron Akman's message of Fri 12-Jun-92 13:39:40 -0500 <9206121739.AA19064@italia.iscp.bellcore.com>
References: <9206121739.AA19064@italia.iscp.bellcore.com>

In message <9206121739.AA19064@italia.iscp.bellcore.com> Aaron Akman wrote:
>
> I've used epoch pretty extensively, and I'm waiting for emacs 19 to be a
> nice-sized step forward from there.
> 
> How solid is this preliminary version and what is the general reaction of
> epoch users who try it out for the first time?  Is it worth downloading yet
> to be my primary emacs?

I think it's pretty solid once you get past the installation problems, but
I'll leave it up to the others to judge.  It doesn't have all of the
functionality of Epoch yet.

Remember that this is not "emacs 19," that is, this is not the official FSF
release.  What they will someday release and call "emacs 19" will be very
different from this.  It's not clear what will be in it or whether it will
be out this year.

> If I just want to peek, can I do ANYTHING without the lisp libraries?

Not a thing...

	-- Jamie

From help-lucid-emacs-request@heavens-gate.lucid.com  Fri Jun 12 12:07:12 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA25997; Fri, 12 Jun 92 12:07:12 PDT
Received: by heavens-gate.lucid.com id AA28143g; Fri, 12 Jun 92 11:29:02 PDT
Received: from chenas.inria.fr by heavens-gate.lucid.com id AA28137g; Fri, 12 Jun 92 11:28:51 PDT
Received: from sid1.cenaath.cena.dgac.fr by chenas.inria.fr (5.65c8d/92.02.29)
	via Fnet-EUnet id AA28243; Fri, 12 Jun 1992 20:31:52 +0200 (MET)
Received: from geant.cenatls.cena.dgac.fr (geant-gw) by sid1.cenaath.cena.dgac.fr (4.1/SMI-4.1)
	id AA05741; Fri, 12 Jun 92 20:34:49 +0200
Received: from gogol.cenatls by geant.cenatls.cena.dgac.fr (4.1/SMI-4.1)
	id AA15556; Fri, 12 Jun 92 20:28:54 +0200
Date: Fri, 12 Jun 92 20:28:54 +0200
From: queinnec@mailhost.cenatls.cena.dgac.fr (Philippe Queinnec)
Message-Id: <9206121828.AA15556@geant.cenatls.cena.dgac.fr>
Received: by gogol.cenatls (4.1/SMI-4.1)
	id AA04248; Fri, 12 Jun 92 20:28:56 +0200
To: aaron@iscp.bellcore.com (Aaron Akman)
Cc: help-lucid-emacs@lucid.com
Subject: Re: how solid?
In-Reply-To: Your message of Fri 12 June 92, 13:39:40 -0500
References: <9206121739.AA19064@italia.iscp.bellcore.com>

On 12 June 92, the keyboard of Aaron Akman wrote:

> How solid is this preliminary version and what is the general reaction of
> epoch users who try it out for the first time?  Is it worth downloading
> yet to be my primary emacs?

I find it quite solid (I have it continuously running for two days without
problem). HOWEVER you may have problem with old emacs lisp code: some
packages may need modifications as supercite, or the gnu-ada mode. Some
others are in the distrib (vm, gnus, ...), and some work ok without
recompilation (bbdb (what a surprise !), ispell...).

In conclusion: if you are not using any extension (either to Epoch or emacs
18), it's fine. If you are running extensions in the new distrib (check the
CONTENTS file), you *need* these new versions. If you are running other
extensions, they *may* work, but you have no guarantee.

Regarding the lisp code: I don't think lemacs will work without the new
code, but jwz has certainly a more definite answer on this subject.


Phil    (queinnec@dgac.fr, queinnec@enseeiht.fr)

From help-lucid-emacs-request@heavens-gate.lucid.com  Fri Jun 12 12:36:56 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA26056; Fri, 12 Jun 92 12:36:56 PDT
Received: by heavens-gate.lucid.com id AA28233g; Fri, 12 Jun 92 11:49:45 PDT
Received: from net.nrl.navy.mil by heavens-gate.lucid.com id AA28229g; Fri, 12 Jun 92 11:49:35 PDT
Received: by enews.nrl.navy.mil (910711.SGI/890607.SGI)
	(for @net.nrl.navy.mil:help-lucid-emacs@lucid.com) id AA03858; Fri, 12 Jun 92 15:08:01 -0400
Date: Fri, 12 Jun 92 15:08:01 -0400
From: loss@enews.nrl.navy.mil (Brian Loss)
Message-Id: <9206121908.AA03858@enews.nrl.navy.mil>
To: help-lucid-emacs@lucid.com
Subject: Lucid Emacs on SGI


    Has anyone out there successfully compiled Lucid Emacs 19.1 for IRIX 4.0
(Silicon Graphics).  If you have, and have a working version, PLEASE let me 
know.  Thanks.



Brian Loss
----
---------------------------------------------------
Brian Loss(loss@enews.nrl.navy.mil) 
ENEWS Program, U.S. Naval Research Laboratory
---------------------------------------------------
---------------------------------------------------
Brian Loss(loss@enews.nrl.navy.mil)  (202) 404-7616
ENEWS Program, U.S. Naval Research Laboratory
---------------------------------------------------


From help-lucid-emacs-request@heavens-gate.lucid.com  Fri Jun 12 13:22:51 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA26193; Fri, 12 Jun 92 13:22:51 PDT
Received: by heavens-gate.lucid.com id AA28353g; Fri, 12 Jun 92 12:37:23 PDT
Received: from relay1.UU.NET by heavens-gate.lucid.com id AA28349g; Fri, 12 Jun 92 12:37:16 PDT
Received: from uunet.uu.net (via LOCALHOST.UU.NET) by relay1.UU.NET with SMTP 
	(5.61/UUNET-internet-primary) id AA26466; Fri, 12 Jun 92 15:45:28 -0400
Received: from edsr.UUCP by uunet.uu.net with UUCP/RMAIL
	(queueing-rmail) id 154440.936; Fri, 12 Jun 1992 15:44:40 EDT
Received: from tantalum.eds.com (abqtoalh) by edsr.eds.com
	id AA23649; Fri, 12 Jun 92 14:20:19 CDT
Received: from arsenic.eds.com by tantalum.eds.com (4.1/ALBUQUERQUE-1.1)
	id AA27968; Fri, 12 Jun 92 13:20:29 MDT
Received: by arsenic.eds.com (4.1/ALBSUB-1.3)
	id AA13974; Fri, 12 Jun 92 13:20:28 MDT
Date: Fri, 12 Jun 92 13:20:28 MDT
From: edsr!tantalum!cheeks@uunet.UU.NET (Mark Costlow)
Message-Id: <9206121920.AA13974@arsenic.eds.com>
To: help-lucid-emacs@lucid.com
Subject: lemacs' startup procedure


I was wondering why lemacs takes (much) longer to come up for the first
time than 18.58.  I traced them both, and I think I found the answer.  Due
to lemacs' dynamic locating of its support files, it executes 540 stat()
calls on NFS-mounted files before starting.  In particular it stat()s
everything in the lisp directory.  18.55 only stat()s 70 files (many of
which were referenced from my .emacs).  There are also a handful of
readlink()s caused by my logical naming scheme which causes access to the
physical lemacs directory to cross a couple of automount points.

[ Perhaps I should clarify -- the problem is with the startup of any
lemacs, not just the first one of the day.  This is not an artifact of
using an automounter, except that the lisp files are all served over NFS. ]

I'm not convinced that this dynamic lookup is really The Right Thing.  Did
many people complain about it before?  This particular solution seems to be
lacking since you still have to have some (rather strange) mirrors lined up
at runtime anyway.  Perhaps a simple environment variable which points to a
"root" emacs directory which must contain lisp/, etc/, info/ and lock/
subdirectorys would be a better idea?

In the meantime, is there an easy way to disable this behaviour?  I'd
rather be forced to recompile emacs when I move it (I never change the
logical name of anything anyway) than have to wait 10 seconds for my editor
to start up.  (Especially since that lengthy search turns up the same
answer every time! :-)

Just my 2 cents,

>>Chx

--
cheeks@edsr.eds.com    or     ...uunet!edsr!cheeks

From help-lucid-emacs-request@heavens-gate.lucid.com  Fri Jun 12 14:54:26 1992
Return-Path: <help-lucid-emacs-request@heavens-gate.lucid.com>
Received: from lucid.com (heavens-gate.lucid.com) by love-canal. (4.0/SMI-4.0)
	id AA26341; Fri, 12 Jun 92 14:54:26 PDT
Received: by heavens-gate.lucid.com id AA28878g; Fri, 12 Jun 92 14:23:28 PDT
Received: from uswat.advtech.uswest.com by heavens-gate.lucid.com id AA28874g; Fri, 12 Jun 92 14:23:19 PDT
Received: from alder.advtech.uswest.com by uswat.advtech.uswest.com with SMTP id AA17442
  (5.65c/IDA-1.4.4 for <help-lucid-emacs@lucid.com>); Fri, 12 Jun 1992 15:31:34 -0600
Received: by alder.advtech.uswest.com (advtech.uswest.com)
   id AA15527 (4.1/at-generic.11Feb92); Fri, 12 Jun 92 15:31:34 MDT
Date: Fri, 12 Jun 92 15:31:34 MDT
From: Chris McClenaghan <mcclen@advtech.uswest.com>
Message-Id: <9206122131.AA15527@alder.advtech.uswest.com>
To: Lucid Emacs 19 Help <help-lucid-emacs@lucid.com>
Subject: Resources

I hate it when this happens, but now the resource specifications are
working. Can't figure out for the life of me what's different,
other than the day and my attitude. Didn't even get a chance to

>> Try doing "setenv XAPPLRESDIR /tmp ; setenv XFILESEARCHPATH /tmp" and see
>> if that makes the problem go away.

neither of which I have set.

Oh well,


Chris McClenaghan    mcclen@uswest.com


From help-lucid-emacs-request@lucid.com  Fri Jun 12 18:07:57 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA05071; Fri, 12 Jun 92 18:07:57 PDT
Received: by heavens-gate.lucid.com id AA29544g; Fri, 12 Jun 92 17:58:41 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA29540g; Fri, 12 Jun 92 17:58:36 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA02557; Fri, 12 Jun 92 18:07:05 PDT
Date: Fri, 12 Jun 92 18:07:05 PDT
Message-Id: <9206130107.AA02557@thalidomide.lucid>
X-Windows: The problem for your problem.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: edsr!tantalum!cheeks@uunet.UU.NET (Mark Costlow)
Cc: help-lucid-emacs@lucid.com
Subject: Re: lemacs' startup procedure
In-Reply-To: Mark Costlow's message of Fri 12-Jun-92 13:20:28 MDT <9206121920.AA13974@arsenic.eds.com>
References: <9206121920.AA13974@arsenic.eds.com>

In message <9206121920.AA13974@arsenic.eds.com> Mark Costlow wrote:
>
> I'm not convinced that this dynamic lookup is really The Right Thing.  Did
> many people complain about it before?  This particular solution seems to be
> lacking since you still have to have some (rather strange) mirrors lined up
> at runtime anyway.

The main reason that we did this was that we didn't want part of the
instalation procedure of Energize to involve hacking paths.h and dumping an
emacs.  We wanted to ship an executable that the customers could just install
in some arbitrary place, and run.  We didn't want to force them to put it in
some particular place in the file system.

Currently it always stat()s those files, but it would probably be a better
idea for it to not do the stat()s if $EMACSLOADPATH is set.

> In the meantime, is there an easy way to disable this behaviour?  I'd
> rather be forced to recompile emacs when I move it (I never change the
> logical name of anything anyway) than have to wait 10 seconds for my editor
> to start up.  (Especially since that lengthy search turns up the same
> answer every time! :-)

I think that most people wouldn't rather recompile emacs.  Currently the only
way to disable it is to hack the code out of startup.el.  

Most of the time is no doubt being spent getting a list of the subdirectories
of the lisp dir, not finding the lisp dir itself, which is sort of an
orthogonal issue.  I really wanted the lispdir to have subdirectories,
arranged by package, instead of there being a billion files in one place.  
It seemed like a good idea to have emacs find the subdirectories at runtime
instead of that being static, but maybe that wasn't such a good idea after
all.  I don't know; maybe the list of subdirectories of .../lisp/ to put on
the load-path should be specified explicitly instead of being computed.  
But I'd like that to be easy to change, and not involve re-dumping emacs.
And default.el is loaded too late for this (after .emacs).

	-- Jamie

From help-lucid-emacs-request@lucid.com  Sat Jun 13 08:58:14 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA07271; Sat, 13 Jun 92 08:58:14 PDT
Received: by heavens-gate.lucid.com id AA00699g; Sat, 13 Jun 92 08:49:03 PDT
Received: from lamont.ldgo.columbia.edu (ldgo.columbia.edu) by heavens-gate.lucid.com id AA00695g; Sat, 13 Jun 92 08:48:50 PDT
Received: from  (ko.ldgo.columbia.edu) by lamont.ldgo.columbia.edu (4.1/SMI-3.2)
	id AA08552; Sat, 13 Jun 92 11:57:07 EDT
Message-Id: <9206131557.AA08552@lamont.ldgo.columbia.edu>
Date: Sat, 13 Jun 92 11:56:52 EDT
From: fritzz@lamont.ldgo.columbia.edu
To: jwz@lucid.com
Cc: edsr!tantalum!cheeks@uunet.UU.NET, help-lucid-emacs@lucid.com
In-Reply-To: Jamie Zawinski's message of Fri, 12 Jun 92 18:07:05 PDT <9206130107.AA02557@thalidomide.lucid>
Subject: lemacs' startup procedure

   Date: Fri, 12 Jun 92 18:07:05 PDT
   X-Windows: The problem for your problem.
   From: Jamie Zawinski <jwz@lucid.com>
   Sender: jwz%thalidomide@lucid.com
   References: <9206121920.AA13974@arsenic.eds.com>

   I think that most people wouldn't rather recompile emacs.
   Currently the only
   way to disable it is to hack the code out of startup.el.  

   Most of the time is no doubt being spent getting a list of the
   subdirectories
   of the lisp dir, not finding the lisp dir itself, which is sort of an
   orthogonal issue.  I really wanted the lispdir to have subdirectories,
   arranged by package, instead of there being a billion files in one place.  
   It seemed like a good idea to have emacs find the subdirectories at runtime
   instead of that being static, but maybe that wasn't such a good idea after
   all.  I don't know; maybe the list of subdirectories of .../lisp/ to put on
   the load-path should be specified explicitly instead of being computed.  
   But I'd like that to be easy to change, and not involve re-dumping emacs.
   And default.el is loaded too late for this (after .emacs).


I didn't follow the whole discussion on this subject. But I'll try to
make some comments anyway:

Although the philosophy after FSF or RMS intend to allow the user to
have complete control over what's being loaded, I think there MUST be
a possibility to have a .el file loaded BEFORE the user's .emacs file.
I'll explain in a minute, but there is always the possibility to
disable this feature with a command line option if hte user really
knows what (s)he is doing.

Way do we need such a file? I tried to make EMACS available on our
network here, which consists mainly of Sun workstations. We have
several buildings with several subnets, meaning usually one server,
that has all the programs, etc and local machines getting there stuff
from there. The idea is, that every building (sub-net) can exist
without the other subnets. This means, that EMACS has to be installed
on all the building servers. The programs go "traditionally" into a
subdirectory like /hostname/hostname/local/.... This automatically
means, that in each subnet EMACS is in a different place, as are all
the subdirectories. It is a nuisance to have to re-compile emacs on
each server, just to get the LOADPATH set right. What I did here to
solve the problem, is, that the startup.el file reads another
init-file which can be set with an environment variable. No the user
just has to setenv EMACSDIR to the server he wants to be serverd from
and everything works on any given host.

There is one un-resolved issue: the lock directory. In an environement
as discribed above, there will be more than one lock directory and as
all the different buildings are NFS cross mounted, the locking is not
necessarily save anymore. May be, somebody has an idea? Just using the
same directory would work, but would make buildings and sub-nets
dependent on eachother, which is a No-No, because I don't want to get
stuck, just because a machine in another place goes down.


Just my 20 cents.


Fritz


From help-lucid-emacs-request@lucid.com  Sat Jun 13 10:12:52 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA07383; Sat, 13 Jun 92 10:12:52 PDT
Received: by heavens-gate.lucid.com id AA00801g; Sat, 13 Jun 92 10:03:56 PDT
Received: from relay1.UU.NET by heavens-gate.lucid.com id AA00795g; Sat, 13 Jun 92 10:03:45 PDT
Received: from uunet.uu.net (via LOCALHOST.UU.NET) by relay1.UU.NET with SMTP 
	(5.61/UUNET-internet-primary) id AA04181; Sat, 13 Jun 92 13:12:07 -0400
Received: from edsr.UUCP by uunet.uu.net with UUCP/RMAIL
	(queueing-rmail) id 131153.15778; Sat, 13 Jun 1992 13:11:53 EDT
Received: from tantalum.eds.com (abqtoalh) by edsr.eds.com
	id AA10118; Sat, 13 Jun 92 12:04:52 CDT
Received: from arsenic.eds.com by tantalum.eds.com (4.1/ALBUQUERQUE-1.1)
	id AA08908; Sat, 13 Jun 92 11:05:03 MDT
Received: by arsenic.eds.com (4.1/ALBSUB-1.3)
	id AA16192; Sat, 13 Jun 92 11:05:01 MDT
Date: Sat, 13 Jun 92 11:05:01 MDT
From: edsr!tantalum!cheeks@uunet.UU.NET (Mark Costlow)
Message-Id: <9206131705.AA16192@arsenic.eds.com>
To: uunet!lucid.com!jwz@uunet.UU.NET
Cc: help-lucid-emacs@lucid.com
In-Reply-To: Jamie Zawinski's message of Fri, 12 Jun 92 18:07:05 PDT <9206130107.AA02557@thalidomide.lucid>
Subject: lemacs' startup procedure


On Fri, 12 Jun 92 18:07:05 PDT,
Jamie Zawinski <uunet!lucid.com!jwz> said:
Jamie> X-Windows: The problem for your problem.

Jamie> In message <9206121920.AA13974@arsenic.eds.com> Mark Costlow wrote:
>
> I'm not convinced that this dynamic lookup is really The Right Thing.

Jamie> The main reason that we did this was that we didn't want part of the
Jamie> instalation procedure of Energize to involve hacking paths.h and
Jamie> dumping an emacs.  We wanted to ship an executable that the
Jamie> customers could just install in some arbitrary place, and run.  We
Jamie> didn't want to force them to put it in some particular place in the
Jamie> file system.

Good point.  I detest commercial software that requires directories or
symlinks on a file system I would prefer to mount read-only!



Jamie> Currently it always stat()s those files, but it would probably be a
Jamie> better idea for it to not do the stat()s if $EMACSLOADPATH is set.

I think that would be a great idea.  I'm still not wild about the dynamic
searching for a home (I'm speaking from the perspective of an Energize
customer now, not an admin hacking emacs source).  I think it would be
cleaner to use an environment variable (with a lemacs-specific name, e.g.
$LUCIDEMACSPATH) which points at the lemacs root.  That would keep the the
dynamic search from finding something other than what I intend (like my GNU
or Epoch emacs directory).


Jamie> Currently the only way to disable it is to hack the code out of
Jamie> startup.el.

Ok, done :-)


Jamie> I really wanted the lispdir to have subdirectories, arranged by
Jamie> package, instead of there being a billion files in one place. [...]
Jamie> maybe the list of subdirectories of .../lisp/ to put on the
Jamie> load-path should be specified explicitly instead of being computed.
Jamie> But I'd like that to be easy to change, and not involve re-dumping
Jamie> emacs.  And default.el is loaded too late for this (after .emacs).

Yeah, that is a problem.  Making $emacs/lisp a taller tree would help.  You
could take info's "dir" file approach and read a list of extra directories
to add to load-path from a file in the main lisp directory.  Installing new
lisp code would require adding a line to the dir file, but then so does
installing new info modules.

>>Chx

From help-lucid-emacs-request@lucid.com  Sat Jun 13 12:24:52 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA07585; Sat, 13 Jun 92 12:24:52 PDT
Received: by heavens-gate.lucid.com id AA01039g; Sat, 13 Jun 92 12:15:53 PDT
Received: from Sunburn.Stanford.EDU by heavens-gate.lucid.com id AA01035g; Sat, 13 Jun 92 12:15:46 PDT
Received:  by Sunburn.Stanford.EDU (5.61+IDA/25-eef) id AA12568; Sat, 13 Jun 92 12:23:02 -0700
Date: Sat, 13 Jun 92 12:23:02 -0700
From: Martin Frost <me@Sunburn.Stanford.EDU>
Message-Id: <9206131923.AA12568@Sunburn.Stanford.EDU>
To: help-lucid-emacs@lucid.com
In-Reply-To: Mark Costlow's message of Sat, 13 Jun 92 11:05:01 MDT <9206131705.AA16192@arsenic.eds.com>
Subject: lemacs' startup procedure
Reply-To: me@CS.Stanford.EDU

I certainly like the fact that lemacs sets up the default load path at
runtime.  Here are a couple of other ways it might do it without stat'ing
all the lisp files.

(1) Move all the old .el and .elc files into a new subdirectory, called
lisp/dist or whatever.  Then the lisp directory will contain only
directories of lisp stuff and it won't be that big to stat all of it.
(That directory has really gotten too big anyway, so it could even
conceivably be broken into several subdirectories by grouping current
lisp/*.el files -- but that's not necessary to this basic idea.)

(2) Have one subdirectory, called lisp/local, or lisp/../local (or maybe
"contrib" instead of local, though I like "local"), which contains all the
directories of other emacs lisp packages.  The name would be fixed, and
again emacs would only be stat'ing directories, not all the *.el and *.elc
files, at that level.

(3) Do both of the above, with the default load path consisting of lisp/*
and lisp/../local/*.

Of course, an environment variable could also be allowed to override or
limit this sort of action.

A separate issue has come up, that of emacs actually searching for the top
level lisp (and etc, info, ...) directories.  As long as that search is
well specified and fairly limited, like it is now, I don't see a problem
with it.  I think the best setup is to have your /usr/local/bin/lemacs (or
whatever you want the binary to be called in your search path) be a link to
a lemacs/src/lemacs binary, with lemacs/lisp etc. being found from there
(the current search also allows a couple of other possibilities).  In this
way, the emacs tree contains the binary.

From help-lucid-emacs-request@lucid.com  Sat Jun 13 12:54:39 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA07850; Sat, 13 Jun 92 12:54:39 PDT
Received: by heavens-gate.lucid.com id AA01091g; Sat, 13 Jun 92 12:45:23 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA01087g; Sat, 13 Jun 92 12:45:17 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA04431; Sat, 13 Jun 92 12:53:45 PDT
Date: Sat, 13 Jun 92 12:53:45 PDT
Message-Id: <9206131953.AA04431@thalidomide.lucid>
X-Windows: The problem for your problem.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: help-lucid-emacs@lucid.com, bug-lucid-emacs@lucid.com
Subject: these mailing lists are now archived

These mailing lists are now being archived on labrea.Stanford.EDU (36.8.0.47)
in the files pub/gnu/lucid/help-lucid-emacs and pub/gnu/lucid/bug-lucid-emacs.
All messages that have been sent to these lists so far are there now.  

Enjoy...

	-- Jamie

From help-lucid-emacs-request@lucid.com  Sun Jun 14 10:05:00 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA10445; Sun, 14 Jun 92 10:05:00 PDT
Received: by heavens-gate.lucid.com id AA02550g; Sun, 14 Jun 92 09:55:47 PDT
Received: from chenas.inria.fr by heavens-gate.lucid.com id AA02546g; Sun, 14 Jun 92 09:55:38 PDT
Received: from sid1.cenaath.cena.dgac.fr by chenas.inria.fr (5.65c8d/92.02.29)
	via Fnet-EUnet id AA27287; Sun, 14 Jun 1992 19:02:19 +0200 (MET)
Received: from geant.cenatls.cena.dgac.fr (geant-gw) by sid1.cenaath.cena.dgac.fr (4.1/SMI-4.1)
	id AA01284; Sun, 14 Jun 92 19:05:12 +0200
Received: from tonus.cenatls by geant.cenatls.cena.dgac.fr (4.1/SMI-4.1)
	id AA06262; Sun, 14 Jun 92 18:59:05 +0200
Date: Sun, 14 Jun 92 18:59:05 +0200
From: queinnec%mailhost.cenatls.cena.dgac.fr@lucid.com (Philippe Queinnec)
Message-Id: <9206141659.AA06262@geant.cenatls.cena.dgac.fr>
Received: by tonus.cenatls (4.1/SMI-4.1)
	id AA00990; Sun, 14 Jun 92 18:59:17 +0200
To: help Lucid Emacs <help-lucid-emacs@lucid.com>
Subject: patch for supercite 2.2

If anyone is interested, I have the four-lines patch for supercite 2.2
(simply: let zmacs-region be nil in sc-cite-original, and remove the
spoogification of doc string in sc-spoogify-docstring).

I have sent it to supercite's author Barry A. Warsaw.

Phil

From help-lucid-emacs-request@lucid.com  Mon Jun 15 02:20:38 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA12233; Mon, 15 Jun 92 02:20:38 PDT
Received: by heavens-gate.lucid.com id AA03719g; Mon, 15 Jun 92 02:11:04 PDT
Received: from relay2.UU.NET by heavens-gate.lucid.com id AA03715g; Mon, 15 Jun 92 02:10:56 PDT
Received: from ingr.ingr.com by relay2.UU.NET with SMTP 
	(5.61/UUNET-internet-primary) id AA17559; Mon, 15 Jun 92 05:18:43 -0400
Received: by ingr.ingr.com (5.61/INGR-1.1)
	id AA29852; Mon, 15 Jun 92 04:23:45 -0500
Received: from simpson.turtles by turtles (4.1/SMI-4.1)
	id AA20512; Mon, 15 Jun 92 12:16:35 IDT
Received: by simpson.turtles (4.1/SMI-4.1)
	id AA19699; Mon, 15 Jun 92 12:16:46 IDT
Date: Mon, 15 Jun 92 12:16:46 IDT
From: matis!amir@uunet.UU.NET (Amir Katz)
Message-Id: <9206150916.AA19699@simpson.turtles>
To: help-lucid-emacs@lucid.com
Subject: Can't load a file
Reply-To: matis!ingr.COM!amir%matis.UUCP@uunet.UU.NET

Lucid Emacs Gurus,

I'm running the pre-cooked emacs for Sun-4.

I have the following lines in my .emacs:

  (setq my-home-dir (getenv "HOME"))
  (setq my-own-prog-dir (concat my-home-dir "/emacs-progs/"))
  (setq load-path (cons my-own-prog-dir load-path))
  ...
  (defvar is-lucid-emacs (string-match "Lucid" emacs-version)
    "*Set to t if it is Lucid/GNU Emacs.")
  ...
  (if is-lucid-emacs (load "lucid-sun-kdb.elc"))

but Lucid-Emacs gives me an error when loading this file (message split for
clarity):
   Error in init file: File error: "Cannot open load file" \
                       "lucid-sun-kdb.elc"

All other files that are loaded earlier or later in .emacs do not cause any
such problems. They are all in the same directory. I have byte-compiled the
file both under GNU emacs 18.58 and under Lucid-Emacs 19.1, but it didn't
make a difference. 

The file contains function keys programming. e.g.:
   (define-key global-map [(f21)] 'repeat-complex-command)

Manually loading the file (M-x load-file ...) works just fine. Any hints?

Thanks & please respond to the address(es) below.
-- 
/* Amir J. Katz          | UUCP:     uunet!ingr!matis!amir               */
/* System Specialist     | Internet: amir%matis.UUCP@ingr.COM            */
/* SEE Technologies Ltd. | Voice:    +972 52-584684, Fax: +972 52-543917 */


From help-lucid-emacs-request@lucid.com  Mon Jun 15 04:57:15 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA12916; Mon, 15 Jun 92 04:57:15 PDT
Received: by heavens-gate.lucid.com id AA03946g; Mon, 15 Jun 92 04:48:06 PDT
Received: from mirriwinni.ee.adfa.oz.au by heavens-gate.lucid.com id AA03942g; Mon, 15 Jun 92 04:47:54 PDT
Received: by mirriwinni.ee.adfa.oz.au (4.1/1.0)
	id AA02630; Mon, 15 Jun 92 21:56:15 EST
Date: Mon, 15 Jun 92 21:56:15 EST
From: phillip%mirriwinni.ee.adfa.oz.au@lucid.com (Phillip Musumeci)
Message-Id: <9206151156.AA02630@mirriwinni.ee.adfa.oz.au>
To: help-lucid-emacs@lucid.com
Subject: Q: my locally compiled lemacs drops dead if I have a ~/.Xdefaults file

Hi,
   I am expecting a ``you turkey'' level answer to the above statement ...

However, if there is a quick fix, I'd really like to know. I just run X11R5
on a sunos-4.1.1 sparcstation in a local mode (X:0 etc). Lemacs will run
just fine if I rename the .Xdefaults file away when it starts. I tried
doing a trace and I can see it try for a few other files that I don't
normally have just before it "drops dead" on the .Xdefaults file open
(which I normally do have). Any ideas?

Thanks, Phillip Musumeci.



From help-lucid-emacs-request@lucid.com  Mon Jun 15 18:53:31 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA16250; Mon, 15 Jun 92 18:53:31 PDT
Received: by heavens-gate.lucid.com id AA06513g; Mon, 15 Jun 92 18:42:44 PDT
Received: from lysator.liu.se by heavens-gate.lucid.com id AA06509g; Mon, 15 Jun 92 18:42:35 PDT
Received: by lysator.liu.se 
          (5.65c8/1.34/Lysator-3.1) id AA19790; Tue, 16 Jun 1992 03:51:00 +0200 
          (rfc931-sender: linus@lysator.liu.se)
Date: Tue, 16 Jun 1992 03:51:00 +0200
From: linus%lysator.liu.se@lucid.com (Linus Tolke Y)
Message-Id: <199206160151.AA19790@lysator.liu.se>
To: help-lucid-emacs@lucid.com
Subject: registration of an abort function for popup-menus
Keywords: popup-menus, abort

I have just today tried lucid-emacs and I found it amazingly easy to
program a few popup-menus. I have a few problems though, perhaps
related to the fact that there is very little documentation on the
popup-menu function and that it is not completely finished.

However, my question is:
How do I register a function to be called when the popup-window is
closed abnormally?

In my application I do some initializations before popping up the
window and when finishing with one of the commands they are used and
restored. When exiting the popup-window by clicking outside (or
whatever) these initializations are not restored.
-- 
	/Linus
*****	Wherever I exec my `which emacs`, is my $HOME.	*****
Linus Tolke				SM7OUU, linus@lysator.liu.se
Student at the				member of SK5EU LiTHSA
Link|ping institute of technology, LiTH	LiTH S{ndare Amat|rer (Ham-club)



From help-lucid-emacs-request@lucid.com  Tue Jun 16 01:32:48 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA17273; Tue, 16 Jun 92 01:32:48 PDT
Received: by heavens-gate.lucid.com id AA07307g; Tue, 16 Jun 92 01:23:44 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA07303g; Tue, 16 Jun 92 01:23:38 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA09561; Tue, 16 Jun 92 01:32:17 PDT
Date: Tue, 16 Jun 92 01:32:17 PDT
Message-Id: <9206160832.AA09561@thalidomide.lucid>
X-Windows: The art of incompetence.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: linus%lysator.liu.se@lucid.com (Linus Tolke Y)
Cc: help-lucid-emacs@lucid.com
Subject: Re: registration of an abort function for popup-menus
In-Reply-To: Linus Tolke Y's message of Tue 16-Jun-92 03:51:00 +0200 <199206160151.AA19790@lysator.liu.se>
References: <199206160151.AA19790@lysator.liu.se>

In message <199206160151.AA19790@lysator.liu.se> Linus Tolke Y wrote:
>
> However, my question is:
> How do I register a function to be called when the popup-window is
> closed abnormally?

I think the only way to do that is to go into an event-processing loop until
(popup-menu-up-p) is false.  Have the commands in the menu set a flag, and
notice whether that flag gets set.  Something like

(let ((event (allocate-event)))
  (popup-menu 'foo)
  (while (popup-menu-up-p)
    (dispatch-event (next-event event)))
  (or flag (default-function)))

That's kind of nasty, but menus are asynchronous.  Popup-menu returns before
the user has made a selection.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Tue Jun 16 04:11:24 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA18252; Tue, 16 Jun 92 04:11:24 PDT
Received: by heavens-gate.lucid.com id AA07480g; Tue, 16 Jun 92 04:02:09 PDT
Received: from lysator.liu.se by heavens-gate.lucid.com id AA07476g; Tue, 16 Jun 92 04:01:58 PDT
Received: from robert.lysator.liu.se by lysator.liu.se  with SMTP
          (5.65c8/1.34/Lysator-3.1) id AA22864; Tue, 16 Jun 1992 13:10:12 +0200 
          (rfc931-sender: linus@robert.lysator.liu.se)
Received: by robert.lysator.liu.se 
          (5.65c8/1.34/Lysator-3.1) id AA17361; Tue, 16 Jun 1992 13:09:58 +0200
          (rfc931-sender: linus@robert.lysator.liu.se)
Date: Tue, 16 Jun 1992 13:09:58 +0200
From: linus%lysator.liu.se@lucid.com
Message-Id: <199206161109.AA17361@robert.lysator.liu.se>
To: jwz@lucid.com
Cc: linus%lysator.liu.se@lucid.com, help-lucid-emacs@lucid.com
In-Reply-To: Jamie Zawinski's message of Tue, 16 Jun 92 01:32:17 PDT <9206160832.AA09561@thalidomide.lucid>
Subject: registration of an abort function for popup-menus

Thanks for the quick reply!

You wrote:
   I think the only way to do that is to go into an event-processing loop until
   (popup-menu-up-p) is false.  Have the commands in the menu set a flag, and
   notice whether that flag gets set.  Something like
...
   That's kind of nasty, but menus are asynchronous. 
Yes, really nasty indeed. I don't like it at all. My application is
also asynchronous but works with a stream. I could perhaps make it
work but...
						     Popup-menu returns before
   the user has made a selection.
That much I have already figured out.
-- 
	/Linus
*****	Wherever I exec my `which emacs`, is my $HOME.	*****
Linus Tolke				SM7OUU, linus@lysator.liu.se
Student at the				member of SK5EU LiTHSA
Link|ping institute of technology, LiTH	LiTH S{ndare Amat|rer (Ham-club)

From help-lucid-emacs-request@lucid.com  Tue Jun 16 07:33:15 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA18906; Tue, 16 Jun 92 07:33:15 PDT
Received: by heavens-gate.lucid.com id AA07695g; Tue, 16 Jun 92 07:24:07 PDT
Received: from scylla.lucid (scylla.lucid.com) by heavens-gate.lucid.com id AA07691g; Tue, 16 Jun 92 07:24:01 PDT
Received: by scylla.lucid (4.1/SMI-4.1)
	id AA05440; Tue, 16 Jun 92 07:32:30 PDT
Date: Tue, 16 Jun 92 07:32:30 PDT
From: devin%scylla@lucid.com (Matthieu Devin)
Message-Id: <9206161432.AA05440@scylla.lucid>
To: Jamie Zawinski <jwz@lucid.com>
Cc: help-lucid-emacs@lucid.com, linus%lysator.liu.se@lucid.com (Linus Tolke Y)
Subject: Re: registration of an abort function for popup-menus
References: <199206160151.AA19790@lysator.liu.se>
	<9206160832.AA09561@thalidomide.lucid>

In message <9206160832.AA09561@thalidomide.lucid> Jamie Zawinski wrote:
>
> In message <199206160151.AA19790@lysator.liu.se> Linus Tolke Y wrote:
> > However, my question is: How do I register a function to be called when the
> > popup-window is closed abnormally?
> 
> I think the only way to do that is to go into an event-processing loop until
> (popup-menu-up-p) is false.  Have the commands in the menu set a flag, and
> notice whether that flag gets set.  Something like
> ..lisp code deleted..

Maybe popup-menus should have an associated lisp function that will always be
called when the menu is popped down.  The lwlib library supports that at the C
level. 

From help-lucid-emacs-request@lucid.com  Tue Jun 16 17:59:43 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA20950; Tue, 16 Jun 92 17:59:43 PDT
Received: by heavens-gate.lucid.com id AA09597g; Tue, 16 Jun 92 17:50:06 PDT
Received: from relay1.UU.NET by heavens-gate.lucid.com id AA09591g; Tue, 16 Jun 92 17:49:53 PDT
Received: from uunet.uu.net (via LOCALHOST.UU.NET) by relay1.UU.NET with SMTP 
	(5.61/UUNET-internet-primary) id AA09990; Tue, 16 Jun 92 20:58:20 -0400
Received: from edsr.UUCP by uunet.uu.net with UUCP/RMAIL
	(queueing-rmail) id 205712.15682; Tue, 16 Jun 1992 20:57:12 EDT
Received: from tantalum.eds.com (abqtoalh) by edsr.eds.com
	id AA08831; Tue, 16 Jun 92 19:10:22 CDT
Received: from arsenic.eds.com by tantalum.eds.com (4.1/ALBUQUERQUE-1.1)
	id AA12653; Tue, 16 Jun 92 18:10:34 MDT
Received: by arsenic.eds.com (4.1/ALBSUB-1.3)
	id AA26085; Tue, 16 Jun 92 18:10:33 MDT
Date: Tue, 16 Jun 92 18:10:33 MDT
From: edsr!tantalum!cheeks@uunet.UU.NET (Mark Costlow)
Message-Id: <9206170010.AA26085@arsenic.eds.com>
To: help-lucid-emacs@lucid.com
Subject: Extents, faces, etc.


One thing I would like to have in lemacs is a snazzier debugger interface.
I've been investigating this some, but I'm no lisp (or emacs) expert.  I've
made a first hack at something for gdb-mode, but it has a couple of
problems.  I would appreciate some help ... constructive criticism about my
approach is welcome.

First of all, the goal of this hack was to get the current line in gdb-mode
to be highlighted instead of having the arrow pointing at it.  [As an
aside, I think I prefered to have the arrow overlay the source code rather
than push it to the right which messes up indentation clues].  I was
somewhat suprised to find that the hooks for that arrow are built into the
emacs C code, not part of the debugger lisp package.

So, what I came up with is the elsip code appended to this message.  It
works mostly, but has a couple of problems.  Here are the main questions I
have about it:

	1.  I needed to redefine some functions which are defined in
	    gdb.el.  I assumed that just defining them in the mode-hook
	    was the right thing.  Is it?

	2.  I'm not entirely clear on the use of extents.  I was very
	    careful to use just one extent, and delete it before redefining
	    it, etc.  But then I saw the code that Jamie posted for
	    fontify-headers which seems to just make extents whenever it
	    needs them and doesn't bother to keep track of them.  Is that
	    sort of thing safe?  Does it create lots of garbage to collect
	    later?  On the other hand I need to move my extents around so I
	    guess I better keep track of them.  Which brings me to my next
	    question ...

	3.  I redefined gdb-sentinel since that seemed to be the only way
	    to catch the act of gdb-mode being left (either by typing
	    "quit" to gdb or by killing the gdb buffer).  If you type
	    "quit" it works ok, but if you kill the gdb buffer, I get this
	    message:

		"Deleting extent in killed buffed" [sic]

            I've walked through this code with edbug, and inserted a call
	    to extent-buffer which returns the name of the last-accessed
	    source-code buffer, *not* the gdb buffer, so I don't understand
	    why I get that error.  (By the way, the extent is deleted from
	    the source code buffer as well).

If there's a better way to do this, or if someone has superceded my efforts
with a better package, please let me know.  Thanks,

>>Chx
--
cheeks@edsr.eds.com    or     ...uunet!edsr!cheeks


-----------------------begin elisp--------------------------------------
(setq gdb-mode-hook 'my-gdb-init)

(defun my-gdb-init ()
  (copy-face 'primary-selection 'gdb-current-line)
  (setq gdb-current-line-extent (make-extent (point-min) (point-min)))

  ;;
  ;;  Hook into gdb-sentinel so we can tell when gdb-mode has been left and we
  ;;  should kill the highlighting.  Since normally overlay-arrow-position is
  ;;  a "magic" variable monitored by the emacs C code, there's not standard
  ;;  hook for disabling the highlighting feature.
  ;;
  (fset 'old-gdb-sentinel (symbol-function 'gdb-sentinel))
  (defun gdb-sentinel (proc msg)
    (if (or (null (buffer-name (process-buffer proc)))
	    (memq (process-status proc) '(signal exit)))
	(delete-extent gdb-current-line-extent))

    ;; now call the real gdb-sentinel
    (old-gdb-sentinel proc msg))


  ;;
  ;;  Redefine the gdb-display-line function to highlight the active line
  ;;  instead of pointing an arrow at it.
  ;;
  (defun gdb-display-line (true-file line)
    (let* ((buffer (find-file-noselect true-file))
	   (window (display-buffer buffer t))
	   (pos)
	   (e-start))
      (save-excursion
	(set-buffer buffer)
	(save-restriction
	  (widen)
	  (goto-line line)
	  (setq pos (point)))
	(cond ((or (< pos (point-min)) (> pos (point-max)))
	       (widen)
	       (goto-char pos)))
	
	(beginning-of-line)
	(setq e-start (point))
	(end-of-line)
	
	(delete-extent gdb-current-line-extent)
	(setq gdb-current-line-extent (make-extent e-start (point)))
	(set-extent-face gdb-current-line-extent 'gdb-current-line)
	(set-window-point window pos)))))
-----------------------end elisp--------------------------------------


From help-lucid-emacs-request@lucid.com  Tue Jun 16 23:51:56 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA21942; Tue, 16 Jun 92 23:51:56 PDT
Received: by heavens-gate.lucid.com id AA10166g; Tue, 16 Jun 92 23:42:25 PDT
Received: from amil.co.il by heavens-gate.lucid.com id AA10162g; Tue, 16 Jun 92 23:42:01 PDT
Received: from ipc8.AMIL ([192.86.90.18]) by amil.co.il (4.1/AMIL-M2)
	id AA21980; Wed, 17 Jun 92 09:50:00 IDT
Date: Wed, 17 Jun 92 09:50:00 IDT
From: danny@amil.co.il (Danny Bar-Dov)
Message-Id: <9206170650.AA21980@amil.co.il>
Received: by ipc8.AMIL (4.1/SMI-4.1)
	id AA06952; Wed, 17 Jun 92 09:49:56 IDT
To: help-lucid-emacs@lucid.com
Subject: View Mail

Does someone know how compatible are RMAIL and VM ?
Are there any tools to convert RMAIL folders to VM ? vice versa ?

Should I be frightened by the VM warnings and throw it to hell ?

Thanks for any remarks.

Danny.

---------------------
Dan Bar Dov

Applied Materials (Israel)

Email:        danny@amil.co.il
Phone: office 972-3-499573
       home   972-3-5469625
TimeZone:     GMT-2

--

---------------------
Dan Bar Dov

Applied Materials (Israel)

Email:        danny@amil.co.il
Phone: office 972-3-499573
       home   972-3-5469625
TimeZone:     GMT-2

From help-lucid-emacs-request@lucid.com  Wed Jun 17 01:38:41 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA22130; Wed, 17 Jun 92 01:38:41 PDT
Received: by heavens-gate.lucid.com id AA10365g; Wed, 17 Jun 92 01:29:16 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA10361g; Wed, 17 Jun 92 01:29:11 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA11744; Wed, 17 Jun 92 01:37:51 PDT
Date: Wed, 17 Jun 92 01:37:51 PDT
Message-Id: <9206170837.AA11744@thalidomide.lucid>
X-Windows: Form follows malfunction.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: edsr!tantalum!cheeks@uunet.UU.NET (Mark Costlow)
Cc: help-lucid-emacs@lucid.com
Subject: Re: Extents, faces, etc.
In-Reply-To: Mark Costlow's message of Tue 16-Jun-92 18:10:33 MDT <9206170010.AA26085@arsenic.eds.com>
References: <9206170010.AA26085@arsenic.eds.com>

In message <9206170010.AA26085@arsenic.eds.com> Mark Costlow wrote:
>
> One thing I would like to have in lemacs is a snazzier debugger interface.
> I've been investigating this some, but I'm no lisp (or emacs) expert.  I've
> made a first hack at something for gdb-mode, but it has a couple of
> problems.  I would appreciate some help ... constructive criticism about my
> approach is welcome.

I haven't had time to look at your code yet, but here are a few quick comments:

> 	1.  I needed to redefine some functions which are defined in
> 	    gdb.el.  I assumed that just defining them in the mode-hook
> 	    was the right thing.  Is it?

Generally, nested defuns should be avoided.  I would instead put this code in
a seperate file which was `require'd by the mode-hook.

> 	2.  I'm not entirely clear on the use of extents.  I was very
> 	    careful to use just one extent, and delete it before redefining
> 	    it, etc.  But then I saw the code that Jamie posted for
> 	    fontify-headers which seems to just make extents whenever it
> 	    needs them and doesn't bother to keep track of them.  Is that
> 	    sort of thing safe?  Does it create lots of garbage to collect
> 	    later?

Yes, it creates garbage that doesn't go away until the buffer is killed.
Fontify-headers isn't very well behaved in that respect (it was a very
quick hack...)  Look at info.el for a better example.

> 	3.  I redefined gdb-sentinel since that seemed to be the only way
> 	    to catch the act of gdb-mode being left (either by typing
> 	    "quit" to gdb or by killing the gdb buffer).  If you type
> 	    "quit" it works ok, but if you kill the gdb buffer, I get this
> 	    message:
> 
> 		"Deleting extent in killed buffed" [sic]

Probably this is because the sentinel is being called after the buffer is
killed, and trying to delete the extent again.  Look at the extent to see
if it's dead.  I think it's buffer is nil in that case, but it might be that
it has a buffer whose name is nil instead.  I don't remember.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Wed Jun 17 05:14:24 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA23031; Wed, 17 Jun 92 05:14:24 PDT
Received: by heavens-gate.lucid.com id AA10635g; Wed, 17 Jun 92 05:05:11 PDT
Received: from cs.sandia.gov by heavens-gate.lucid.com id AA10631g; Wed, 17 Jun 92 05:05:03 PDT
Received: from cfd.cfd.sandia.gov ([132.175.77.4]) by cs.sandia.gov (4.1/SMI-4.1)
	id AA22170; Wed, 17 Jun 92 06:13:32 MDT
Received: by cfd.cfd.sandia.gov (4.1/SMI-4.1)
	id AA02243; Wed, 17 Jun 92 06:15:27 MDT
Date: Wed, 17 Jun 92 06:15:27 MDT
From: galagun@cfd.cs.sandia.gov (Glenn Laguna)
Message-Id: <9206171215.AA02243@cfd.cfd.sandia.gov>
To: help-lucid-emacs@lucid.com
Subject: Trouble binding function keys


I'm having some trouble figuring out how to bind the function and keypad
keys.  The following lines are in by .emacs file now.  They work with
current versions of emacs and epoch, but not l-emacs-19.

(global-unset-key "\e[")
(define-key global-map "\e[214z" 'beginning-of-buffer)  ;;; R7 Home    1

Any help would be appreciated.

Thanks,
Glenn Laguna

From help-lucid-emacs-request@lucid.com  Wed Jun 17 06:13:50 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA23204; Wed, 17 Jun 92 06:13:50 PDT
Received: by heavens-gate.lucid.com id AA10701g; Wed, 17 Jun 92 06:04:39 PDT
Received: from chenas.inria.fr by heavens-gate.lucid.com id AA10697g; Wed, 17 Jun 92 06:04:18 PDT
Received: from sid1.cenaath.cena.dgac.fr by chenas.inria.fr (5.65c8d/92.02.29)
	via Fnet-EUnet id AA13516; Wed, 17 Jun 1992 15:12:27 +0200 (MET)
Received: from geant.cenatls.cena.dgac.fr (geant-gw) by sid1.cenaath.cena.dgac.fr (4.1/SMI-4.1)
	id AA20156; Wed, 17 Jun 92 15:16:02 +0200
Received: from gogol.cenatls by geant.cenatls.cena.dgac.fr (4.1/SMI-4.1)
	id AA26984; Wed, 17 Jun 92 15:09:37 +0200
Date: Wed, 17 Jun 92 15:09:37 +0200
From: queinnec%mailhost.cenatls.cena.dgac.fr@lucid.com (Philippe Queinnec)
Message-Id: <9206171309.AA26984@geant.cenatls.cena.dgac.fr>
Received: by gogol.cenatls (4.1/SMI-4.1)
	id AA02514; Wed, 17 Jun 92 15:09:37 +0200
To: help Lucid Emacs <help-lucid-emacs@lucid.com>
Subject: extent, faces, etc...

I hope the extents and the faces will be fully documented in a future
release, because all information I manage to get is from the etc/NEWS file
and from lisp/info.el, but there is no true guide of progammation.

So, here is my problem: I would like to have some buffers in a proportional
font, and other ones in a fixed font. So let's play with extents and faces !
However I have a big problem: an extent is a region of a buffer, and it
cannot be defined as 'always all the buffer'. The only solution I have found
is to use after-change-function to resize the extent !

Anyway here is some code to illustrate it. To try it, save as
proportional.el, add a (require 'proportional) in your .emacs, and add
(use-proportional) in the *-mode-hook you want (I suppose your default font
is fixed). For instance, I have:

(add-hook 'tex-mode-hook 'use-proportional)
(add-hook 'vm-mode-hooks 'use-proportional)

[ This last one has the interesting effect that the summary buffer uses the
standard fixed font, whereas the buffer containing the text of a mail uses
the proportional font. ]

I would appreciate any commentaries, and even a complete lesson if jwz could
find a few minutes of spare time (which is very very improbable, isn't it?).

Phil.

;; No copyright, I don't want to be responsible of such a awful thing !
;; Written by Philippe Queinnec 17-Jun-92

(defvar the-proportional-font
  "-*-times-medium-r-*-*-14-*-*-*-*-*-*-*"
  "*The name of the proportional font.")

(defvar the-extent nil "Per buffer extent.")

(defun use-proportional ()
  (interactive)
  (make-local-variable 'the-extent)
  (or the-extent
      (setq the-extent (make-extent (point-min) (point-max))))
  (or (find-face 'proportional)
      (set-face-font (copy-face (get-face 'default) 'proportional)
                     the-proportional-font))
  (set-extent-attribute the-extent 'writable)
  (set-extent-attribute the-extent 'unhighlight)
  (set-extent-attribute the-extent 'visible)
  (set-extent-face the-extent 'proportional)
  (make-local-variable 'after-change-function)
  (setq after-change-function 'resize-extent))

(defun use-non-proportional ()
  (interactive)
  (and the-extent
       (set-extent-face the-extent 'default)))

(defun resize-extent (beg end size)
  (and the-extent
       (set-extent-endpoints the-extent (point-min) (point-max))))

(provide 'proportional)

From help-lucid-emacs-request@lucid.com  Wed Jun 17 07:34:38 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA23462; Wed, 17 Jun 92 07:34:38 PDT
Received: by heavens-gate.lucid.com id AA10807g; Wed, 17 Jun 92 07:24:43 PDT
Received: from amil.co.il by heavens-gate.lucid.com id AA10803g; Wed, 17 Jun 92 07:24:10 PDT
Received: from ipc8.AMIL ([192.86.90.18]) by amil.co.il (4.1/AMIL-M2)
	id AA28561; Wed, 17 Jun 92 17:32:07 IDT
Date: Wed, 17 Jun 92 17:32:07 IDT
From: danny@amil.co.il (Danny Bar-Dov)
Message-Id: <9206171432.AA28561@amil.co.il>
Received: by ipc8.AMIL (4.1/SMI-4.1)
	id AA09124; Wed, 17 Jun 92 17:32:03 IDT
To: help-lucid-emacs@lucid.com
Subject: Help with lpr.el package

For some reason, print-buffer lpr-buffer and their like
do not work for me in lemacs-19.1

I traced all function to find they all use  print-region-1 from
lpr.el. I used Edebug on that as well.

The problem is that everything looks OK, The list of
arguments generated for call-process-region which executes
the unix command, looks fine. Yet, nothing gets printed.

I checked both call-process-region and the whole generated
command from a shell.

They work fine.

So. Does anyone have and idea ?

Thanks.

Danny.


---------------------
Dan Bar Dov

Applied Materials (Israel)

Email:        danny@amil.co.il
Phone: office 972-3-499573
       home   972-3-5469625
TimeZone:     GMT-2

--

---------------------
Dan Bar Dov

Applied Materials (Israel)

Email:        danny@amil.co.il
Phone: office 972-3-499573
       home   972-3-5469625
TimeZone:     GMT-2

From help-lucid-emacs-request@lucid.com  Wed Jun 17 11:25:15 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA24200; Wed, 17 Jun 92 11:25:15 PDT
Received: by heavens-gate.lucid.com id AA11461g; Wed, 17 Jun 92 11:15:41 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA11456g; Wed, 17 Jun 92 11:15:29 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA13057; Wed, 17 Jun 92 11:24:03 PDT
Date: Wed, 17 Jun 92 11:24:03 PDT
Message-Id: <9206171824.AA13057@thalidomide.lucid>
X-Windows: The defacto substandard.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: galagun@cfd.cs.sandia.gov (Glenn Laguna)
Cc: help-lucid-emacs@lucid.com
Subject: Re: Trouble binding function keys
In-Reply-To: Glenn Laguna's message of Wed 17-Jun-92 06:15:27 MDT <9206171215.AA02243@cfd.cfd.sandia.gov>
References: <9206171215.AA02243@cfd.cfd.sandia.gov>

(define-key 'f1 'command-bound-to-f1)

Replace f1 with whatever emacs beeps about when you press r7 (the sun 
keysyms tend not to have obvious names.)

	-- Jamie

From help-lucid-emacs-request@lucid.com  Wed Jun 17 11:46:01 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA24262; Wed, 17 Jun 92 11:46:01 PDT
Received: by heavens-gate.lucid.com id AA11550g; Wed, 17 Jun 92 11:36:31 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA11546g; Wed, 17 Jun 92 11:36:18 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA13145; Wed, 17 Jun 92 11:44:52 PDT
Date: Wed, 17 Jun 92 11:44:52 PDT
Message-Id: <9206171844.AA13145@thalidomide.lucid>
X-Windows: A moment of convenience, a lifetime of regret.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: queinnec%mailhost.cenatls.cena.dgac.fr@lucid.com (Philippe Queinnec)
Cc: help Lucid Emacs <help-lucid-emacs@lucid.com>
Subject: Re: extent, faces, etc...
In-Reply-To: Philippe Queinnec's message of Wed 17-Jun-92 15:09:37 +0200 <9206171309.AA26984@geant.cenatls.cena.dgac.fr>
References: <9206171309.AA26984@geant.cenatls.cena.dgac.fr>

I think you're right about there being no (good) way to make a whole buffer
be in a particular font.  We were planning to have the "closedness" of the
endpoints of extents be a property of the extent, so that you could control
whether an insertion exactly at either endpoint of an extent went into the
extent or out of it.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Thu Jun 18 07:09:33 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA27494; Thu, 18 Jun 92 07:09:33 PDT
Received: by heavens-gate.lucid.com id AA13979g; Thu, 18 Jun 92 05:25:56 PDT
Received: from STSCI.EDU by heavens-gate.lucid.com id AA13975g; Thu, 18 Jun 92 05:25:50 PDT
Received: Thu, 18 Jun 92 08:34:21 EDT from MARIAN.STSCI.EDU (kaos.stsci.edu) by stsci.edu (4.1)
Received: Thu, 18 Jun 92 08:32:41 EDT by kaos.stsci.edu (4.1)
Date: Thu, 18 Jun 92 08:32:41 EDT
From: Bob Jackson <jackson@stsci.edu>
Message-Id: <9206181232.AA15403@MARIAN.STSCI.EDU>
To: help-lucid-emacs@lucid.com
Subject: Thilly Questions

Upon startup I get the message

	Error in init file: Symbol's value as variable is void: mouse-map

However I don't get that message when starting Emacs or Epoch

Upon selecting an subject or article in Gnus, I get

	Won't change only window

I can change to the subject buffer, but I never get an article
buffer.

Any ideas how to recover the functionality present in Emacs 18.57?



					Bob Jackson
					

From help-lucid-emacs-request@lucid.com  Thu Jun 18 07:09:33 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA27495; Thu, 18 Jun 92 07:09:33 PDT
Received: by heavens-gate.lucid.com id AA14051g; Thu, 18 Jun 92 06:07:31 PDT
Received: from relay2.UU.NET by heavens-gate.lucid.com id AA14047g; Thu, 18 Jun 92 06:07:24 PDT
Received: from ingr.ingr.com by relay2.UU.NET with SMTP 
	(5.61/UUNET-internet-primary) id AA28191; Thu, 18 Jun 92 09:15:47 -0400
Received: by ingr.ingr.com (5.61/INGR-1.1)
	id AA14758; Thu, 18 Jun 92 08:20:38 -0500
Received: from simpson.turtles by turtles (4.1/SMI-4.1)
	id AA29311; Thu, 18 Jun 92 16:07:52 IDT
Received: by simpson.turtles (4.1/SMI-4.1)
	id AA23288; Thu, 18 Jun 92 16:08:04 IDT
From: matis!amir@uunet.UU.NET (Amir Katz)
Message-Id: <9206181308.AA23288@simpson.turtles>
Subject: adding item to menubar
To: help-lucid-emacs@lucid.com (Lucid Emacs help M.L.)
Date: Thu, 18 Jun 92 16:08:03 EET DST
Organization: SEE Technologies Ltd.
Reply-To: matis!ingr.COM!amir%matis.UUCP@uunet.UU.NET
Followup-To: amir%matis.UUCP@ingr.COM
X-Mailer: ELM [version 2.3 PL11]

Lucidos,
I'm trying to add something to the menubar. I was told to use the function
'add-menu-item' (defined in menubar.el). When I try this in the scratch buffer:
   (add-menu-item ((\"File\") "kuku" ajk-revert-buffer t))
I get:
    Invalid function (\"file\")
What am I doing wrong? I'm no elisp expert, mind you.

Pls respond to the addresses below.
-- 
/* Amir J. Katz          | UUCP:     uunet!ingr!matis!amir               */
/* System Specialist     | Internet: amir%matis.UUCP@ingr.COM            */
/* SEE Technologies Ltd. | Voice:    +972 52-584684, Fax: +972 52-543917 */

From help-lucid-emacs-request@lucid.com  Thu Jun 18 08:37:15 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA27754; Thu, 18 Jun 92 08:37:15 PDT
Received: by heavens-gate.lucid.com id AA14336g; Thu, 18 Jun 92 08:26:27 PDT
Received: from cs.utexas.edu by heavens-gate.lucid.com id AA14332g; Thu, 18 Jun 92 08:26:11 PDT
Received: from titan.tsd.arlut.utexas.edu by cs.utexas.edu (5.64/1.132) with SMTP
	id AA08248; Thu, 18 Jun 92 10:34:32 -0500
Received: from orc.tsd.sun by titan.tsd.arlut.utexas.edu (4.1/SMI-4.0client)
	id AA26255; Wed, 17 Jun 92 10:43:48 CDT
Date: Wed, 17 Jun 92 10:43:48 CDT
From: rand@titan.tsd.arlut.utexas.edu (Joel Rand)
Message-Id: <9206171543.AA26255@titan.tsd.arlut.utexas.edu>
To: help-lucid-emacs@lucid.com
Subject: Unable to start lemacs


I ftp'ed, un-compressed, and un-tarred the sun4 executable version of lemacs without error. When I try to execute the program, I get:

This version of emacs only runs under X Windows (for now).
Check that your $DISPLAY environment variable is properly set.

Well, my $DISPLAY variables is indeed set, and I am running under X Windows and the Motif window manager (mwm). Is there any thing else I need to do?

Thanks,

Joel A. Rand
Applied Research Laboratories
The University of Texas at Austin

From help-lucid-emacs-request@lucid.com  Thu Jun 18 10:51:59 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA28178; Thu, 18 Jun 92 10:51:59 PDT
Received: by heavens-gate.lucid.com id AA14668g; Thu, 18 Jun 92 10:40:06 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA14664g; Thu, 18 Jun 92 10:39:59 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA01069; Thu, 18 Jun 92 10:48:34 PDT
Date: Thu, 18 Jun 92 10:48:34 PDT
Message-Id: <9206181748.AA01069@thalidomide.lucid>
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: Bob Jackson <jackson@stsci.edu>
Cc: help-lucid-emacs@lucid.com
Subject: Re: Thilly Questions
In-Reply-To: Bob Jackson's message of Thu 18-Jun-92 08:32:41 EDT <9206181232.AA15403@MARIAN.STSCI.EDU>
References: <9206181232.AA15403@MARIAN.STSCI.EDU>

Messages like this should be sent to bug-lucid-emacs.

In message <9206181232.AA15403@MARIAN.STSCI.EDU> Bob Jackson wrote:
>
> Upon startup I get the message
> 
> 	Error in init file: Symbol's value as variable is void: mouse-map

I'll bet that doesn't happen if you run with -q.

> Upon selecting an subject or article in Gnus, I get
> 
> 	Won't change only window

You're probably loading your own version of GNUS instead of the one we
shipped. 

	-- Jamie

From help-lucid-emacs-request@lucid.com  Thu Jun 18 10:57:26 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA28183; Thu, 18 Jun 92 10:57:26 PDT
Received: by heavens-gate.lucid.com id AA14695g; Thu, 18 Jun 92 10:46:10 PDT
Received: from STSCI.EDU by heavens-gate.lucid.com id AA14691g; Thu, 18 Jun 92 10:45:59 PDT
Received: Thu, 18 Jun 92 13:54:27 EDT from MARIAN.STSCI.EDU (kaos.stsci.edu) by stsci.edu (4.1)
Received: Thu, 18 Jun 92 13:52:47 EDT by kaos.stsci.edu (4.1)
Date: Thu, 18 Jun 92 13:52:47 EDT
From: Bob Jackson <jackson@stsci.edu>
Message-Id: <9206181752.AA17667@MARIAN.STSCI.EDU>
To: jwz@lucid.com
Cc: help-lucid-emacs@lucid.com
In-Reply-To: Jamie Zawinski's message of Thu, 18 Jun 92 10:48:34 PDT <9206181748.AA01069@thalidomide.lucid>
Subject: Re: Thilly Questions

Thanks for the prompt reply.
I did not send it to bugs, because I feared
I was stupid and the code was correct.

From help-lucid-emacs-request@lucid.com  Thu Jun 18 14:14:00 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA29512; Thu, 18 Jun 92 14:14:00 PDT
Received: by heavens-gate.lucid.com id AA15245g; Thu, 18 Jun 92 14:03:02 PDT
Received: from relay1.UU.NET by heavens-gate.lucid.com id AA15239g; Thu, 18 Jun 92 14:02:53 PDT
Received: from uunet.uu.net (via LOCALHOST.UU.NET) by relay1.UU.NET with SMTP 
	(5.61/UUNET-internet-primary) id AA22016; Thu, 18 Jun 92 17:11:22 -0400
Received: from edsr.UUCP by uunet.uu.net with UUCP/RMAIL
	(queueing-rmail) id 171028.12936; Thu, 18 Jun 1992 17:10:28 EDT
Received: from tantalum.eds.com (abqtoalh) by edsr.eds.com
	id AA04946; Thu, 18 Jun 92 15:55:10 CDT
Received: from arsenic.eds.com by tantalum.eds.com (4.1/ALBUQUERQUE-1.1)
	id AA29250; Thu, 18 Jun 92 14:55:23 MDT
Received: by arsenic.eds.com (4.1/ALBSUB-1.3)
	id AA05088; Thu, 18 Jun 92 14:55:22 MDT
Date: Thu, 18 Jun 92 14:55:22 MDT
From: edsr!tantalum!cheeks@uunet.UU.NET (Mark Costlow)
Message-Id: <9206182055.AA05088@arsenic.eds.com>
To: uunet!lucid.com!jwz@uunet.UU.NET
Cc: help-lucid-emacs@lucid.com
In-Reply-To: Jamie Zawinski's message of Wed, 17 Jun 92 01:37:51 PDT <9206170837.AA11744@thalidomide.lucid>
Subject: Extents, faces, etc.


On Wed, 17 Jun 92 01:37:51 PDT,
Jamie Zawinski <uunet!lucid.com!jwz> said:
Jamie> X-Windows: Form follows malfunction.

Jamie> In message <9206170010.AA26085@arsenic.eds.com> Mark Costlow wrote:
>
> One thing I would like to have in lemacs is a snazzier debugger
> interface. ...

Jamie> Generally, nested defuns should be avoided.  I would instead put
Jamie> this code in a seperate file which was `require'd by the mode-hook.

Thanks, will do.


> 	    I get this message:
> 
> 		"Deleting extent in killed buffed" [sic]

Jamie> Probably this is because the sentinel is being called after the
Jamie> buffer is killed, and trying to delete the extent again.  Look at
Jamie> the extent to see if it's dead.

When I call extent-buffer before killing the extent, it tells me the buffer
is the LRU source code buffer (which is still alive), not the gdb buffer.


On another front, I'm trying to change the name of a screen with the
following:

(modify-screen-parameters original-screen '((name . "newname")))

But it has no effect.  Some of the comments in the NEWS file make me think
that perhaps modify-screen-parameters is not acually implemented yet.  Is
that the case, or am I doing something stupid?

Thanks,

>>Chx
--
cheeks@edsr.eds.com    or     ...uunet!edsr!cheeks

From help-lucid-emacs-request@lucid.com  Thu Jun 18 15:02:23 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA29669; Thu, 18 Jun 92 15:02:23 PDT
Received: by heavens-gate.lucid.com id AA15364g; Thu, 18 Jun 92 14:48:41 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA15360g; Thu, 18 Jun 92 14:48:35 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA01563; Thu, 18 Jun 92 14:57:13 PDT
Date: Thu, 18 Jun 92 14:57:13 PDT
Message-Id: <9206182157.AA01563@thalidomide.lucid>
X-Windows: Dissatisfaction guaranteed.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: edsr!tantalum!cheeks@uunet.UU.NET (Mark Costlow)
Cc: help-lucid-emacs@lucid.com
Subject: Re: Extents, faces, etc.
In-Reply-To: Mark Costlow's message of Thu 18-Jun-92 14:55:22 MDT <9206182055.AA05088@arsenic.eds.com>
References: <9206170837.AA11744@thalidomide.lucid>
	<9206182055.AA05088@arsenic.eds.com>

In message <9206182055.AA05088@arsenic.eds.com> Mark Costlow wrote:
>
> On another front, I'm trying to change the name of a screen with the
> following:
> 
> (modify-screen-parameters original-screen '((name . "newname")))
> 
> But it has no effect.  Some of the comments in the NEWS file make me think
> that perhaps modify-screen-parameters is not acually implemented yet.  Is
> that the case, or am I doing something stupid?

Well, several things about modify-screen-parameters don't work, but changing
the name isn't intended to work.  Since the name of a screen is used to look
up resources in the X database, changing its name could be confusing.  You
might expect the resource database to be consulted again.  But maybe not,
maybe renaming should work, with the condition that the resources are only
consulted when the screen is first created.  The problem is that people
might expect the sequence "make a screen; set its name" to parse resources
correctly, which it can't.  A solution to this would be to make "name" a
manditory parameter of x-create-screen.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Thu Jun 18 16:02:21 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA29795; Thu, 18 Jun 92 16:02:21 PDT
Received: by heavens-gate.lucid.com id AA15566g; Thu, 18 Jun 92 15:51:03 PDT
Received: from relay2.UU.NET by heavens-gate.lucid.com id AA15562g; Thu, 18 Jun 92 15:50:56 PDT
Received: from uunet.uu.net (via LOCALHOST.UU.NET) by relay2.UU.NET with SMTP 
	(5.61/UUNET-internet-primary) id AA24628; Thu, 18 Jun 92 18:59:34 -0400
Received: from edsr.UUCP by uunet.uu.net with UUCP/RMAIL
	(queueing-rmail) id 185814.8861; Thu, 18 Jun 1992 18:58:14 EDT
Received: from tantalum.eds.com (abqtoalh) by edsr.eds.com
	id AA06559; Thu, 18 Jun 92 17:19:56 CDT
Received: from arsenic.eds.com by tantalum.eds.com (4.1/ALBUQUERQUE-1.1)
	id AA00401; Thu, 18 Jun 92 16:20:06 MDT
Received: by arsenic.eds.com (4.1/ALBSUB-1.3)
	id AA05442; Thu, 18 Jun 92 16:20:04 MDT
Date: Thu, 18 Jun 92 16:20:04 MDT
From: edsr!tantalum!cheeks@uunet.UU.NET (Mark Costlow)
Message-Id: <9206182220.AA05442@arsenic.eds.com>
To: uunet!lucid.com!jwz@uunet.UU.NET
Cc: help-lucid-emacs@lucid.com
In-Reply-To: Jamie Zawinski's message of Thu, 18 Jun 92 14:57:13 PDT <9206182157.AA01563@thalidomide.lucid>
Subject: Extents, faces, etc.


On Thu, 18 Jun 92 14:57:13 PDT,
Jamie Zawinski <uunet!lucid.com!jwz> said:
Jamie> X-Windows: Dissatisfaction guaranteed.

> In message <9206182055.AA05088@arsenic.eds.com> Mark Costlow wrote:
>
> [ ... trying to change a screen's name ... ]
> 
> (modify-screen-parameters original-screen '((name . "newname")))
> 
> But it has no effect.  [...]

Jamie> Well, several things about modify-screen-parameters don't work, but
Jamie> changing the name isn't intended to work.  Since the name of a
Jamie> screen is used to look up resources in the X database [...]

Ok, I see your point.  Maybe I should tell you what I was doing and you can
tell me if it makes sense.  I wanted to start up a lemacs which came up
with one screen, whose name was not "emacs".  Is that a reasonable thing to
want to do?

Now that I think of it, what I was planning to do was look up the screen by
name later, and that doesn't seem to be possible, so maybe it doesn't
matter.

[ PS - I do understand the distinction between the screen's window name and
the screen's name ].

>>Chx

From help-lucid-emacs-request@lucid.com  Thu Jun 18 16:11:11 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA29809; Thu, 18 Jun 92 16:11:11 PDT
Received: by heavens-gate.lucid.com id AA15585g; Thu, 18 Jun 92 15:59:51 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA15581g; Thu, 18 Jun 92 15:59:41 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA01981; Thu, 18 Jun 92 16:08:17 PDT
Date: Thu, 18 Jun 92 16:08:17 PDT
Message-Id: <9206182308.AA01981@thalidomide.lucid>
X-Windows: Form follows malfunction.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: edsr!tantalum!cheeks@uunet.UU.NET (Mark Costlow)
Cc: help-lucid-emacs@lucid.com
Subject: Re: Extents, faces, etc.
In-Reply-To: Mark Costlow's message of Thu 18-Jun-92 16:20:04 MDT <9206182220.AA05442@arsenic.eds.com>
References: <9206182157.AA01563@thalidomide.lucid>
	<9206182220.AA05442@arsenic.eds.com>

In message <9206182220.AA05442@arsenic.eds.com> Mark Costlow wrote:
>
> I wanted to start up a lemacs which came up with one screen, whose name
> was not "emacs".  Is that a reasonable thing to want to do?

Well, it may be reasonable, but it's not currently possible.  The first
screen is always named "emacs".  Why do you want to do this?

> Now that I think of it, what I was planning to do was look up the screen by
> name later, and that doesn't seem to be possible, so maybe it doesn't
> matter.

See the function get-screen-for-buffer in screen.el for code which does
that.  Maybe it does something like what you're trying to do.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Thu Jun 18 16:30:12 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA29854; Thu, 18 Jun 92 16:30:12 PDT
Received: by heavens-gate.lucid.com id AA15665g; Thu, 18 Jun 92 16:17:56 PDT
Received: from bunyip.cc.uq.oz.au by heavens-gate.lucid.com id AA15661g; Thu, 18 Jun 92 16:17:44 PDT
Received: from citrus.citr.uq.oz.au by bunyip.cc.uq.oz.au with SMTP (PP) 
          id <04195-0@bunyip.cc.uq.oz.au>; Fri, 19 Jun 1992 09:25:39 +0000
Received: from mandarin (mandarin.citr.uq.oz.au) 
          by citrus.citr.uq.oz.au (5.65c/Citr-sub-serv-1) id <AA06369@j>;
          Fri, 19 Jun 1992 09:24:19 +1000
Received: from pomelo by mandarin (4.1/Citr-sub-serv-1) id <AA25238@j>;
          Fri, 19 Jun 92 09:25:11 EST
Received: from localhost by pomelo (4.1/Citr-sub-client-1) id <AA06899@j>;
          Fri, 19 Jun 92 09:25:11 EST
Message-Id: <9206182325.AA06899@pomelo>
To: help-lucid-emacs@lucid.com
Cc: anthony@citr.uq.oz.au
Subject: Lucid Emacs for HP 9000/730
Date: Fri, 19 Jun 92 09:25:10 +1000
From: anthony%citr.uq.oz.au@lucid.com


Has anyone got a working Lucid-19.1 emacs for the HP 9000/730 machine?
If so, a patch file from the standard distribution or the edited
source would be greatly appreciated.

We run HPUX-8, gcc 2.1, X11R5 and Motif-1.1.

I have successfully linked xemacs but it dies with a segmentation 
violation on startup and gcc 2.1 has no debugging information in the 
object files making it difficult to debug.

Thanks in advance,
Anthony.

------------------------------------------------------------------------
 Anthony Rohde
 Centre for Information Technology Research | email: anthony@citr.uq.oz.au
 University of Queensland		    | phone: +61 7 365 4321
 Queensland, Australia, 4072		    | fax:   +61 7 365 4399
------------------------------------------------------------------------

From help-lucid-emacs-request@lucid.com  Thu Jun 18 21:40:14 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA00653; Thu, 18 Jun 92 21:40:14 PDT
Received: by heavens-gate.lucid.com id AA16336g; Thu, 18 Jun 92 21:29:56 PDT
Received: from bunyip.cc.uq.oz.au by heavens-gate.lucid.com id AA16332g; Thu, 18 Jun 92 21:29:47 PDT
Received: from citrus.citr.uq.oz.au by bunyip.cc.uq.oz.au with SMTP (PP) 
          id <04357-0@bunyip.cc.uq.oz.au>; Fri, 19 Jun 1992 14:38:05 +0000
Received: from mandarin (mandarin.citr.uq.oz.au) 
          by citrus.citr.uq.oz.au (5.65c/Citr-sub-serv-1) id <AA07439@j>;
          Fri, 19 Jun 1992 14:37:16 +1000
Received: from pomelo by mandarin (4.1/Citr-sub-serv-1) id <AA25424@j>;
          Fri, 19 Jun 92 14:38:09 EST
Received: from localhost by pomelo (4.1/Citr-sub-client-1) id <AA07409@j>;
          Fri, 19 Jun 92 14:38:08 EST
Message-Id: <9206190438.AA07409@pomelo>
To: help-lucid-emacs@lucid.com
Cc: anthony@citr.uq.oz.au
Subject: Scroll bar...
Date: Fri, 19 Jun 92 14:38:08 +1000
From: anthony%citr.uq.oz.au@lucid.com


We are happy with the popup menus supplied by Lucid, but would like
to have a scroll bar per buffer.

Is this planned?

Cheers,
Anthony.

------------------------------------------------------------------------
 Anthony Rohde
 Centre for Information Technology Research | email: anthony@citr.uq.oz.au
 University of Queensland		    | phone: +61 7 365 4321
 Queensland, Australia, 4072		    | fax:   +61 7 365 4399
------------------------------------------------------------------------

From help-lucid-emacs-request@lucid.com  Thu Jun 18 21:48:40 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA00680; Thu, 18 Jun 92 21:48:40 PDT
Received: by heavens-gate.lucid.com id AA16359g; Thu, 18 Jun 92 21:39:09 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA16355g; Thu, 18 Jun 92 21:38:50 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA02755; Thu, 18 Jun 92 21:47:31 PDT
Date: Thu, 18 Jun 92 21:47:31 PDT
Message-Id: <9206190447.AA02755@thalidomide.lucid>
X-Windows: Putting new limits on productivity.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: anthony%citr.uq.oz.au@lucid.com
Cc: anthony@citr.uq.oz.au, help-lucid-emacs@lucid.com
Subject: Re: Scroll bar...
In-Reply-To: anthony%citr.uq.oz.au@lucid.com's message of Fri 19-Jun-92 14:38:08 +1000 <9206190438.AA07409@pomelo>
References: <9206190438.AA07409@pomelo>

Yes, it's planned, but no estimates of when.  It's mentioned in the NEWS file.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Fri Jun 19 03:02:43 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA02120; Fri, 19 Jun 92 03:02:43 PDT
Received: by heavens-gate.lucid.com id AA16870g; Fri, 19 Jun 92 02:51:47 PDT
Received: from sun2.nsfnet-relay.ac.uk by heavens-gate.lucid.com id AA16866g; Fri, 19 Jun 92 02:51:41 PDT
Via: cs.city.ac.uk; Fri, 19 Jun 1992 10:59:17 +0100
Received: from Messages.8.5.N.CUILIB.3.45.SNAP.NOT.LINKED.barney.cs.city.ac.uk.sun4.40 
          via MS.5.6.barney.cs.city.ac.uk.sun4_40;
          Fri, 19 Jun 1992 11:01:56 +0100 (BST)
Resent-Message-Id: <weEP2IW__5g88q_=0T@cs.city.ac.uk>
Resent-Date: Fri, 19 Jun 1992 11:01:56 +0100 (BST)
Resent-From: Andy Whitcroft <andy@cs.city.ac.uk>
If-Type-Unsupported: send
Resent-To: help-lucid-emacs@lucid.com
Return-Path: <andy>
Message-Id: <seEOvsq__5g88q__Y3@cs.city.ac.uk>
Date: Fri, 19 Jun 1992 10:55:04 +0100 (BST)
From: Andy Whitcroft <andy@cs.city.ac.uk>
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
To: help-lucid@lucid.com
Subject: VI Modes.

I am having a bit of trouble with the VI modes that come with lucid. 
vip and evi both suffer from the following problem.  In vip it occurs as
you enter insert mode, and evi breaks at load time.  In both cases you
get this error.

can't bind 27: this map contains meta-bindings: #<xxxx>

Having looked at the code it seems that a new restriction on binding ESC
(or the meta-prefix-key) has been added; mabe in Emacs 19?

Has anyone got a VI mode of any type to work correctly?

Andy.
Andy Whitcroft				     E-mail: andy@cs.city.ac.uk
Systems Architecture Research Centre,	
City University, London, UK.		     Tel: +44 71 477 8000 x8551


From help-lucid-emacs-request@lucid.com  Fri Jun 19 03:25:54 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA02196; Fri, 19 Jun 92 03:25:54 PDT
Received: by heavens-gate.lucid.com id AA16909g; Fri, 19 Jun 92 03:14:20 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA16905g; Fri, 19 Jun 92 03:14:13 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA03529; Fri, 19 Jun 92 03:22:48 PDT
Date: Fri, 19 Jun 92 03:22:48 PDT
Message-Id: <9206191022.AA03529@thalidomide.lucid>
X-Windows: The art of incompetence.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: Andy Whitcroft <andy@cs.city.ac.uk>
Cc: help-lucid-emacs@lucid.com
Subject: Re: VI Modes.
In-Reply-To: Andy Whitcroft's message of Fri 19-Jun-92 10:55:04 +0100 <seEOvsq__5g88q__Y3@cs.city.ac.uk>
References: <seEOvsq__5g88q__Y3@cs.city.ac.uk>

Oops.  You can work around this by binding meta-prefix-char to -1 before
loading evi, as in 

	(let ((meta-prefix-char -1)) (load-library "evi"))

The right fix is to bind it to this in evi.el around the calls to 
define-key that bind ESC.  The reason for this is that evi makes keybindings
using the prevailing value of meta-prefix-char at load-time, but those
keymaps will only be consulted in a context where meta-prefix-char has a
different value.

The reason this new restriction exists is... complicated.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Fri Jun 19 09:15:17 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA03327; Fri, 19 Jun 92 09:15:17 PDT
Received: by heavens-gate.lucid.com id AA17646g; Fri, 19 Jun 92 09:04:47 PDT
Received: from relay2.UU.NET by heavens-gate.lucid.com id AA17641g; Fri, 19 Jun 92 09:04:37 PDT
Received: from uunet.uu.net (via LOCALHOST.UU.NET) by relay2.UU.NET with SMTP 
	(5.61/UUNET-internet-primary) id AA29225; Fri, 19 Jun 92 12:13:14 -0400
Received: from edsr.UUCP by uunet.uu.net with UUCP/RMAIL
	(queueing-rmail) id 121258.20629; Fri, 19 Jun 1992 12:12:58 EDT
Received: from tantalum.eds.com (abqtoalh) by edsr.eds.com
	id AA15859; Fri, 19 Jun 92 11:06:59 CDT
Received: from arsenic.eds.com by tantalum.eds.com (4.1/ALBUQUERQUE-1.1)
	id AA28784; Fri, 19 Jun 92 10:07:12 MDT
Received: by arsenic.eds.com (4.1/ALBSUB-1.3)
	id AA07414; Fri, 19 Jun 92 10:07:11 MDT
Date: Fri, 19 Jun 92 10:07:11 MDT
From: edsr!tantalum!cheeks@uunet.UU.NET (Mark Costlow)
Message-Id: <9206191607.AA07414@arsenic.eds.com>
To: uunet!lucid.com!jwz@uunet.UU.NET
Cc: help-lucid-emacs@lucid.com
In-Reply-To: Jamie Zawinski's message of Thu, 18 Jun 92 16:08:17 PDT <9206182308.AA01981@thalidomide.lucid>
Subject: Extents, faces, etc.


On Thu, 18 Jun 92 16:08:17 PDT,
Jamie Zawinski <uunet!lucid.com!jwz> said:
Jamie> Site: 
Jamie> X-Windows: Form follows malfunction.

Jamie> In message <9206182220.AA05442@arsenic.eds.com> Mark Costlow wrote:
>
> I wanted to start up a lemacs which came up with one screen, whose name
> was not "emacs".  Is that a reasonable thing to want to do?

Jamie> Well, it may be reasonable, but it's not currently possible.  The first
Jamie> screen is always named "emacs".  Why do you want to do this?

I like to start one "distinguished" emacs for my X session which is running
the gnuserv edit server.  I name this emacs "edit-server".  I have my
"editor" specification for various applications like xrn set to
"gnuclient".  For xbiff, I have my mail reading command set to "gnudoit
'(rmail)'", so that when I click on my xbiff my edit-server emacs goes into
rmail mode.  The problem is that I want any invocation of gnuclient or
gnudoit to cause my edit-server to be de-iconified and/or raised to the top
of the window stacking order.  If the screens were named, I'd just use
something like (de-iconify-screen (get-screen-by-name "edit-server")).

Well, anyway, I think what I'll do is change gnuserv.el to raise the first
screen on the screen-list, and make sure that only one screen exists for
that emacs.  I don't think get-screen-for-buffer will help here since I
don't know that the buffer in question will be mapped to screen I want.

(After re-reading this, I'm not sure how much sense it makes

Jamie> See the function get-screen-for-buffer in screen.el for code which does
Jamie> that.  Maybe it does something like what you're trying to do.

I'll take a look.


BTW, I've found this key binding useful:

      (defun kill-screen ()
	(interactive)
	(if (= (length (screen-list)) 1)
	    (save-buffers-kill-emacs)
	  (delete-screen))
	)
      (global-set-key  "\C-x\C-c"    'kill-screen)	

>>Chx

From help-lucid-emacs-request@lucid.com  Fri Jun 19 10:48:40 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA03713; Fri, 19 Jun 92 10:48:40 PDT
Received: by heavens-gate.lucid.com id AA17991g; Fri, 19 Jun 92 10:38:57 PDT
Received: from moebius.loria.fr by heavens-gate.lucid.com id AA17980g; Fri, 19 Jun 92 10:38:35 PDT
Received: by moebius.loria.fr id AA00542
  (5.65c+/IDA-1.4.3 for help-lucid-emacs@lucid.com); Fri, 19 Jun 92 19:45:15 +0200
Date: Fri, 19 Jun 92 19:45:15 +0200
From: Guido Bosch <Guido.Bosch%loria.fr@lucid.com>
Message-Id: <9206191745.AA00542@moebius.loria.fr>
To: help-lucid-emacs@lucid.com
Subject: popup menu for vm-mode
Reply-To: Guido BOSCH <bosch%loria.fr@lucid.com>

This might be interesting for VM users on Lucid Emacs 19:

;; Mode specific menu for vm-mode (button 3) and a
;; message-select-by-mouse hack (button 2). Put it in your your .vm
;; file and enjoy.

(if emacs-19 ;; my compatibility variable. Need probably be changed
    (progn
      (define-key vm-mode-map 'button2 'vm-summary-mouse-goto)

      (defun vm-summary-mouse-goto (event)
	(interactive "@e")
	"Set the pointer down, then jump that that message."
	(mouse-set-point event)
	(vm-scroll-forward))


      ;; Menu support for VM 
      (define-key vm-mode-map 'button3 'vm-mode-menu)

      (defun vm-mode-menu (event)
	(interactive "e")
	(select-window (event-window event))
	(popup-menu vm-mode-menu))

      (setq vm-mode-menu
	    '(nil
	      "View Mail"
	      "----"
	      ["Next Message" vm-next-message t]
	      ["Previous Message" vm-previous-message t]
	      ("More Moving Around ..."
	       ["Goto Message Last Seen" vm-goto-message-last-seen t]
	       ["Goto Message" vm-goto-message t]
	       ["Move Message Backward" vm-move-message-backward t]
	       ["Move Message Forward" vm-move-message-forward t]
	       ["Next Message" vm-Next-message t]
	       ["Next Unread Message" vm-next-unread-message t]
	       ["Previous Message" vm-Previous-message t]
	       ["Previous Unread Message" vm-previous-unread-message t]
	       )
	      "----"
	      ["Scroll Forward" vm-scroll-forward t]
	      ["Scroll Backward" vm-scroll-backward t]
	      ["Beginning Of Message" vm-beginning-of-message t]
	      ["End Of Message" vm-end-of-message t]
	      "----"
	      ["Summarize" vm-summarize t]
	      ["Get New Mail" vm-get-new-mail t]
	      ("Archieve Messages"
	       ["Save Message" vm-save-message t]
	       ["Save Message Sans Headers" vm-save-message-sans-headers t]
	       ["Auto Archive Messages" vm-auto-archive-messages t]
	       ["Delete Message" vm-delete-message t]
	       ["Delete Message Backward" vm-delete-message-backward t]
	       ["Undelete Message" vm-undelete-message t]
	       ["Unread Message" vm-unread-message t]
	       ["Expunge Folder" vm-expunge-folder t]
	       ["Visit Folder" vm-visit-folder t]
	       ["Visit Virtual Folder" vm-visit-virtual-folder t]
	       ["Save Buffer" vm-save-buffer t]
	       ["Save Folder" vm-save-folder t]
	       ["Write File" vm-write-file t]
	       )
	      ("Sending Messages"
	       ["Mail" vm-mail t]
	       ["Reply" vm-reply t]
	       ["Reply Include Text" vm-reply-include-text t]
	       ["Followup" vm-followup t]
	       ["Followup Include Text" vm-followup-include-text t]
	       ["Forward Message" vm-forward-message t]
	       ["Resend Message" vm-resend-message t]
	       ["Resend Bounced Message" vm-resend-bounced-message t]
	       ["Continue Composing Message" vm-continue-composing-message t]
	       )

	      ("Marking"
	       ["Mark Message" vm-mark-message t]
	       ["Unmark Message" vm-unmark-message t]
	       ["Mark All Messages" vm-mark-all-messages t]
	       ["Clear All Marks" vm-clear-all-marks t]
	       ["Next Command Uses Marks" vm-next-command-uses-marks t]
	       ["Mark Help" vm-mark-help t]
	       )

	      ("Digest"
	       ["Send Digest" vm-send-digest t]
	       ["Burst Digest" vm-burst-digest t]
	       )

	      ("Window Configuration"
	       ["Apply Window Configuration" vm-apply-window-configuration t]
	       ["Delete Window Configuration" vm-delete-window-configuration t]
	       ["Save Window Configuration" vm-save-window-configuration t]
	       ["Window Help" vm-window-help t]
	       )

	      ("Miscellaneous"
	       ["Edit Message" vm-edit-message t]
       	       ["Group Messages" vm-group-messages t]
	       ["Expose Hidden Headers" vm-expose-hidden-headers t]
	       ["Isearch Forward" vm-isearch-forward t]
	       ["Discard Cached Data" vm-discard-cached-data t]
	       ["Kill Subject" vm-kill-subject t]
	       ["Load Rc" vm-load-rc t]
	       ["Pipe Message To Command" vm-pipe-message-to-command t]
	       ["Shell Command" shell-command t]
	       ["Show Copying Restrictions" vm-show-copying-restrictions t]
	       ["Show No Warranty" vm-show-no-warranty t]

	       ("BBDB"
		["Show Sender" bbdb/vm-show-sender t]
		["Edit Notes" bbdb/vm-edit-notes t]))
	      "----"
	      ["Help" vm-help t]
	      ["Undo" vm-undo t]
	      ["Quit" vm-quit t]
	      ["Quit No Change" vm-quit-no-change t]
	      ))))

From help-lucid-emacs-request@lucid.com  Fri Jun 19 11:00:16 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA03735; Fri, 19 Jun 92 11:00:16 PDT
Received: by heavens-gate.lucid.com id AA18033g; Fri, 19 Jun 92 10:48:57 PDT
Received: from life.ai.mit.edu by heavens-gate.lucid.com id AA18029g; Fri, 19 Jun 92 10:48:49 PDT
Received: from espresso (espresso.ai.mit.edu) by life.ai.mit.edu (4.1/AI-4.10) id AA03840; Fri, 19 Jun 92 13:57:21 EDT
From: misha@ai.mit.edu (Mike Bolotski)
Received: by espresso (4.1/AI-4.10) id AA04680; Fri, 19 Jun 92 13:55:43 EDT
Date: Fri, 19 Jun 92 13:55:43 EDT
Message-Id: <9206191755.AA04680@espresso>
To: help-lucid-emacs@lucid.com
Subject: Converted packages ftp site?


Would it be a good idea to set up an ftp site for all the packages
that have been converted to work with lemacs?  I just went through and
patched supercite and the prospect of repeating this process for every
package I use is daunting.

--
Mike

--
Mike Bolotski          MIT Artificial Intelligence Laboratory
misha@ai.mit.edu       Cambridge, MA 02139     (617) 253-8170

From help-lucid-emacs-request@lucid.com  Fri Jun 19 12:02:03 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA03971; Fri, 19 Jun 92 12:02:03 PDT
Received: by heavens-gate.lucid.com id AA18234g; Fri, 19 Jun 92 11:49:39 PDT
Message-Id: <9206191849.AA18234@lucid.com>
Received: from gourde.bbn.com by heavens-gate.lucid.com id AA18229g; Fri, 19 Jun 92 11:49:27 PDT
Received: by gourde.bbn.com id AA10896g; Fri, 19 Jun 92 14:57:28 EDT
To: help-lucid-emacs@lucid.com
Cc: fwhite@bbn.com
Subject: Subscribe fwhite@bbn.com
Date: Fri, 19 Jun 92 14:57:28 -0400
From: Fredric M White <fwhite@bbn.com>

Thanks

	Fred White

From help-lucid-emacs-request@lucid.com  Fri Jun 19 13:54:19 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA04580; Fri, 19 Jun 92 13:54:19 PDT
Received: by heavens-gate.lucid.com id AA18775g; Fri, 19 Jun 92 13:43:09 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA18771g; Fri, 19 Jun 92 13:43:04 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA05268; Fri, 19 Jun 92 13:51:44 PDT
Date: Fri, 19 Jun 92 13:51:44 PDT
Message-Id: <9206192051.AA05268@thalidomide.lucid>
X-Windows: A moment of convenience, a lifetime of regret.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: misha@ai.mit.edu (Mike Bolotski)
Cc: help-lucid-emacs@lucid.com
Subject: Re: Converted packages ftp site?
In-Reply-To: Mike Bolotski's message of Fri 19-Jun-92 13:55:43 EDT <9206191755.AA04680@espresso>
References: <9206191755.AA04680@espresso>

In message <9206191755.AA04680@espresso> Mike Bolotski wrote:
>
> Would it be a good idea to set up an ftp site for all the packages
> that have been converted to work with lemacs?  I just went through and
> patched supercite and the prospect of repeating this process for every
> package I use is daunting.

One hopes that these changes will be folded back into the original source
of these packages, and this won't be necessary for much longer.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Fri Jun 19 13:55:02 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA04584; Fri, 19 Jun 92 13:55:02 PDT
Received: by heavens-gate.lucid.com id AA18781g; Fri, 19 Jun 92 13:43:49 PDT
Received: from fernwood.mpk.ca.us by heavens-gate.lucid.com id AA18776g; Fri, 19 Jun 92 13:43:35 PDT
Received: by fernwood.mpk.ca.us; id AA05926; Fri, 19 Jun 92 13:42:02 -0700
Received: from bermuda.YP.acad by autodesk.com (4.1/MADMAX-RED-CUCCIA)
	id AA04408; Fri, 19 Jun 92 12:50:16 PDT
Received: by bermuda.YP.acad (4.1/SMI-4.1)
	id AA05392; Fri, 19 Jun 92 12:50:15 PDT
Message-Id: <9206191950.AA05392@bermuda.YP.acad>
From: dansmith@autodesk.com (Daniel Smith)
Date: Fri, 19 Jun 1992 12:50:15 PDT
In-Reply-To: Bertil Askelid's 34-line message on Jun 19, 12:57am
Return-Path: autodesk!dansmith
X-Organization: Autodesk, Sausalito, CA
X-Mailer: Mail User's Shell (7.2.2 4/12/91)
To: ebubra@ebu.ericsson.se (Bertil Askelid), cs.uiuc.edu!epoch@ebu.ericsson.se
Subject: Re: Epoch and EMACS merger
Cc: rms@ai.mit.edu, help-lucid-emacs@lucid.com

> > > Bertil Askelid wrote about "Re: Epoch and EMACS merger":
> In article <1992Jun18.225919.17661@mintaka.lcs.mit.edu>, chicks@hal (Christopher Hicks) writes:
> <> I am curious as to what people think of the likelyhood of EMACS and Epoch 
> <> merging into a single release.  
> 
>    Isn't that what's called Emacs 19?
> -- 

	Further, it would be nice if any new Lucid-emacs features
get rolled in.  It's getting confusing with Emacs 18.X, Epoch, Emacs 19,
and Lucid Emacs based on 19 all floating around at the same time.
For instance, I make frequent use of ^Z2 to dup a screen in Epoch..it's
something else in lucid emacs, and I haven't used Emacs 19 [1] but I'm
wondering if it's yet another thing.

[1] I gather 19 really isn't widely available yet.

	Anyways, I think competition is a good thing and all, but
I'm also hoping it doesn't start getting out of hand.  Are we going
to have three different versions of Emacs under the GNU license?
>From my perspective as a relatively new user of Emacs (about 1 year
and 9 years of Vi before that), I can keep the differences straight
in my mind, and there's ways of binding keys so that everything
looks the same, etc.  However, if I'm explaining something about Emacs
versions to someone who's new to all of this, I can see contortions on
their face, etc :-)  It's starting to look like the history of
some rock bands (like what's happened over the years to the band "Yes").

	Would it be worthwhile for people to work towards a common
GNU Emacs goal?

	What does Richard Stallman think of all of this?

	I'm just tossing this out there.  If there's going to be
2 or three GNUish Emacii, fine, I can keep that straight.  I just
personally hope there isn't any more splintering.  Perhaps there
should be an Emacs Summit Meeting?  Anyways, this is all from a user's
perspective who is wondering what is going on, but who doesn't
necessarily know all of the history behind it...so keep any flames
informative rather than outright hostile :-)

				Daniel

From help-lucid-emacs-request@lucid.com  Fri Jun 19 14:40:38 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA04657; Fri, 19 Jun 92 14:40:38 PDT
Received: by heavens-gate.lucid.com id AA19019g; Fri, 19 Jun 92 14:30:22 PDT
Received: from Princeton.EDU by heavens-gate.lucid.com id AA19002g; Fri, 19 Jun 92 14:28:40 PDT
Received: from hhb.UUCP by Princeton.EDU (5.65b/2.90/princeton)
	id AA04905; Fri, 19 Jun 92 17:37:04 -0400
Received: from brett.master by master (4.1/Redac_Mahwah-v1.0)
	id AA10773; Fri, 19 Jun 92 16:17:24 EDT
Received: by brett.master (4.1/SMI-4.1)
	id AA05474; Fri, 19 Jun 92 16:17:28 EDT
Date: Fri, 19 Jun 92 16:17:28 EDT
From: bvk%hhb@Princeton.EDU (Brett Kuehner)
Message-Id: <9206192017.AA05474@brett.master>
To: lucid.com!bug-lucid-emacs@Princeton.EDU
Subject: Subscription request
Cc: lucid.com!help-lucid-emacs@Princeton.EDU

Please add me to the mailing list.

		Brett
--
Brett Kuehner, Racal-Redac, Mahwah, NJ
...!princeton!hhb!bvk
bvk%hhb@princeton.EDU

From help-lucid-emacs-request@lucid.com  Fri Jun 19 15:15:53 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA04740; Fri, 19 Jun 92 15:15:53 PDT
Received: by heavens-gate.lucid.com id AA19141g; Fri, 19 Jun 92 15:06:14 PDT
Received: from relay2.UU.NET by heavens-gate.lucid.com id AA19137g; Fri, 19 Jun 92 15:06:08 PDT
Received: from wendy-fate.UU.NET by relay2.UU.NET with SMTP 
	(5.61/UUNET-internet-primary) id AA28487; Fri, 19 Jun 92 18:14:49 -0400
From: kyle@wendy-fate.uu.net
Received: by wendy-fate.UU.NET (5.61/UUNET-mail-leaf)
	id AA11484; Fri, 19 Jun 92 18:13:52 -0400
Date: Fri, 19 Jun 92 18:13:52 -0400
Message-Id: <9206192213.AA11484@wendy-fate.UU.NET>
To: help-lucid-emacs@lucid.com, misha@ai.mit.edu (Mike Bolotski)
Subject: Re: Converted packages ftp site?
In-Reply-To: <9206192051.AA05268@thalidomide.lucid>
References: <9206191755.AA04680@espresso>
	<9206192051.AA05268@thalidomide.lucid>

Jamie Zawinski writes:
 > In message <9206191755.AA04680@espresso> Mike Bolotski wrote:
 > >
 > > Would it be a good idea to set up an ftp site for all the packages
 > > that have been converted to work with lemacs?  I just went through and
 > > patched supercite and the prospect of repeating this process for every
 > > package I use is daunting.
 > 
 > One hopes that these changes will be folded back into the original source
 > of these packages, and this won't be necessary for much longer.

In general it will depend on how painful the changes are to
integrate and maintain.  I cannot say how imcompatible Lucid
Emacs is with v18 Emacs as I don't use X and therefore cannot run
Lucid Emacs in its current incarnation.  But the amount of
imcompatibility will eventually have to be weighed against the
features gained.  "Features" doesn't necessarily mean bells and
whistles.  A cleaner design for certain facilities would garner
wild applause from me and many others who have kludged around
Emacs' misfeatures in the past.


From help-lucid-emacs-request@lucid.com  Fri Jun 19 15:42:37 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA04812; Fri, 19 Jun 92 15:42:37 PDT
Received: by heavens-gate.lucid.com id AA19230g; Fri, 19 Jun 92 15:32:52 PDT
Received: from relay2.UU.NET by heavens-gate.lucid.com id AA19226g; Fri, 19 Jun 92 15:32:43 PDT
Received: from wendy-fate.UU.NET by relay2.UU.NET with SMTP 
	(5.61/UUNET-internet-primary) id AA04651; Fri, 19 Jun 92 18:41:19 -0400
From: kyle@wendy-fate.uu.net
Received: by wendy-fate.UU.NET (5.61/UUNET-mail-leaf)
	id AA14570; Fri, 19 Jun 92 18:40:22 -0400
Date: Fri, 19 Jun 92 18:40:22 -0400
Message-Id: <9206192240.AA14570@wendy-fate.UU.NET>
To: dansmith@autodesk.com (Daniel Smith)
Cc: cs.uiuc.edu!epoch@ebu.ericsson.se, ebubra@ebu.ericsson.se (Bertil Askelid),
        help-lucid-emacs@lucid.com, rms@ai.mit.edu
Subject: Re: Epoch and EMACS merger
In-Reply-To: <9206191950.AA05392@bermuda.YP.acad>
References: <9206191950.AA05392@bermuda.YP.acad>

Daniel Smith writes:
 > 	Would it be worthwhile for people to work towards a common
 > GNU Emacs goal?

I don't think so.  If anything I think it would be worthwhile to
consider pulling Emacs apart into its components, much as OS
developers have pulled apart operating systems.  There are some
good ideas embodied in Emacs.  I think they could be improved by
distilling them out of the monobloc (to horribly mix metaphors).
But this isn't the place for such discussions.

From help-lucid-emacs-request@lucid.com  Fri Jun 19 16:05:22 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA04915; Fri, 19 Jun 92 16:05:22 PDT
Received: by heavens-gate.lucid.com id AA19295g; Fri, 19 Jun 92 15:55:45 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA19291g; Fri, 19 Jun 92 15:55:39 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA05950; Fri, 19 Jun 92 16:04:19 PDT
Date: Fri, 19 Jun 92 16:04:19 PDT
Message-Id: <9206192304.AA05950@thalidomide.lucid>
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: help-lucid-emacs@lucid.com, bug-lucid-emacs@lucid.com
Subject: Lucid GNU Emacs 19.2 released

It is on labrea.Stanford.EDU (36.8.0.47) in pub/gnu/lucid/.

What's new:

  -  I've rearranged the lisp directory so that there are only a handful
     of files at top-level; everything has been moved to subdirectories.
     This should speed up the automatic generation of load-path, since it
     will have to stat() 10x fewer files.

  -  You can now input and display all iso8859-1 characters.  If you set
     the variable ctl-arrow to something that is non-nil and non-t then
     high-bit characters will be displayed in the current font instead of
     in octal.

  -  If you load x-compose.el, you can do Sun/DEC-like compose processing.
     See the comment in that file.

  -  Random bug fixes, installation problem fixes, some portability #ifdefs.

  -  The pre-built sun4 binaries are compiled with optimization now.

What's old:

  -  It doesn't use "configure" yet.

  -  The OLIT menubar still doesn't work.  Next release for sure...

Enjoy...

	-- Jamie

From help-lucid-emacs-request@lucid.com  Fri Jun 19 18:08:57 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA05148; Fri, 19 Jun 92 18:08:57 PDT
Received: by heavens-gate.lucid.com id AA19608g; Fri, 19 Jun 92 17:58:56 PDT
Received: from newton.ncsa.uiuc.edu by heavens-gate.lucid.com id AA19604g; Fri, 19 Jun 92 17:58:49 PDT
Received: from wintermute.ncsa.uiuc.edu by newton.ncsa.uiuc.edu with SMTP id AA09150
  (5.65a/IDA-1.4.2 for help-lucid-emacs@lucid.com); Fri, 19 Jun 92 20:07:08 -0500
Received: by wintermute.ncsa.uiuc.edu (920110.SGI/911001.SGI)
	for @newton.ncsa.uiuc.edu:epoch@cs.uiuc.edu id AA12758; Fri, 19 Jun 92 20:07:48 -0700
Date: Fri, 19 Jun 92 20:07:48 -0700
From: marca@ncsa.uiuc.edu (Marc Andreessen)
Message-Id: <9206200307.AA12758@wintermute.ncsa.uiuc.edu>
To: epoch@cs.uiuc.edu, help-lucid-emacs@lucid.com
In-Reply-To: Daniel Smith's message of Fri, 19 Jun 1992 12:50:15 PDT <9206191950.AA05392@bermuda.YP.acad>
Subject: Epoch and EMACS merger

   From: dansmith@autodesk.com (Daniel Smith)

           Further, it would be nice if any new Lucid-emacs features
   get rolled in.  It's getting confusing with Emacs 18.X, Epoch,
   Emacs 19, and Lucid Emacs based on 19 all floating around at the
   same time.  For instance, I make frequent use of ^Z2 to dup a
   screen in Epoch..it's something else in lucid emacs, and I haven't
   used Emacs 19 [1] but I'm wondering if it's yet another thing.

How many incompatibilities are really present, yet?

Emacs 18.58 and Epoch 4.0 are identical, except for the Epoch
extensions.

Emacs 19 isn't out yet.

So current incompatibilities include exactly these:

        o Differences between Epoch and Lucid X commands and related
        interfaces.

        o Differences in general between Emacs 18.58 and Lucid Emacs
        19.

The Lucid folks are, I think, doing a good job of handling the latter
problem, while the former problem could be temporarily solved with an
Epoch emulator package for Lucid (an idea which has been tossed around
on help-lucid-emacs) or vice versa.

   [1] I gather 19 really isn't widely available yet.

Isn't available at all yet, basically.

Marc

--
Marc Andreessen
Epoch Development Team
University of Illinois at Urbana-Champaign
marca@ncsa.uiuc.edu


From help-lucid-emacs-request@lucid.com  Sat Jun 20 00:51:28 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA05960; Sat, 20 Jun 92 00:51:28 PDT
Received: by heavens-gate.lucid.com id AA20353g; Sat, 20 Jun 92 00:41:23 PDT
Received: from santra.hut.fi by heavens-gate.lucid.com id AA20349g; Sat, 20 Jun 92 00:41:13 PDT
Received: from lelu.hut.fi by santra.hut.fi
	(5.65c/8.0/TeKoLa) id AA03715; Sat, 20 Jun 1992 10:49:15 +0300
Received: by lelu.hut.fi (5.57/Ultrix3.0-C)
	id AA05406; Sat, 20 Jun 92 12:38:59 +0100
Date: Sat, 20 Jun 92 12:38:59 +0100
From: rms%lelu.hut.fi@lucid.com
Message-Id: <9206201138.AA05406@lelu.hut.fi>
To: dansmith@autodesk.com
Cc: ebubra@ebu.ericsson.se, epoch@cs.uiuc.edu, help-lucid-emacs@lucid.com
In-Reply-To: Daniel Smith's message of Fri, 19 Jun 1992 12:50:15 PDT <9206191950.AA05392@bermuda.YP.acad>
Subject: Epoch and EMACS merger
Reply-To: rms@gnu.ai.mit.edu

The long delay in releasing Emacs 19 is the FSF's fault.  (In some
sense, therefore, mine.)  While it's regrettable that there are
multiple versions, I can't blame people for filling the gap that the
FSF left.  One of the goals of the copyleft is to allow people to do
this--so that one central maintainer's lapse does not hold back the
rest of the community.

However, the people who wrote the Lucid version didn't try to to make
the changes usable for us.  They charged ahead without discussing the
design with me or with the main Emacs maintainer.  They reimplemented
things we had already done.  I asked them to do some work making parts
usable for us, but they said no.

The result is that not much of the code in Lucid's version will ever
appear in the FSF's version.  Some of the features are worth having,
but need to be reimplemented.  If you'd like this to happen sooner,
one way is to volunteer to do some of the work.

Emacs 19 already has most of the features of Epoch.

From help-lucid-emacs-request@lucid.com  Sat Jun 20 23:02:25 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA08652; Sat, 20 Jun 92 23:02:25 PDT
Received: by heavens-gate.lucid.com id AA21765g; Sat, 20 Jun 92 22:52:43 PDT
Received: from amil.co.il by heavens-gate.lucid.com id AA21761g; Sat, 20 Jun 92 22:52:03 PDT
Received: from ipc8.AMIL ([192.86.90.18]) by amil.co.il (4.1/AMIL-M2)
	id AA03742; Sun, 21 Jun 92 09:00:12 IDT
Date: Sun, 21 Jun 92 09:00:12 IDT
From: danny@amil.co.il (Danny Bar-Dov)
Message-Id: <9206210600.AA03742@amil.co.il>
Received: by ipc8.AMIL (4.1/SMI-4.1)
	id AA00576; Sun, 21 Jun 92 09:00:08 IDT
To: Jamie Zawinski <jwz@lucid.com>
Cc: help-lucid-emacs@lucid.com
Subject: Re: Extents, faces, etc.
In-Reply-To: <9206182308.AA01981@thalidomide.lucid>
References: <9206182157.AA01563@thalidomide.lucid>
	<9206182220.AA05442@arsenic.eds.com>
	<9206182308.AA01981@thalidomide.lucid>

> > I wanted to start up a lemacs which came up with one screen, whose name
> > was not "emacs".  Is that a reasonable thing to want to do?

> Well, it may be reasonable, but it's not currently possible.  The first
> screen is always named "emacs".  Why do you want to do this?

Couldn't the startup file start a new screen with whatever name is
wanted and then delete the initial screen ?

(can the initial screen be deleted ? yes, it surely can !)

Danny.

--

---------------------
Dan Bar Dov

Applied Materials (Israel)

Email:        danny@amil.co.il
Phone: office 972-3-499573
       home   972-3-5469625
TimeZone:     GMT-2

From help-lucid-emacs-request@lucid.com  Sat Jun 20 23:17:17 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA08668; Sat, 20 Jun 92 23:17:17 PDT
Received: by heavens-gate.lucid.com id AA21782g; Sat, 20 Jun 92 23:07:28 PDT
Received: from amil.co.il by heavens-gate.lucid.com id AA21778g; Sat, 20 Jun 92 23:07:07 PDT
Received: from ipc8.AMIL ([192.86.90.18]) by amil.co.il (4.1/AMIL-M2)
	id AA03775; Sun, 21 Jun 92 09:14:43 IDT
Date: Sun, 21 Jun 92 09:14:43 IDT
From: danny@amil.co.il (Danny Bar-Dov)
Message-Id: <9206210614.AA03775@amil.co.il>
Received: by ipc8.AMIL (4.1/SMI-4.1)
	id AA00582; Sun, 21 Jun 92 09:14:38 IDT
To: misha@ai.mit.edu (Mike Bolotski)
Cc: help-lucid-emacs@lucid.com
Subject: Converted packages ftp site?
In-Reply-To: <9206191755.AA04680@espresso>
References: <9206191755.AA04680@espresso>

Mike Bolotski writes:
 > 
 > Would it be a good idea to set up an ftp site for all the packages
 > that have been converted to work with lemacs?  I just went through and
 > patched supercite and the prospect of repeating this process for every
 > package I use is daunting.
 > 
 > --
 > Mike
 > 

I wand to second that.

Danny.

--

---------------------
Dan Bar Dov

Applied Materials (Israel)

Email:        danny@amil.co.il
Phone: office 972-3-499573
       home   972-3-5469625
TimeZone:     GMT-2

From help-lucid-emacs-request@lucid.com  Sun Jun 21 01:08:46 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA09015; Sun, 21 Jun 92 01:08:46 PDT
Received: by heavens-gate.lucid.com id AA21935g; Sun, 21 Jun 92 00:58:22 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA21931g; Sun, 21 Jun 92 00:58:16 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA06753; Sun, 21 Jun 92 01:07:04 PDT
Date: Sun, 21 Jun 92 01:07:04 PDT
Message-Id: <9206210807.AA06753@thalidomide.lucid>
X-Windows: The joke that kills.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: danny@amil.co.il (Danny Bar-Dov)
Cc: help-lucid-emacs@lucid.com
Subject: Re: Extents, faces, etc.
In-Reply-To: Danny Bar-Dov's message of Sun 21-Jun-92 09:00:12 IDT <9206210600.AA03742@amil.co.il>
References: <9206182157.AA01563@thalidomide.lucid>
	<9206182220.AA05442@arsenic.eds.com>
	<9206182308.AA01981@thalidomide.lucid>
	<9206210600.AA03742@amil.co.il>

In message <9206210600.AA03742@amil.co.il> Danny Bar-Dov wrote:
>
> Couldn't the startup file start a new screen with whatever name is
> wanted and then delete the initial screen ?

Yeah, but that's pretty low tech.

One possibility is to change things so that, if the name of a screen is not
specified when you create it, it defaults to the resource-name of the
application, which you can set with the -name command-line option, instead
of to "emacs."  Another possibility would be to add a -initial-screen-name
command-line option.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Sun Jun 21 09:46:18 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA10141; Sun, 21 Jun 92 09:46:18 PDT
Received: by heavens-gate.lucid.com id AA22237g; Sun, 21 Jun 92 09:36:39 PDT
Received: from relay2.UU.NET by heavens-gate.lucid.com id AA22233g; Sun, 21 Jun 92 09:36:33 PDT
Received: from ingr.ingr.com by relay2.UU.NET with SMTP 
	(5.61/UUNET-internet-primary) id AA00800; Sun, 21 Jun 92 12:45:00 -0400
Received: by ingr.ingr.com (5.61/INGR-1.1)
	id AA17936; Sun, 21 Jun 92 09:27:50 -0500
Received: from simpson.turtles by turtles (4.1/SMI-4.1)
	id AA02283; Sun, 21 Jun 92 14:13:50 IDT
Received: by simpson.turtles (4.1/SMI-4.1)
	id AA02774; Sun, 21 Jun 92 14:14:00 IDT
From: matis!amir@uunet.UU.NET (Amir Katz)
Message-Id: <9206211114.AA02774@simpson.turtles>
Subject: Info from Lemacs
To: help-lucid-emacs@lucid.com (Lucid Emacs help M.L.)
Date: Sun, 21 Jun 92 14:13:59 EET DST
Organization: SEE Technologies Ltd.
Reply-To: matis!ingr.COM!amir%matis.UUCP@uunet.UU.NET
Followup-To: amir%matis.UUCP@ingr.COM
X-Mailer: ELM [version 2.3 PL11]

Guys,
I'm trying to invoke 'info' from within lemacs, and it fails, giving me this
message:

   "Symbol's value as variable is void: mouse-map"

If, however, I mnaully load the 'info.el' file (from the lisp directory),
the 'info' function works fine.

Any idea, anyone? Thanks in advance.

Please respond to the addresses below.
-- 
/* Amir J. Katz          | UUCP:     uunet!ingr!matis!amir               */
/* System Specialist     | Internet: amir%matis.UUCP@ingr.COM            */
/* SEE Technologies Ltd. | Voice:    +972 52-584684, Fax: +972 52-543917 */

From help-lucid-emacs-request@lucid.com  Sun Jun 21 12:42:55 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA10487; Sun, 21 Jun 92 12:42:55 PDT
Received: by heavens-gate.lucid.com id AA22409g; Sun, 21 Jun 92 12:33:16 PDT
Received: from sun2.nsfnet-relay.ac.uk by heavens-gate.lucid.com id AA22405g; Sun, 21 Jun 92 12:33:07 PDT
Via: cogsci.edinburgh.ac.uk; Sun, 21 Jun 1992 20:41:08 +0100
From: rjc@cogsci.edinburgh.ac.uk
Date: Sun, 21 Jun 92 20:35:30 BST
Message-Id: <12906.9206211935@daiches.cogsci.ed.ac.uk>
Subject: Re: Epoch and EMACS merger
To: epoch@cs.uiuc.edu, help-lucid-emacs@lucid.com
X-Dragon: Kalessin

A couple of rocks from a glass house[*]:

a) It would be _really_ useful if someone familiar with emacs19, leamcs
and epoch could give everyone an idea of what the major differences are. 
Not so much details, but places where the major abstractions differ. 
For instace lemacs `faces' and epoch `styles' look fairly similar,
converting would be irritating but not suicide-inducing.  I havn't
looked at screen creation etc in lemacs in detail but from what I have
seen it treats screens as parallel to windows while epoch treats them as
parallel to buffers (current-screen vs selected-screen etc), if that
difference goes deep it might be very painful. 

b) What would really be good would be emacs19 simulators for both epoch
and lemacs. I'm less interested in getting at existing epoch code than
in giving my own code a future path. 

[*] There _is_ going to be a combined up to date tvtwm soon, honest.

      ^_^
     (O O) 
     \_/@@\
      \\~~/ 
        ~~
		- RJC

From help-lucid-emacs-request@lucid.com  Sun Jun 21 19:28:43 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA11111; Sun, 21 Jun 92 19:28:43 PDT
Received: by heavens-gate.lucid.com id AA22715g; Sun, 21 Jun 92 19:18:58 PDT
Received: from netcom.netcom.com by heavens-gate.lucid.com id AA22711g; Sun, 21 Jun 92 19:18:52 PDT
Received: by netcom.netcom.com (4.1/SMI-4.1)
	id AA09538; Sun, 21 Jun 92 19:26:36 PDT
From: ltd@netcom.com (Larry Drebes)
Message-Id: <9206220226.AA09538@netcom.netcom.com>
Subject: changing fonts & colors
To: help-lucid-emacs@lucid.com
Date: Sun, 21 Jun 92 19:26:35 PDT
X-Mailer: ELM [version 2.3 PL11]


On changing fonts: I'm trying to set up a tiny font to really pack
alot of code on one screen.  The font change goes well, but the 
vertical spacing between lines doesn't seem to scale down with the font,
ie. I have a nice tiny font with lots of white space between lines. In
playing around I've found the vertical spacing seems to not get smaller 
than the default font, although will increase if you feed it a huge font.
Is there some magic variable or procedure I'm missing.

On changing colors:  Changing foreground & background colors works like
a charm, but I'm lost on how to change the cursor color. I'm looking
for something like (set-face-cursor-color color), but there is none.

More colors: Is there a way to change the fg & bg color of the icon
dynamicaly from emas, ie if I change the fg/bg color of a screen, to
have those colors migrate to the icon when it's iconified.  I'm not
even sure if it's possible for an X client to do this with out
some help from the wm (twm in my case).

thanks
larry-
-- 

From help-lucid-emacs-request@lucid.com  Sun Jun 21 19:54:20 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA11157; Sun, 21 Jun 92 19:54:20 PDT
Received: by heavens-gate.lucid.com id AA22748g; Sun, 21 Jun 92 19:44:47 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA22744g; Sun, 21 Jun 92 19:44:41 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA07177; Sun, 21 Jun 92 19:53:29 PDT
Date: Sun, 21 Jun 92 19:53:29 PDT
Message-Id: <9206220253.AA07177@thalidomide.lucid>
X-Windows: Live the nightmare.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: ltd@netcom.com (Larry Drebes)
Cc: help-lucid-emacs@lucid.com
Subject: Re: changing fonts & colors
In-Reply-To: Larry Drebes's message of Sun 21-Jun-92 19:26:35 PDT <9206220226.AA09538@netcom.netcom.com>
References: <9206220226.AA09538@netcom.netcom.com>

In message <9206220226.AA09538@netcom.netcom.com> Larry Drebes wrote:
>
> On changing fonts: I'm trying to set up a tiny font to really pack
> alot of code on one screen.  The font change goes well, but the 
> vertical spacing between lines doesn't seem to scale down with the font,
> ie. I have a nice tiny font with lots of white space between lines. 

The height of the lines on a screen is the max of the height of all the fonts
on that screen.  So to really use a smaller font, you have to change the font
of all existing faces to be that height or smaller.  Sad but true.  This
limitation will hopefully go away once we rewrite redisplay.

> On changing colors:  Changing foreground & background colors works like
> a charm, but I'm lost on how to change the cursor color. 

Setq the variables x-pointer-background-color and x-pointer-foreground-color.

> More colors: Is there a way to change the fg & bg color of the icon
> dynamicaly from emas, ie if I change the fg/bg color of a screen, to
> have those colors migrate to the icon when it's iconified.  I'm not
> even sure if it's possible for an X client to do this with out
> some help from the wm (twm in my case).

I don't think this is possible for a client to do in a portable way.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Mon Jun 22 02:04:56 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA12020; Mon, 22 Jun 92 02:04:56 PDT
Received: by heavens-gate.lucid.com id AA23195g; Mon, 22 Jun 92 01:50:59 PDT
Received: from amil.co.il by heavens-gate.lucid.com id AA23191g; Mon, 22 Jun 92 01:50:21 PDT
Received: from ipc8.AMIL ([192.86.90.18]) by amil.co.il (4.1/AMIL-M2)
	id AA01561; Mon, 22 Jun 92 11:58:39 IDT
Date: Mon, 22 Jun 92 11:58:39 IDT
From: danny@amil.co.il (Danny Bar-Dov)
Message-Id: <9206220858.AA01561@amil.co.il>
Received: by ipc8.AMIL (4.1/SMI-4.1)
	id AA00212; Mon, 22 Jun 92 11:58:37 IDT
To: help-lucid-emacs@lucid.com
Subject: changing fonts & colors
In-Reply-To: <9206220226.AA09538@netcom.netcom.com>
References: <9206220226.AA09538@netcom.netcom.com>

Larry Drebes writes:
 > 
 > On changing fonts: I'm trying to set up a tiny font to really pack
 > alot of code on one screen.  The font change goes well, but the 
 > vertical spacing between lines doesn't seem to scale down with the font,
 > ie. I have a nice tiny font with lots of white space between lines. In
 > playing around I've found the vertical spacing seems to not get smaller 
 > than the default font, although will increase if you feed it a huge font.
 > Is there some magic variable or procedure I'm missing.
 > 
 > On changing colors:  Changing foreground & background colors works like
 > a charm, but I'm lost on how to change the cursor color. I'm looking
 > for something like (set-face-cursor-color color), but there is none.
 > 
 > More colors: Is there a way to change the fg & bg color of the icon
 > dynamicaly from emas, ie if I change the fg/bg color of a screen, to
 > have those colors migrate to the icon when it's iconified.  I'm not
 > even sure if it's possible for an X client to do this with out
 > some help from the wm (twm in my case).
 > 
 > thanks
 > larry-
 > -- 

There's an X resource called interline (class Interline) which is an int which
specifies how many pixels to leave between each line. (look at the NEWS file)
I don't know how you can control it from within lemacs.

Changing icon colors: in most cases you need support from the window manager
If you want to override all wms, (or even have an active icon like ftptool)
the trick is to have a window instead of an icon (as an icon). Then you can do
in that window whatever you like. But that's X not emacs.

Danny.

--


From help-lucid-emacs-request@lucid.com  Mon Jun 22 03:09:07 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA12103; Mon, 22 Jun 92 03:09:07 PDT
Received: by heavens-gate.lucid.com id AA23245g; Mon, 22 Jun 92 02:56:33 PDT
Received: from sun2.nsfnet-relay.ac.uk by heavens-gate.lucid.com id AA23241g; Mon, 22 Jun 92 02:56:26 PDT
Via: cs.city.ac.uk; Mon, 22 Jun 1992 11:04:40 +0100
Received: from Messages.8.5.N.CUILIB.3.45.SNAP.NOT.LINKED.barney.cs.city.ac.uk.sun4.40 
          via MS.5.6.barney.cs.city.ac.uk.sun4_40;
          Mon, 22 Jun 1992 11:07:18 +0100 (BST)
Message-Id: <4eFONK6__5g80MuUVT@cs.city.ac.uk>
Date: Mon, 22 Jun 1992 11:07:18 +0100 (BST)
From: Andy Whitcroft <andy@cs.city.ac.uk>
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
To: help-lucid-emacs@lucid.com
Subject: GNUS 1.13

As an Emacs Fan (ermmm shhh don't tell anyone) I am just getting into
Lucid.  I notice that you ship the GNUS 1.13 rather than GNUS 1.14.1
which we use with Emacs.  I seem to be having some trouble with this
version (or the lucid port of it?).  For some groups currently
news.software.nntp I get "Wrong type argument: syntax-table-p, nil" when
I attempt to select it to read.  Anyone else seen this/fixed it?

Andy.
Andy Whitcroft				     E-mail: andy@cs.city.ac.uk
Systems Architecture Research Centre,	
City University, London, UK.		     Tel: +44 71 477 8000 x8551

From help-lucid-emacs-request@lucid.com  Mon Jun 22 04:02:40 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA12220; Mon, 22 Jun 92 04:02:40 PDT
Received: by heavens-gate.lucid.com id AA23304g; Mon, 22 Jun 92 03:50:09 PDT
Received: from relay2.UU.NET by heavens-gate.lucid.com id AA23300g; Mon, 22 Jun 92 03:50:02 PDT
Received: from ingr.ingr.com by relay2.UU.NET with SMTP 
	(5.61/UUNET-internet-primary) id AA22965; Mon, 22 Jun 92 06:58:42 -0400
Received: by ingr.ingr.com (5.61/INGR-1.1)
	id AA23591; Mon, 22 Jun 92 06:03:48 -0500
Received: from simpson.turtles by turtles (4.1/SMI-4.1)
	id AA07267; Mon, 22 Jun 92 13:52:33 IDT
Received: by simpson.turtles (4.1/SMI-4.1)
	id AA12606; Mon, 22 Jun 92 13:52:43 IDT
From: matis!amir@uunet.UU.NET (Amir Katz)
Message-Id: <9206221052.AA12606@simpson.turtles>
Subject: Key binding for Meta-arrows
To: help-lucid-emacs@lucid.com (Lucid Emacs help M.L.)
Date: Mon, 22 Jun 92 13:52:41 EET DST
Organization: SEE Technologies Ltd.
Reply-To: matis!ingr.COM!amir%matis.UUCP@uunet.UU.NET
Followup-To: amir%matis.UUCP@ingr.COM
X-Mailer: ELM [version 2.3 PL11]

Guys,
In emacs-18.5x, the key combinations 'Meta-left-arrow' and
'Meta-right-arrow' are bound to the functions backward/forward-sexp,
respectively. This is very useful, especially in C/C++ modes.

However, in lemacs, hitting M--> says:
 M-right is undefined.

I tried this:
   (define-key global-map [(M-right)] 'forward-sexp)
but it does not work.

Help!
-- 
/* Amir J. Katz          | UUCP:     uunet!ingr!matis!amir               */
/* System Specialist     | Internet: amir%matis.UUCP@ingr.COM            */
/* SEE Technologies Ltd. | Voice:    +972 52-584684, Fax: +972 52-543917 */

From help-lucid-emacs-request@lucid.com  Mon Jun 22 06:47:37 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA13288; Mon, 22 Jun 92 06:47:37 PDT
Received: by heavens-gate.lucid.com id AA23480g; Mon, 22 Jun 92 06:34:56 PDT
Received: from ti.com by heavens-gate.lucid.com id AA23476g; Mon, 22 Jun 92 06:34:48 PDT
Received: from tilde.csc.ti.com ([128.247.160.56]) by ti.com with SMTP 
	(5.59/LAI-3.2) id AA08842; Mon, 22 Jun 92 08:43:46 CDT
Received: from sys_admin4.dadd.ti.com (dadsg1.dadd.ti.com) by tilde.csc.ti.com id AA05331; Mon, 22 Jun 1992 08:42:32 -0500
Received: from atg2.dadd.ti.com by sys_admin4.dadd.ti.com (4.1/SMI-4.1)
	id AA20306; Mon, 22 Jun 92 08:39:48 CDT
Received: by atg2.dadd.ti.com (4.1/SMI-4.1)
	id AA01842; Mon, 22 Jun 92 08:39:44 CDT
Date: Mon, 22 Jun 92 08:39:44 CDT
From: kenb@dadd.ti.com (Ken Butler)
Message-Id: <9206221339.AA01842@atg2.dadd.ti.com>
To: help-lucid-emacs@lucid.com
Subject: load-path question

I've seen some conversation about "automatically building the load-path at
runtime", but I must not be using this feature properly.  I tried doing
this in my ~/.emacs:

(setq-default load-path '("/user/kenb/src/lemacs"
                          "/user/kenb/local/lemacs-19.2/lisp"))

but lemacs-19.2 won't startup because it can't find all of the files which
are in subdirectories of "/user/kenb/local/lemacs-19.2/lisp".  I have to
state each of them explicitly like this:

(setq-default load-path '("/user/kenb/src/lemacs"
                          "/user/kenb/local/lemacs-19.2/lisp"
                          "/user/kenb/local/lemacs-19.2/lisp/bytecomp"
                          "/user/kenb/local/lemacs-19.2/lisp/dired"
                          "/user/kenb/local/lemacs-19.2/lisp/gnus"
                          "/user/kenb/local/lemacs-19.2/lisp/modes"
                          "/user/kenb/local/lemacs-19.2/lisp/packages"
                          "/user/kenb/local/lemacs-19.2/lisp/prim"
                          "/user/kenb/local/lemacs-19.2/lisp/utils"
                          "/user/kenb/local/lemacs-19.2/lisp/x11"))

What am I doing wrong here?  I can't find anything in NEWS, DOC-19.2-Lucid,
or the info files to straighten me out.

Thanks.

Ken

--

*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
Kenneth M. Butler                           (214) 997-6370 (office)
Texas Instruments                           (214) 997-2049 (FAX)
P.O. Box 655303 MS 3683                     kenb@dadd.ti.com
Dallas, TX 75265
*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*

From help-lucid-emacs-request@lucid.com  Mon Jun 22 13:57:55 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA14635; Mon, 22 Jun 92 13:57:55 PDT
Received: by heavens-gate.lucid.com id AA24764g; Mon, 22 Jun 92 13:45:13 PDT
Received: from hal.com by heavens-gate.lucid.com id AA24760g; Mon, 22 Jun 92 13:45:05 PDT
Received: from yosemite ([148.57.160.185]) by hal.com (4.1/SMI-4.1.1)
	id AA18780; Mon, 22 Jun 92 09:21:51 PDT
Received: by yosemite (4.1/SMI-4.1.2)
	id AA28012; Mon, 22 Jun 92 11:21:48 CDT
From: brennan@hal.com (Dave Brennan)
Message-Id: <9206221121.ZM28010@yosemite.hal.com>
Date: Mon, 22 Jun 1992 11:21:46 -0500
In-Reply-To: misha@ai.mit.edu (Mike Bolotski)
        "Converted packages ftp site?" (Jun 19,  1:55pm)
References: <9206191755.AA04680@espresso>
X-Mailer: Z-Mail (2.1b.5 6/8/92)
To: misha@ai.mit.edu (Mike Bolotski), help-lucid-emacs@lucid.com
Subject: Re: Converted packages ftp site?

I'll set up a lucid directory in the elisp archive.  How's that sound?

Just send your update packages or patches to elisp-archive@cis.ohio-state.edu.
If they are more than one file, send me mail and we can arrange anon ftp.

Dave

On Jun 19,  1:55pm, Mike Bolotski wrote:
> 
> Would it be a good idea to set up an ftp site for all the packages
> that have been converted to work with lemacs?  I just went through and
> patched supercite and the prospect of repeating this process for every
> package I use is daunting.


From help-lucid-emacs-request@lucid.com  Mon Jun 22 14:13:27 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA14687; Mon, 22 Jun 92 14:13:27 PDT
Received: by heavens-gate.lucid.com id AA24809g; Mon, 22 Jun 92 13:58:51 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA24805g; Mon, 22 Jun 92 13:58:43 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA00462; Mon, 22 Jun 92 14:07:40 PDT
Date: Mon, 22 Jun 92 14:07:40 PDT
Message-Id: <9206222107.AA00462@thalidomide.lucid>
X-Windows: Power tools for power fools.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: brennan@hal.com (Dave Brennan)
Cc: help-lucid-emacs@lucid.com, misha@ai.mit.edu (Mike Bolotski)
Subject: Re: Converted packages ftp site?
In-Reply-To: Dave Brennan's message of Mon 22-Jun-92 11:21:46 -0500 <9206221121.ZM28010@yosemite.hal.com>
References: <9206191755.AA04680@espresso>
	<9206221121.ZM28010@yosemite.hal.com>

In message <9206221121.ZM28010@yosemite.hal.com> Dave Brennan wrote:
>
> I'll set up a lucid directory in the elisp archive.  How's that sound?

This is probably a good interim solution, but I really do hope it's only
that.  The changes required are generally not big, and easy to conditionalize,
so getting them folded back into the original source is the optimal choice.

If the packages are popular enough (or small enough) we could just distribute
them with lemacs.  I'm not sure distributing calc would be a good idea, since
it's so big, but something like supercite would be no big deal.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Mon Jun 22 21:33:32 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA15770; Mon, 22 Jun 92 21:33:32 PDT
Received: by heavens-gate.lucid.com id AA26139g; Mon, 22 Jun 92 21:20:39 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA26135g; Mon, 22 Jun 92 21:20:33 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA01284; Mon, 22 Jun 92 21:29:35 PDT
Date: Mon, 22 Jun 92 21:29:35 PDT
Message-Id: <9206230429.AA01284@thalidomide.lucid>
X-Windows: A moment of convenience, a lifetime of regret.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: kenb@dadd.ti.com (Ken Butler)
Cc: help-lucid-emacs@lucid.com
Subject: Re: load-path question
In-Reply-To: Ken Butler's message of Mon 22-Jun-92 08:39:44 CDT <9206221339.AA01842@atg2.dadd.ti.com>
References: <9206221339.AA01842@atg2.dadd.ti.com>

In message <9206221339.AA01842@atg2.dadd.ti.com> Ken Butler wrote:
>
> I've seen some conversation about "automatically building the load-path at
> runtime", but I must not be using this feature properly.  I tried doing
> this in my ~/.emacs:
> 
> (setq-default load-path '("/user/kenb/src/lemacs"
>                           "/user/kenb/local/lemacs-19.2/lisp"))

"Automatically building the load path" means exactly that: it's automatically
generated.  You don't have to setq it.  If you do, you're overriding the
decision that emacs has made.  Furthermore, you're hardcoding the pathnames
into your .emacs file, when emacs has already been clever for you and
generated the pathnames based on the location of the executable.  Do this
instead:

	(setq load-path (cons "/user/kenb/src/lemacs" load-path))

and you'll leave the automatically-generated elements of the load-path in
place.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Mon Jun 22 21:36:23 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA15774; Mon, 22 Jun 92 21:36:23 PDT
Received: by heavens-gate.lucid.com id AA26144g; Mon, 22 Jun 92 21:23:39 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA26140g; Mon, 22 Jun 92 21:23:27 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA01287; Mon, 22 Jun 92 21:32:27 PDT
Date: Mon, 22 Jun 92 21:32:27 PDT
Message-Id: <9206230432.AA01287@thalidomide.lucid>
X-Windows: Even your dog won't like it.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: amir%matis.UUCP@ingr.COM
Cc: help-lucid-emacs@lucid.com (Lucid Emacs help M.L.)
Subject: Re: Key binding for Meta-arrows
In-Reply-To: Amir Katz's message of Mon 22-Jun-92 13:52:41 EET <9206221052.AA12606@simpson.turtles>
References: <9206221052.AA12606@simpson.turtles>

In message <9206221052.AA12606@simpson.turtles> Amir Katz wrote:
>
> I tried this:
>    (define-key global-map [(M-right)] 'forward-sexp)
> but it does not work.

(define-key global-map [(meta right)] 'forward-sexp)

The doc for define-key describes the syntax.  

I'll install these bindings as the default.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Mon Jun 22 21:48:12 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA15812; Mon, 22 Jun 92 21:48:12 PDT
Received: by heavens-gate.lucid.com id AA26173g; Mon, 22 Jun 92 21:34:55 PDT
Received: from inferno.lucid ([192.31.212.113]) by heavens-gate.lucid.com id AA26155g; Mon, 22 Jun 92 21:29:04 PDT
Received: by inferno.lucid (4.1/SMI-4.1)
	id AA02757; Mon, 22 Jun 92 21:37:51 PDT
Date: Mon, 22 Jun 92 21:37:51 PDT
From: rpg%inferno@lucid.com (Richard P. Gabriel)
Message-Id: <9206230437.AA02757@inferno.lucid>
To: help-lucid-emacs@lucid.com, epoch@cs.uiuc.edu
Cc: rms@gnu.ai.mit.edu, dansmith@autodesk.com, ebubra@ebu.ericsson.se
Subject: Epoch and EMACS merger
References: <9206201138.AA05406@lelu.hut.fi>

I read RMS's message with sadness. Over the past two years I have
tried very hard to figure out a way to work with FSF on Emacs, and for
a lot of that time I thought we were working together, but apparently
I failed. For those of you who wish to read about that effort, you can
read the postscript to this note, which outlines Lucid's involvement -
a sort-of history of the events.

We still want to work with FSF and have our contributions become part
of FSF Emacs, and we are eager to hear suggestions on how to proceed.

			-rpg-

P.S. RMS's letter paints an unflattering and unfair picture of Lucid's
involvement with Emacs, and in particular on the motives and efforts
of our hackers.

The Free Software Foundation is a remarkable organization - for many
years I have supported it personally (and still do), and my company
supports it, its goals, and its products. This support is in terms of
time, effort, and dollars.

   RMS says:

   However, the people who wrote the Lucid version didn't try to to make
   the changes usable for us.  They charged ahead without discussing the
   design with me or with the main Emacs maintainer.  They reimplemented
   things we had already done.  I asked them to do some work making parts
   usable for us, but they said no.

This is not how we at Lucid remember events, although it may be a difference
without a distinction.  I'll recount the events as I recall them and let the
reader supply the characterization.

Lucid set a course 4 years ago to develop a C/C++ programming environment,
using Emacs as a key component.  We needed a small number of specific
things:

* it had to run under X using multiple windows

* it had to support multiple fonts (at least a little)

* it had to support embedded glyphs (icons)

* it had to support attaching active regions to contiguous blocks of
  characters (to support a hypertext-like facility)

* it had to support menubars

* it had to support readonly regions of text

My goals with respect to FSF were these:

* do anything (including paying money) to get our changes into the 
  official FSF sources

* not sacrifice quality or the schedule (which was lengthy, and therefore
  apparently safe)

For the first two years we prototyped the functionality we needed in an
X-widget-based text editor and in Epoch.

By the Summer of 1990, Emacs 19 appeared to be right around the corner, so
we entered discussions with the person at FSF whom we were led to believe
was the official Emacs 19 coder - Joe Arceneaux.  It appeared that our goals
and FSF's were in line, and so he proposed that we pay him a consulting fee
to speed up Emacs 19 development plus get our changes in. We agreed, wrote a
contract, and volunteered manpower to help.

The contract period started October 1990, was to last approximately 9
months.  We were to pay him approximately $50k.  He was paid on milestones,
on which he appeared to deliver.  In addition, we provided him office space
and his own Sparcstation at Lucid.  (At the conclusion of this period, it
appeared that Joe Arceneaux was no longer the official Emacs 19 coder.)

In the Spring of 1991 it became apparent that the effort was going badly -
Emacs 19 as a text editor was slow, and full of bugs.  The only people at
Lucid who dared use it were Arceneaux and myself.  Moreover, Emacs 19
performed hideously in the new areas outlined above.  Its behavior was
especially bad with respect to active regions -- even worse than our
seat-of-the-pants prototype in Epoch.

Nevertheless, we persevered: We re-arranged our Emacs team and priorities
to work more closely with Arceneaux, and we were confident the arrangement
could work.  To be safe, I put 4 of our best hackers on it with
Arceneaux.  By Summer of last year we became aware that RMS had
hired/appointed Jim Blandy as the official Emacs 19 person.

At that time, one of our hackers went out to Cambridge to talk RMS about how
to proceed, and it appeared we reached a reasonable working arrangement.
But, as time went on we determined that the FSF code for Emacs 19 was too
unwieldy, bug-ridden, and convoluted to work with, so we started rewriting
parts of it.

In addition to not listening to any design ideas we had, RMS's policy was
to require us to provide source diffs and to explain every changed line.
Because our efforts towards release were mounting, and we were re-writing
massive amounts of the system, source diffs didn't make sense, but RMS and
Blandy were unwilling or unable to work at a higher level.  I traveled to
Cambridge to work things out, and my team had numerous phone conversations
with RMS.

One area that was completely rewritten was the implementation of active
regions.  Various attempts were made to discuss the design with RMS,
including a 2 hour telephone conversation from one of my hackers, but he
was completely unwilling to consider another point of view.  At first, he
apparently didn't understand the differences between attaching active
regions to text and attaching fonts to text, and when he finally did, he
was so wedded to his design for putting fonts in the text that he wanted
us to implement BOTH his design for fonts and ours for other active region
support.

Our hacker wanted RMS to cooperate to the extent that we would first
implement our version to support all of these features, and see how well it
worked, but he wouldn't even agree to that.  It is worth noting that with
the original FSF version, in spite of some rather elaborate tree-balancing
code and other hackery for precomputing display characteristics, Emacs
redisplay spent more than 40% of its time in the active regions code.  In
our much simpler version it spends significantly less than 1% of the
redisplay time in the corresponding code, even for buffers with a few
thousand active regions.  (This isn't to say that the original design
couldn't be made to work, but several man-months of effort had gone into
their original version, and it took less than 2 man-months to implement and
debug the code that we shipped with our version.  Finally, our version is
approximately 1/2 the number of lines of the original, it is more general,
and it uses less memory.)

Early last Fall, after spending approximately $70k on Arceneaux, we let
his contract expire, but we did put a leased 38.4 kb digital line and an
X terminal in Arceneaux's apartment in San Francisco (35 miles away from
Lucid), so he could continue to work on Emacs 19 for FSF with Lucid
support.

When we learned last Summer that FSF had established an Emacs steering
committee, and no one from my organization was put on that, or even
informed of its existence, we came to the conclusion that the FSF had
no interest in working with us, and we stopped trying.  The punch line
of RMS' statement is true -- we wouldn't do things they way he wanted.
But we didn't ``charge ahead'' without talking to FSF.  While we did
reimplement some things that they had already done, the things we
reimplemented were completely broken.  It's true that in the end our
work has been unusable by the FSF, but that seems to us to have more
to do with their willingness to use it than with anything else.

   RMS concludes:

   The result is that not much of the code in Lucid's version will ever
   appear in the FSF's version.  Some of the features are worth having,
   but need to be reimplemented.  If you'd like this to happen sooner,
   one way is to volunteer to do some of the work.

I have trouble imagining how anyone could have worked with with them
on this.  We may have failed in this attempt, but we have a history of
trying, and we have succeeded in other areas.

In addition to working on Emacs, and contributing to Cygnus initial
implementations of some new features for gdb, such as a malloc that
supports multiple heaps, code to save the internal gdb ``symbol
table'' state for a given executable file, and a various C++ debugging
features, (as well as paying $100K to have these features officially
incorporated into gdb), during the past year we dedicated
approximately 1 person-year, spread over 3 people, to producing a new
Emacs manual.  In addition we have spent a lot of time trying to
figure out how to work amicably with FSF.

We have also supported FSF and RMS by selecting several FSF components
for our product, an endorsement of their quality and usefulness.
Since 1987 Lucid has regularly contributed code (and occasionally
money) to FSF.  Lucid paid over $200k to support FSF products over the
last 2 years.  We contributed over 8 hacker-years to improve FSF
products.

I personally am a member of LPF (not related to FSF, but related to
RMS).  I travel about debating various people in RMS's name, and I
have actively supported RMS in various private ways.  I couldn't
figure out how to work with FSF and RMS even though I had years to do
it, hundreds of thousands of dollars to spend, and 8 man-years to
volunteer.  What would you have done differently?

We offer a free Emacs 19 to anyone who wants it, under exactly the
same conditions as the FSF, providing commercial support to our paying
customers (all improvements arising out of this support become part of
the free version as well, of course), as well as answering questions
and incorporating changes received from users on the net, and we will
continue to develop it.  We will rewrite the redisplay code, and we
will very probably do work to internationalize Emacs.  We also are
using scarce documentation resources on the Emacs manual (copyright
still held jointly with RMS).  However, unlike the FSF, we will also
listen to ideas from other people.  For one thing, if someone
implements an improved version of a feature, we aren't arrogant or
inflexible enough to refuse to consider using it.  The hackers that
worked on our version are concerned about doing a good job for the
sake of Emacs, not just for the sake of our company or their egos.

By this time I've ceased expecting that we will work closely with FSF
on Emacs, but we would still like to do so.  As far as we can tell,
the reason that FSF won't use any of our work is that they aren't
interested in working *with* us (rather they want us to work *for*
them, doing precisely what they tell us to do the way they say to do
it, and on their own schedule).  Perhaps they assume that our designs
and implementations are substandard, but as far as I know they have
never really looked at what we have done.


From help-lucid-emacs-request@lucid.com  Mon Jun 22 23:08:56 1992
Received: from lucid.com ([192.31.212.72]) by labrea.Stanford.EDU (4.1/1.34)
	id AA15938; Mon, 22 Jun 92 23:08:56 PDT
Received: by heavens-gate.lucid.com id AA26367g; Mon, 22 Jun 92 22:54:38 PDT
Received: from amil.co.il by heavens-gate.lucid.com id AA26363g; Mon, 22 Jun 92 22:54:12 PDT
Received: from ipc8.AMIL ([192.86.90.18]) by amil.co.il (4.1/AMIL-M2)
	id AA25945; Tue, 23 Jun 92 09:02:21 IDT
Date: Tue, 23 Jun 92 09:02:21 IDT
From: danny@amil.co.il (Danny Bar-Dov)
Message-Id: <9206230602.AA25945@amil.co.il>
Received: by ipc8.AMIL (4.1/SMI-4.1)
	id AA02144; Tue, 23 Jun 92 09:02:17 IDT
To: rpg%inferno@lucid.com (Richard P. Gabriel)
Cc: dansmith@autodesk.com, ebubra@ebu.ericsson.se, epoch@cs.uiuc.edu,
        help-lucid-emacs@lucid.com, rms@gnu.ai.mit.edu
Subject: Epoch and EMACS merger
In-Reply-To: <9206230437.AA02757@inferno.lucid>
References: <9206201138.AA05406@lelu.hut.fi>
	<9206230437.AA02757@inferno.lucid>

I read your full answer to RMS and I believe it all.

I would really like to hear FSF's answer.

Let the users community be the judge.

Danny.

--

---------------------
Dan Bar Dov

Applied Materials (Israel)

Email:        danny@amil.co.il
Phone: office 972-3-499573
       home   972-3-5469625
TimeZone:     GMT-2

From help-lucid-emacs-request@lucid.com  Tue Jun 23 01:17:15 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA16329; Tue, 23 Jun 92 01:17:15 PDT
Received: by heavens-gate.lucid.com id AA26649g; Tue, 23 Jun 92 01:07:33 PDT
Received: from sun2.nsfnet-relay.ac.uk by heavens-gate.lucid.com id AA26645g; Tue, 23 Jun 92 01:07:26 PDT
Via: cs.city.ac.uk; Tue, 23 Jun 1992 09:15:27 +0100
Received: from Messages.8.5.N.CUILIB.3.45.SNAP.NOT.LINKED.barney.cs.city.ac.uk.sun4.40 
          via MS.5.6.barney.cs.city.ac.uk.sun4_40;
          Tue, 23 Jun 1992 09:18:07 +0100 (BST)
Message-Id: <ceFhszC__5g84OH1Ba@cs.city.ac.uk>
Date: Tue, 23 Jun 1992 09:18:07 +0100 (BST)
From: Andy Whitcroft <andy@cs.city.ac.uk>
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
To: help-lucid-emacs@lucid.com
Subject: Re: load-path question
In-Reply-To: <9206230429.AA01284@thalidomide.lucid>
References: <9206221339.AA01842@atg2.dadd.ti.com> <9206230429.AA01284@thalidomide.lucid>

We have somewhat of a problem with the automatic generation of the lisp
paths etc.  Given the current algorithms we cannot easily get *correct*
behaviour.  On our system we run a combination of `amd' and `modules'. 
For those who don't know modules, it provides a mechanism by which users
can ask for packages and get the various bin/man/etc directories added
to their path.  The modules are all constructed from volumes under the
automounter.  Therefore we have `/vol/lucid/bin', `/vol/lucid/etc', etc.
 Now although lucid will look for lisp directories `../lisp' from the
binary directory, under the automounter this directory is not physically
there as the executable path is the physical location: something like
`/a/barney/usr/vols/lucid19/sun4/bin' and not `/vol/lucid/bin'.

Now it seems too hard to code for this but might I suggest that the
startup be modified such that if you specify the lisp directory in the
paths.h that all subdirectories are added automatically to that list?

Andy.

PS: We get round the problem by having yet more symbolic links in the
bin directory to the lisp/lifo/etc directories.  This however leaves
*bad* lisp paths in the load-path: paths is physical locations.
Andy Whitcroft				     E-mail: andy@cs.city.ac.uk
Systems Architecture Research Centre,	     (MIME and Andrew mail accepted)
City University, London, UK.		     Tel: +44 71 477 8000 x8551

From help-lucid-emacs-request@lucid.com  Tue Jun 23 01:49:42 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA16418; Tue, 23 Jun 92 01:49:42 PDT
Received: by heavens-gate.lucid.com id AA26722g; Tue, 23 Jun 92 01:39:50 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA26718g; Tue, 23 Jun 92 01:39:39 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA01756; Tue, 23 Jun 92 01:48:42 PDT
Date: Tue, 23 Jun 92 01:48:42 PDT
Message-Id: <9206230848.AA01756@thalidomide.lucid>
X-Windows: A terminal disease.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: Andy Whitcroft <andy@cs.city.ac.uk>
Cc: help-lucid-emacs@lucid.com
Subject: Re: load-path question
In-Reply-To: Andy Whitcroft's message of Tue 23-Jun-92 09:18:07 +0100 <ceFhszC__5g84OH1Ba@cs.city.ac.uk>
References: <9206221339.AA01842@atg2.dadd.ti.com>
	<9206230429.AA01284@thalidomide.lucid>
	<ceFhszC__5g84OH1Ba@cs.city.ac.uk>

In message <ceFhszC__5g84OH1Ba@cs.city.ac.uk> Andy Whitcroft wrote:
>
> Now although lucid will look for lisp directories `../lisp' from the
> binary directory, under the automounter this directory is not physically
> there as the executable path is the physical location: something like
> `/a/barney/usr/vols/lucid19/sun4/bin' and not `/vol/lucid/bin'.

Hmm, if what is in argv[0] is "/vol/lucid/bin/lemacs", I think that the
first lispdir tried should be "/vol/lucid/lisp/", and then, if that doesn't
exist, and if "/vol/lucid/bin/lemacs" is a link, it will be chased, and the
"../lisp" directory of that will be tried.  (Well, not really, because emacs
doesn't actually use "foo/../bar" ever: it always short-circuits the ".." in
the pathname, which I consider a bug.)

This is what 19.2 does; with 19.1, argv[0] was always a truename, not the
pathname derived from $PATH, which was a mistake.

Does it not work the way I described, or does the way I described not work?

> Now it seems too hard to code for this but might I suggest that the
> startup be modified such that if you specify the lisp directory in the
> paths.h that all subdirectories are added automatically to that list?

Possibly.  Another reasonable interpretation of this would be that if someone
specified something in paths.h, then emacs should simply use that, and not
search the filesystem at all (to make startup faster).  If you have an opinion
on this, let me know.  (Don't send your responses to the list unless you feel
like arguing your case.)

> PS: We get round the problem by having yet more symbolic links in the bin
> directory to the lisp/lifo/etc directories.  This however leaves *bad* lisp
> paths in the load-path: paths is physical locations.

I don't understand what you mean by the last sentence.  If you have links in
whatever /vol/lucid/bin/{lisp,etc} points to pointing at /vol/lucid/{lisp,etc}
then won't "/vol/lucid/bin/lisp/" go into load-path?  

	-- Jamie

From help-lucid-emacs-request@lucid.com  Tue Jun 23 02:19:48 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA16962; Tue, 23 Jun 92 02:19:48 PDT
Received: by heavens-gate.lucid.com id AA26775g; Tue, 23 Jun 92 02:09:11 PDT
Received: from mole.gnu.ai.mit.edu by heavens-gate.lucid.com id AA26771g; Tue, 23 Jun 92 02:09:00 PDT
Received: by mole.gnu.ai.mit.edu (5.65/4.0)
	id <AA16758@mole.gnu.ai.mit.edu>; Tue, 23 Jun 92 05:17:33 -0400
Date: Tue, 23 Jun 92 05:17:33 -0400
From: rms@gnu.ai.mit.edu (Richard Stallman)
Message-Id: <9206230917.AA16758@mole.gnu.ai.mit.edu>
To: rpg%inferno@lucid.com
Cc: help-lucid-emacs@lucid.com, epoch@cs.uiuc.edu, dansmith@autodesk.com,
        ebubra@ebu.ericsson.se
In-Reply-To: Richard P. Gabriel's message of Mon, 22 Jun 92 21:37:51 PDT <9206230437.AA02757@inferno.lucid>
Subject: Epoch and EMACS merger

In the summer of 1990, I too thought Emacs 19 would come out soon.

One reason it didn't is that Lucid hired away the maintainer and put
him to work adding new features that you wanted, instead of getting
the program into shape for release.  No one discussed with me how this
would affect the maintenance of Emacs.  In fact, I wasn't even told
until a couple of weeks before he was going.

The features Lucid wanted him to implement were useful.  But at that
time, I wanted to get Emacs 19 out the door--not delay the release for
additional features.

I couldn't change the plans, so I had to make the best of them.  I
suggested a design to him, one oriented toward editing formatted
text--a feature I wanted Emacs to have, eventually.

But I had to find someone else to work on getting Emacs 19 ready for
release.  There was only one person available--Jim Blandy.  He is
careful and methodical, but not fast, and he hadn't worked on such a
large program before.  It took him a while to get into the swing of
things.  Also, he was unhappy to leave his previous project, which was
a desktop system.

(To be fair, there have been other causes of delay as well, compounded
with these.)

Since then, Lucid has sometimes tried to cooperate with us.  But the
attempts have not worked.

There have been communication failures.  For example, last summer
Gabriel found out about an Emacs Steering Committee which no one from
Lucid had been invited to join.  Apparently I wasn't invited, or even
told--I don't recall ever hearing about such a committee.  I think
something got garbled in transmission.

But if I had set up a committee, and I had looked for who should be on
it, I wouldn't have thought of Lucid.  I had been told they had
stopped employing Arceneaux, but I didn't know they were continuing to
work on a version of Emacs.  I thought they weren't doing anything.

Last summer I was told that someone there would work on a project that
was needed for Emacs--updating the manual, I think.  But in September,
when I asked him about progress, the he told me he had dropped the
project; other higher priority work took all his time.

Later I learned that Lucid had people other than Arceneaux working on
a version of Emacs.  In December, Gabriel was in this area, and he
told me that he wanted Lucid's programming work in Emacs to fit into
the FSF Emacs release, and he told me how to reach the programmers
there.  I was glad to discover a source of additional hands for the
work.  So I called them, wanting to discuss the design.

But they told that they had already chosen the design and done so much
implementation that they wouldn't consider redoing any of it.  They
had a deadline and had to finish following the path they had set out
on.

They had not tried to talk with Jim Blandy to find out what he was
doing, working on the Emacs 19 release.  I'm not sure they knew he was
the person doing it.  If I'd known what they were working on, I could
have told them they should speak with him.

When people offer the FSF changes to programs that the FSF maintains,
the FSF maintainer always has to consider them line by line.  That's
part of the maintainer's task.  And the maintainer might reject some
of the changes, or ask for rewriting--that's also part of the
maintainer's task.

But mainly we didn't even get to this stage.  Problems became visible
at the general design level.

During that conversation I found out about the problem with slowness
of interval processing.  I called Arceneaux and looked at his code,
and found a localized bug in the balancing of binary trees.  If you
created all the intervals from front to back, it would do no
balancing, leaving the tree maximally unbalanced.  The effect was a
rather roundabout linear search.  As luck would have it, the Lucid
application usually created intervals from front to back, so they
always saw the worst possible behavior.  Anyway, the bug was simple
once found.  This all took a few days.

The Lucid programmers had seen the slowness and decided that the basic
approach was at fault.  So they decided to rewrite the interval code
from scratch.  They said they didn't need to support editing large
files of formatted text; for their usage, a small number of intervals
was enough.  So they wrote a faster, straightforward linear search.

They were willing to offer FSF the code for this--but it isn't
useful.  No matter how cleanly written, a linear search becomes a
disaster for large files with lots of intervals.

When I explained why the binary tree approach was not inherently slow,
they said it was too late--the code worked for their purposes, and
because of their deadline, they couldn't consider redoing anything
that worked well enough for their needs.

This is what I mean by charging ahead.  If they had told me the
problem they saw before choosing to start from scratch, I could have
told them where the problem was, and they could have made a solid
binary tree implementation.  But they didn't tell me.

So since then I've been giving Joe Arceneaux more supervision, and I
expect he will provide an interval implementation for Emacs 20.  Not
19, because I don't want to delay that for these features.

I don't think Gabriel wanted this to happen.  I think he had good
intentions but didn't explain them to the troops.  They did what they
thought they were supposed to do, which was to implement a certain set
of features--with no particular requirement to discuss the design with
me.

I hope that Lucid would like to rectify the situation, but it's
entirely in their hands.

From help-lucid-emacs-request@lucid.com  Tue Jun 23 02:22:13 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA17009; Tue, 23 Jun 92 02:22:13 PDT
Received: by heavens-gate.lucid.com id AA26781g; Tue, 23 Jun 92 02:11:35 PDT
Received: from amil.co.il by heavens-gate.lucid.com id AA26776g; Tue, 23 Jun 92 02:10:54 PDT
Received: from ipc8.AMIL ([192.86.90.18]) by amil.co.il (4.1/AMIL-M2)
	id AA16802; Tue, 23 Jun 92 12:17:59 IDT
Date: Tue, 23 Jun 92 12:17:59 IDT
From: danny@amil.co.il (Danny Bar-Dov)
Message-Id: <9206230917.AA16802@amil.co.il>
Received: by ipc8.AMIL (4.1/SMI-4.1)
	id AA03051; Tue, 23 Jun 92 12:17:54 IDT
To: Andy Whitcroft <andy@cs.city.ac.uk>
Cc: help-lucid-emacs@lucid.com
Subject: Re: load-path question
In-Reply-To: <ceFhszC__5g84OH1Ba@cs.city.ac.uk>
References: <9206221339.AA01842@atg2.dadd.ti.com>
	<9206230429.AA01284@thalidomide.lucid>
	<ceFhszC__5g84OH1Ba@cs.city.ac.uk>

I really do not understand your problem. We use here
vol's and automounter as well.
There is a /vol/lucid automounted directory, under which one
can find bin src lisp etc. Either you invoke lemacs from
/vol/lucid/bin/lemacs or any from symbolic link to it,
the loading path is established correctly.

So, what exactly is the problem ?

Danny.

--

---------------------
Dan Bar Dov

Applied Materials (Israel)

Email:        danny@amil.co.il
Phone: office 972-3-499573
       home   972-3-5469625
TimeZone:     GMT-2

From help-lucid-emacs-request@lucid.com  Tue Jun 23 03:08:01 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA17174; Tue, 23 Jun 92 03:08:01 PDT
Received: by heavens-gate.lucid.com id AA26845g; Tue, 23 Jun 92 02:58:09 PDT
Received: from mole.gnu.ai.mit.edu by heavens-gate.lucid.com id AA26841g; Tue, 23 Jun 92 02:58:00 PDT
Received: by mole.gnu.ai.mit.edu (5.65/4.0)
	id <AA16826@mole.gnu.ai.mit.edu>; Tue, 23 Jun 92 06:06:32 -0400
Date: Tue, 23 Jun 92 06:06:32 -0400
From: rms@gnu.ai.mit.edu (Richard Stallman)
Message-Id: <9206231006.AA16826@mole.gnu.ai.mit.edu>
To: rpg%inferno@lucid.com
Cc: help-lucid-emacs@lucid.com, epoch@cs.uiuc.edu, dansmith@autodesk.com,
        ebubra@ebu.ericsson.se
In-Reply-To: Richard P. Gabriel's message of Mon, 22 Jun 92 21:37:51 PDT <9206230437.AA02757@inferno.lucid>
Subject: Epoch and EMACS merger

    during the past year we dedicated
    approximately 1 person-year, spread over 3 people, to producing a new
    Emacs manual.

This might be a very useful thing.  But why didn't you tell me sooner?

Last summer I was put in touch with someone at Lucid who was going to
work on updating the Emacs manual--documenting the new features
already implemented, I understood this to mean.  (Later he told me he
had had to drop the project.)  But your message today was the first I
had heard of a whole new manual.  Is it free?  Can I read it?

I'm sorry you feel it is hard to figure out how to work with me.
Sometimes I am hard to work with.  Sometimes I'm stubborn.  But I do
manage to work with a lot of other people.

Emacs is full of ideas contributed by others, some of whom contributed
the code as well.  But you can't expect to bat 1000.  Odds are I won't
like every single idea you suggest.

If you let me choose a subset of your suggestions, I'll be glad to
accept some of them.  But if you make me choose all or none, most
likely I'll have to choose none.  I don't think you meant to do that,
but when you don't include me in the plans until too late, that is the
effect.

There are some good ideas in what Lucid did.  I've already accepted
one of them: I've asked Joe Arceneaux to implement temporary
highlighting intervals that are not "part of the text", in addition to
permanent intervals that are part of it.  It was hearing how Lucid was
going to use this that made me realize it was important.

But I can't use this idea the easy way, by using Lucid's code, because
that code isn't designed to fit in with permanent intervals support.
Having temporary intervals is a good idea, but that doesn't make the
lack of permanent intervals a good idea.

This is why I would like people to adapt the Lucid code--so that I can
combine some of your ideas with the other ideas I want to use.


If you would like to work with me, the first step should be to tell me
what sort of thing you want to work on, before you start work.  The
second step is to discuss the design with me before you commit to a
particular design.  Then we can consider various alternatives and work
out a good combination of ideas.




From help-lucid-emacs-request@lucid.com  Tue Jun 23 03:28:20 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA17206; Tue, 23 Jun 92 03:28:20 PDT
Received: by heavens-gate.lucid.com id AA26870g; Tue, 23 Jun 92 03:18:22 PDT
Received: from amil.co.il by heavens-gate.lucid.com id AA26866g; Tue, 23 Jun 92 03:17:51 PDT
Received: from ipc8.AMIL ([192.86.90.18]) by amil.co.il (4.1/AMIL-M2)
	id AA22457; Tue, 23 Jun 92 13:25:26 IDT
Date: Tue, 23 Jun 92 13:25:26 IDT
From: danny@amil.co.il (Danny Bar-Dov)
Message-Id: <9206231025.AA22457@amil.co.il>
Received: by ipc8.AMIL (4.1/SMI-4.1)
	id AA03142; Tue, 23 Jun 92 13:25:19 IDT
To: rms@gnu.ai.mit.edu (Richard Stallman)
Cc: dansmith@autodesk.com, ebubra@ebu.ericsson.se, epoch@cs.uiuc.edu,
        help-lucid-emacs@lucid.com, rpg%inferno@lucid.com
Subject: Epoch and EMACS merger
In-Reply-To: <9206230917.AA16758@mole.gnu.ai.mit.edu>
References: <9206230437.AA02757@inferno.lucid>
	<9206230917.AA16758@mole.gnu.ai.mit.edu>

>> So since then I've been giving Joe Arceneaux more supervision, and I
>> expect he will provide an interval implementation for Emacs 20.  Not
>> 19, because I don't want to delay that for these features.

What I understand from that is that if I want these features now
I should continue to use lucid-emacs as my Emacs 19, and wait
for a future Emacs 20 which might be some kind of a merge with
lucid-emacs, leading to one FSF Emacs.

Danny.

--

---------------------
Dan Bar Dov

Applied Materials (Israel)

Email:        danny@amil.co.il
Phone: office 972-3-499573
       home   972-3-5469625
TimeZone:     GMT-2

From help-lucid-emacs-request@lucid.com  Tue Jun 23 03:41:07 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA17225; Tue, 23 Jun 92 03:41:07 PDT
Received: by heavens-gate.lucid.com id AA26895g; Tue, 23 Jun 92 03:31:12 PDT
Received: from mole.gnu.ai.mit.edu by heavens-gate.lucid.com id AA26891g; Tue, 23 Jun 92 03:31:01 PDT
Received: by mole.gnu.ai.mit.edu (5.65/4.0)
	id <AA16884@mole.gnu.ai.mit.edu>; Tue, 23 Jun 92 06:39:11 -0400
Date: Tue, 23 Jun 92 06:39:11 -0400
From: rms@gnu.ai.mit.edu (Richard Stallman)
Message-Id: <9206231039.AA16884@mole.gnu.ai.mit.edu>
To: danny@amil.co.il
Cc: dansmith@autodesk.com, ebubra@ebu.ericsson.se, epoch@cs.uiuc.edu,
        help-lucid-emacs@lucid.com, rpg%inferno@lucid.com
In-Reply-To: Danny Bar-Dov's message of Tue, 23 Jun 92 13:25:26 IDT <9206231025.AA22457@amil.co.il>
Subject: Epoch and EMACS merger

    >> So since then I've been giving Joe Arceneaux more supervision, and I
    >> expect he will provide an interval implementation for Emacs 20.  Not
    >> 19, because I don't want to delay that for these features.

    What I understand from that is that if I want these features now
    I should continue to use lucid-emacs as my Emacs 19, and wait
    for a future Emacs 20 which might be some kind of a merge with
    lucid-emacs, leading to one FSF Emacs.

Using the phrase "these features" implies that one set of features is
being discussed.  That's not really true.(though there is some
overlap).

For exampe, Emacs 20 will support including formatting in the files
you edit, and also support temporary highlighting intervals.  Lucid
Emacs supports only the latter.  (Of course, our other versions don't
support either.)



From help-lucid-emacs-request@lucid.com  Tue Jun 23 05:48:29 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA17455; Tue, 23 Jun 92 05:48:29 PDT
Received: by heavens-gate.lucid.com id AA26902g; Tue, 23 Jun 92 03:38:14 PDT
Received: from amil.co.il by heavens-gate.lucid.com id AA26898g; Tue, 23 Jun 92 03:37:47 PDT
Received: from ipc8.AMIL ([192.86.90.18]) by amil.co.il (4.1/AMIL-M2)
	id AA24776; Tue, 23 Jun 92 13:45:30 IDT
Date: Tue, 23 Jun 92 13:45:30 IDT
From: danny@amil.co.il (Danny Bar-Dov)
Message-Id: <9206231045.AA24776@amil.co.il>
Received: by ipc8.AMIL (4.1/SMI-4.1)
	id AA03189; Tue, 23 Jun 92 13:45:26 IDT
To: rms@gnu.ai.mit.edu (Richard Stallman)
Cc: danny@amil.co.il, dansmith@autodesk.com, ebubra@ebu.ericsson.se,
        epoch@cs.uiuc.edu, help-lucid-emacs@lucid.com, rpg%inferno@lucid.com
Subject: Epoch and EMACS merger
In-Reply-To: <9206231039.AA16884@mole.gnu.ai.mit.edu>
References: <9206231025.AA22457@amil.co.il>
	<9206231039.AA16884@mole.gnu.ai.mit.edu>

>> Using the phrase "these features" implies that one set of features is
>> being discussed.  That's not really true.(though there is some
>> overlap).

Since Emacs 19 was not released yet, I do not have any way to know
which of the new features I see in lucid-emacs 19, (new means not
in Emacs 18) are from Emacs 19 and which are lucid's features.

If there is a NEWS file for Emacs 19 I'd be happy to compare it with
lucid's NEWS file.

Danny.

--

---------------------
Dan Bar Dov

Applied Materials (Israel)

Email:        danny@amil.co.il
Phone: office 972-3-499573
       home   972-3-5469625
TimeZone:     GMT-2

From help-lucid-emacs-request@lucid.com  Tue Jun 23 09:47:00 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA18414; Tue, 23 Jun 92 09:47:00 PDT
Received: by heavens-gate.lucid.com id AA27564g; Tue, 23 Jun 92 09:37:02 PDT
Received: from sun2.nsfnet-relay.ac.uk by heavens-gate.lucid.com id AA27555g; Tue, 23 Jun 92 09:34:45 PDT
Via: cs.city.ac.uk; Tue, 23 Jun 1992 17:43:04 +0100
Received: from Messages.8.5.N.CUILIB.3.45.SNAP.NOT.LINKED.barney.cs.city.ac.uk.sun4.40 
          via MS.5.6.barney.cs.city.ac.uk.sun4_40;
          Tue, 23 Jun 1992 17:45:45 +0100 (BST)
Message-Id: <keFpItG__5g811VVEJ@cs.city.ac.uk>
Date: Tue, 23 Jun 1992 17:45:45 +0100 (BST)
From: Andy Whitcroft <andy@cs.city.ac.uk>
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
To: help-lucid-emacs@lucid.com
Subject: Errors in .emacs file.

We have a problem with lucid.  If you have an error in your .emacs file
and you envoke lemacs the first time it will always dump core.

    %>!xe
    xemacs
    Fatal error (10).Bus error (core dumped)

If one then envoke lemacs a second time it always starts amd give you
the correct error message?  Any idea how it knows that this is the
`first time', and what is wrong?

Andy.

From help-lucid-emacs-request@lucid.com  Tue Jun 23 16:49:19 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA20019; Tue, 23 Jun 92 16:49:19 PDT
Received: by heavens-gate.lucid.com id AA28904g; Tue, 23 Jun 92 16:39:07 PDT
Received: from hugo.lucid (hugo.lucid.com) by heavens-gate.lucid.com id AA28896g; Tue, 23 Jun 92 16:38:49 PDT
Received: by hugo.lucid (4.1/SMI-4.1)
	id AA16119; Tue, 23 Jun 92 16:47:26 PDT
Date: Tue, 23 Jun 92 16:47:26 PDT
From: jla@lucid.com (Joseph Arceneaux)
Message-Id: <9206232347.AA16119@hugo.lucid>
To: rms@gnu.ai.mit.edu
Cc: rpg%inferno@lucid.com, help-lucid-emacs@lucid.com, epoch@cs.uiuc.edu,
        dansmith@autodesk.com, ebubra@ebu.ericsson.se
In-Reply-To: <9206231006.AA16826@mole.gnu.ai.mit.edu> (rms@gnu.ai.mit.edu)
Subject: Epoch and EMACS merger
Reply-To: jla@ai.mit.edu

As the person somewhat in the middle this extended phlegm, it strikes
me that both accounts of this history contain a certain degree of
inaccuracy.

Be that as it may, I would like to urge the parties involved to forget
all this and again make efforts to join forces.  Lucid has some
talented hackers which can and have done good things for emacs (in
fact, version 19 already uses some of their code), and if the "bosses"
can work out their politics, the community will benefit.

Joseph Arceneaux

From help-lucid-emacs-request@lucid.com  Tue Jun 23 20:55:23 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA20878; Tue, 23 Jun 92 20:55:23 PDT
Received: by heavens-gate.lucid.com id AA29399g; Tue, 23 Jun 92 20:45:35 PDT
Received: from clouso.crim.ca by heavens-gate.lucid.com id AA29395g; Tue, 23 Jun 92 20:45:27 PDT
Received: from ireq-robot.hydro.qc.ca by clouso.crim.ca (4.1/SMI-4.1)
	id AA29076; Tue, 23 Jun 92 23:53:42 EDT
Received: by ireq-robot.hydro.qc.ca (4.1/IRBT-2.4)
	id AA15049; Tue, 23 Jun 92 23:58:34 EDT
Date: Tue, 23 Jun 92 23:58:34 EDT
From: Martin Boyer <gamin%ireq-robot.hydro.qc.ca@lucid.com>
Message-Id: <9206240358.AA15049@ireq-robot.hydro.qc.ca>
To: jla@ai.mit.edu
Cc: dansmith@autodesk.com, ebubra@ebu.ericsson.se, epoch@cs.uiuc.edu,
        help-lucid-emacs@lucid.com, rms@gnu.ai.mit.edu, rpg%inferno@lucid.com
Subject: Re: Epoch and EMACS merger
References: <9206231006.AA16826@mole.gnu.ai.mit.edu>
	<9206232347.AA16119@hugo.lucid>

>>>>> Joseph Arceneaux writes:
>I would like to urge the parties involved to forget
>all this and again make efforts to join forces.

I heartily agree.  I just a mere user but, from the outside, this is
starting to look like the Sun/AT&T vs OSF battle for the "One true
Unix".

GNU Emacs became a de facto standard because it had features nothing
else had and because it was widely available.  Right now, it seems
that Lucid Emacs has those two qualities while GNU Emacs, alas, isn't
available.  Please! Think of the community and the delays that would
be introduced by the confusion.  Let's face it; Lucid is not going to
drop their version since sales depend on it.  On the other hand, the
FSF is not satisfied with it and is going to redo some coding and
implement other features.

Consider this suggestion: let's all work towards making Lucid Emacs
the long awaited "official" Emacs 19, learn from it, and integrate the
FSF's long term plans into Emacs 20.

--
Martin Boyer                            mboyer@ireq-robot.hydro.qc.ca
Institut de recherche d'Hydro-Quebec    mboyer@ireq-robot.uucp
Varennes, QC, Canada   J3X 1S1
+1 514 652-8412

From help-lucid-emacs-request@lucid.com  Tue Jun 23 21:58:27 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA20962; Tue, 23 Jun 92 21:58:27 PDT
Received: by heavens-gate.lucid.com id AA29500g; Tue, 23 Jun 92 21:48:30 PDT
Received: from srv01s4.cas.org by heavens-gate.lucid.com id AA29496g; Tue, 23 Jun 92 21:48:23 PDT
Date: Wed, 24 Jun 92 00:56:52 EDT
From: wxj23@cas.org (Wayne Johnson)
Message-Id: <9206240456.AA13807@cas.org>
To: help-lucid-emacs@lucid.com
Subject: Extended Elisp documentation

Have you added descriptions of the new functionality of Emacs 19.1 to
the elisp documentation of previous versions?  If so, where would I
find it in the leamcs-19.1 directories?

Wayne Johnson

From help-lucid-emacs-request@lucid.com  Tue Jun 23 22:06:13 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA20982; Tue, 23 Jun 92 22:06:13 PDT
Received: by heavens-gate.lucid.com id AA29516g; Tue, 23 Jun 92 21:56:15 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA29512g; Tue, 23 Jun 92 21:56:09 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA03436; Tue, 23 Jun 92 22:05:01 PDT
Date: Tue, 23 Jun 92 22:05:01 PDT
Message-Id: <9206240505.AA03436@thalidomide.lucid>
X-Windows: Power tools for power losers.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: wxj23@cas.org (Wayne Johnson)
Cc: help-lucid-emacs@lucid.com
Subject: Re: Extended Elisp documentation
In-Reply-To: Wayne Johnson's message of Wed 24-Jun-92 00:56:52 EDT <9206240456.AA13807@cas.org>
References: <9206240456.AA13807@cas.org>

Right now it's only in the etc/NEWS file.  It will be in the manual soon.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Tue Jun 23 23:45:12 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA21152; Tue, 23 Jun 92 23:45:12 PDT
Received: by heavens-gate.lucid.com id AA29650g; Tue, 23 Jun 92 23:34:14 PDT
Received: from sun4nl.nluug.nl by heavens-gate.lucid.com id AA29646g; Tue, 23 Jun 92 23:33:54 PDT
Received: from hsacsd by sun4nl.nluug.nl via EUnet
	id AA03985 (5.65b/CWI-3.3); Wed, 24 Jun 1992 08:41:56 +0200
Received: from morgan.hsacsd.signaal.nl by hsacsd.signaal.nl (4.1/SMI-4.1-mlbx)
	id AA21367; Wed, 24 Jun 92 08:18:29 +0200
Date: Wed, 24 Jun 92 08:18:28 +0200
From: jacobs%hsacsd.signaal.nl@lucid.com (jacobs private)
Message-Id: <9206240618.AA21367@hsacsd.signaal.nl>
To: bug-lucid-emacs-request@lucid.com, help-lucid-emacs@lucid.com
Subject: Add to mailling list

Can you add me to your lemacs mailing lists.

Thanks.

-- Willy Jacobs
-- jacobs@hsacsd.signaal.nl

From help-lucid-emacs-request@lucid.com  Wed Jun 24 08:31:50 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA23084; Wed, 24 Jun 92 08:31:50 PDT
Received: by heavens-gate.lucid.com id AA00656g; Wed, 24 Jun 92 08:17:40 PDT
Received: from relay2.UU.NET by heavens-gate.lucid.com id AA00652g; Wed, 24 Jun 92 08:17:32 PDT
Received: from ingr.ingr.com by relay2.UU.NET with SMTP 
	(5.61/UUNET-internet-primary) id AA06128; Wed, 24 Jun 92 11:25:49 -0400
Received: by ingr.ingr.com (5.61/INGR-1.1)
	id AA13504; Wed, 24 Jun 92 10:30:32 -0500
Received: from simpson.turtles by turtles (4.1/SMI-4.1)
	id AA13973; Wed, 24 Jun 92 17:50:38 IDT
Received: by simpson.turtles (4.1/SMI-4.1)
	id AA05182; Wed, 24 Jun 92 17:50:48 IDT
From: matis!amir@uunet.UU.NET (Amir Katz)
Message-Id: <9206241450.AA05182@simpson.turtles>
Subject: Find-file-other-screen?
To: help-lucid-emacs@lucid.com (Lucid Emacs help M.L.)
Date: Wed, 24 Jun 92 17:50:47 EET DST
Organization: SEE Technologies Ltd.
Reply-To: matis!ingr.COM!amir%matis.UUCP@uunet.UU.NET
Followup-To: amir%matis.UUCP@ingr.COM
X-Mailer: ELM [version 2.3 PL11]

Has anyone written a 'find-file-other-screen' function that will perform the
approximate sequence:
  x-new-screen
  switch-to-new-screen  (or whatever it's called)
  find-file

Screens are wonderful, but as it's implemented now, it's a hassle:
create new screen, move mouse into it, open a file.
-- 
/* Amir J. Katz          | UUCP:     uunet!ingr!matis!amir               */
/* System Specialist     | Internet: amir%matis.UUCP@ingr.COM            */
/* SEE Technologies Ltd. | Voice:    +972 52-584684, Fax: +972 52-543917 */

From help-lucid-emacs-request@lucid.com  Wed Jun 24 15:02:38 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA24251; Wed, 24 Jun 92 15:02:38 PDT
Received: by heavens-gate.lucid.com id AA01915g; Wed, 24 Jun 92 14:49:50 PDT
Received: from uu3.psi.com by heavens-gate.lucid.com id AA01911g; Wed, 24 Jun 92 14:49:28 PDT
Received: from bacon.UUCP by uu3.psi.com (5.65b/4.0.071791-PSI/PSINet)
	id AA27105; Wed, 24 Jun 92 17:57:41 -0400
Received: from yen.moore by bacon.IMSI.COM (4.1/SMI-4.1)
	id AA11030; Wed, 24 Jun 92 17:00:00 EDT
Date: Wed, 24 Jun 92 17:00:00 EDT
From: chris@imsi.com (Chris Payne)
Message-Id: <9206242100.AA11030@IMSI.COM>
Received: by yen.moore (4.1/SMI-4.1)
	id AA11060; Wed, 24 Jun 92 17:00:04 EDT
To: help-lucid-emacs@lucid.com
Subject: sign me up

  please add me to the help and bug mailing lists for lemacs...

chris@imsi.com, NYC

From help-lucid-emacs-request@lucid.com  Thu Jun 25 19:00:11 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA29297; Thu, 25 Jun 92 19:00:11 PDT
Received: by heavens-gate.lucid.com id AA05809g; Thu, 25 Jun 92 18:49:27 PDT
Received: from srv01s4.cas.org by heavens-gate.lucid.com id AA05805g; Thu, 25 Jun 92 18:49:21 PDT
Date: Thu, 25 Jun 92 21:58:07 EDT
From: wxj23@cas.org
Message-Id: <9206260158.AA12043@cas.org>
To: help-lucid-emacs@lucid.com
Subject: Where is Imake

We are trying to make Emacs 19.1 using the gcc compiler and are stuck
with the following message:

cd ./lwlib; if [ -f Makefile ]; then make Makefile; else xmkmf;fi
imake -DUseInstalled -I/x11/lib/X11/config
4: Can't find include file Imake.tmpl
imake: Exit code 2.  Stop.
*** Error code 1

Where in the gnu world is Imake and the Imake.tmpl file?

Wayne Johnson
To: 
Subject: 

From help-lucid-emacs-request@lucid.com  Thu Jun 25 19:08:29 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA29310; Thu, 25 Jun 92 19:08:29 PDT
Received: by heavens-gate.lucid.com id AA05819g; Thu, 25 Jun 92 18:58:15 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA05815g; Thu, 25 Jun 92 18:58:07 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA06298; Thu, 25 Jun 92 19:06:59 PDT
Date: Thu, 25 Jun 92 19:06:59 PDT
Message-Id: <9206260206.AA06298@thalidomide.lucid>
X-Windows: Live the nightmare.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: wxj23@cas.org
Cc: help-lucid-emacs@lucid.com
Subject: Re: Where is Imake
In-Reply-To: wxj23@cas.org's message of Thu 25-Jun-92 21:58:07 EDT <9206260158.AA12043@cas.org>
References: <9206260158.AA12043@cas.org>

In message <9206260158.AA12043@cas.org> wxj23@cas.org wrote:
>
> We are trying to make Emacs 19.1 using the gcc compiler and are stuck
> with the following message:

You will have an easier time compiling things if you get 19.2 from
labrea.stanford.edu.

> imake -DUseInstalled -I/x11/lib/X11/config
> 4: Can't find include file Imake.tmpl
> 
> Where in the gnu world is Imake and the Imake.tmpl file?

If imake can't find Imake.tmpl, then whoever installed X11 at your site
did it wrong.  Your system is configured to think Imake.tmpl is in the
directory /x11/lib/X11/config/, but clearly it's not...

	-- Jamie

From help-lucid-emacs-request@lucid.com  Thu Jun 25 21:31:43 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA29848; Thu, 25 Jun 92 21:31:43 PDT
Received: by heavens-gate.lucid.com id AA06106g; Thu, 25 Jun 92 21:20:45 PDT
Received: from srv01s4.cas.org by heavens-gate.lucid.com id AA06102g; Thu, 25 Jun 92 21:20:37 PDT
Date: Fri, 26 Jun 92 00:29:22 EDT
From: wxj23@cas.org
Message-Id: <9206260429.AA12661@cas.org>
To: jwz@lucid.com
Cc: help-lucid-emacs@lucid.com
In-Reply-To: Jamie Zawinski's message of Thu, 25 Jun 92 19:06:59 PDT <9206260206.AA06298@thalidomide.lucid>
Subject: Where is Imake

   Date: Thu, 25 Jun 92 19:06:59 PDT
   X-Windows: Live the nightmare.
   From: Jamie Zawinski <jwz@lucid.com>
   Sender: jwz%thalidomide@lucid.com
   References: <9206260158.AA12043@cas.org>

   In message <9206260158.AA12043@cas.org> wxj23@cas.org wrote:
   >
   > We are trying to make Emacs 19.1 using the gcc compiler and are stuck
   > with the following message:

   You will have an easier time compiling things if you get 19.2 from
   labrea.stanford.edu.

   > imake -DUseInstalled -I/x11/lib/X11/config
   > 4: Can't find include file Imake.tmpl
   > 
   > Where in the gnu world is Imake and the Imake.tmpl file?

   If imake can't find Imake.tmpl, then whoever installed X11 at your site
   did it wrong.  Your system is configured to think Imake.tmpl is in the
   directory /x11/lib/X11/config/, but clearly it's not...

You're right about that -- I'm remaking the entire x11r5 at the
moment.  However, even with the x11r5 configured to run under SUN
4.1.1, the makefile in src is invoking the 'xmkmf' to make the
Makefile in lwlib.  The 'xmkmf' configured in the x11r5 directory
creates Makefiles with CC set to Sun's compiler, while I'm using gcc
to make the rest of EMACS.  This creates problems in trying to compile
src/lwlib/lwlib.c.  Here's where I'm stuck right now:

imake -DUseInstalled -I/usr3/x11r5/install/lib/X11/config  -DTOPDIR=. -DCURDIR=.cd ./lwlib ; make  liblw.a
rm -f lwlib.o
cc -c -O    -I/usr3/x11r5/install/include       -DUSE_OLIT lwlib.c
lwlib.c: 39: undefined control
*** Error code 2
make: Fatal error: Command failed for target `lwlib.o'
Current working directory /usr1/emacs-19.1/lemacs-19.1/src/lwlib
*** Error code 1
make: Fatal error: Command failed for target `lwlib/liblw.a'
Current working directory /usr1/emacs-19.1/lemacs-19.1/src
*** Error code 1

Can you give me some tips of how best to pass along the C_SWITCH_SITE and
LD_SWITCH_SITE parameters from config.h to the program making the
Makefile in lwlib?  I prefer to specify all this junk in one place.

Wayne

From help-lucid-emacs-request@lucid.com  Thu Jun 25 21:35:20 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA29856; Thu, 25 Jun 92 21:35:20 PDT
Received: by heavens-gate.lucid.com id AA06113g; Thu, 25 Jun 92 21:24:58 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA06109g; Thu, 25 Jun 92 21:24:52 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA06399; Thu, 25 Jun 92 21:33:46 PDT
Date: Thu, 25 Jun 92 21:33:46 PDT
Message-Id: <9206260433.AA06399@thalidomide.lucid>
X-Windows: Japan's secret weapon.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: wxj23@cas.org
Cc: help-lucid-emacs@lucid.com
Subject: Re: Where is Imake
In-Reply-To: wxj23@cas.org's message of Fri 26-Jun-92 00:29:22 EDT <9206260429.AA12661@cas.org>
References: <9206260206.AA06298@thalidomide.lucid>
	<9206260429.AA12661@cas.org>

In message <9206260429.AA12661@cas.org> wxj23@cas.org wrote:
>
> You're right about that -- I'm remaking the entire x11r5 at the
> moment.  However, even with the x11r5 configured to run under SUN
> 4.1.1, the makefile in src is invoking the 'xmkmf' to make the
> Makefile in lwlib.  The 'xmkmf' configured in the x11r5 directory
> creates Makefiles with CC set to Sun's compiler, while I'm using gcc
> to make the rest of EMACS.

Yes, this is unfortunate.  The easiest way is to hack the Makefile by hand
once it has been generated by Imake.  Once lemacs is changed to use the GNU
"configure" system, this won't be a problem any more, because then we can
stop using Imake entirely.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Mon Jun 29 10:47:41 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA00468; Mon, 29 Jun 92 10:47:41 PDT
Received: by heavens-gate.lucid.com id AA13244g; Mon, 29 Jun 92 10:37:02 PDT
Received: from bullet.ecf.toronto.edu by heavens-gate.lucid.com id AA13239g; Mon, 29 Jun 92 10:36:52 PDT
Received: by bullet.ecf.toronto.edu id <8415>; Mon, 29 Jun 1992 13:45:35 -0300
From: Vince Pugliese <apollo@ecf.toronto.edu>
To: help-lucid-emacs@lucid.com
Subject: add me to mailing list
Message-Id: <92Jun29.134535adt.8415@bullet.ecf.toronto.edu>
Date: 	Mon, 29 Jun 1992 13:45:29 -0300



From help-lucid-emacs-request@lucid.com  Mon Jun 29 19:17:23 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA02619; Mon, 29 Jun 92 19:17:23 PDT
Received: by heavens-gate.lucid.com id AA14959g; Mon, 29 Jun 92 19:08:24 PDT
Received: from  mda.ca (mdavcr.mda.ca) by heavens-gate.lucid.com id AA14955g; Mon, 29 Jun 92 19:08:14 PDT
Received: from newton.mda.ca by  mda.ca (4.1/SMI-4.1-DNI)
	id AA09555; Mon, 29 Jun 92 19:14:05 PDT
Received: by newton.mda.ca (4.1/SMI-4.1)
	id AA18011; Mon, 29 Jun 92 19:14:04 PDT
Date: Mon, 29 Jun 92 19:14:04 PDT
From: rdr%newton.mda.ca@lucid.com (Randolph Roesler)
Message-Id: <9206300214.AA18011@newton.mda.ca>
To: help-lucid-emacs@lucid.com
Subject: Possible unexec problem ?


I have compiled lemacs.19 using gcc 2.1. The machine is a Sparc 2,
running SunOS 4.1.1 .

xemacs will not run. It aborts at startup tring to find a window
(it actually terminates in "next_window)

I think that perhaps unexsunos is messing up as I can execute
temacs OK.  It does not crash.

my s-file is s-sunos4.h, should I be using s-sunos4shr.h ?

Has anybody else managed to get lemacs to build properly in this
configuration ?

Randy Roesler                                MacDonald Dettwiler & Assc.
Ph. 604-278-3411 Fax. 604-278-2936           13800 Commerce Parkway,
email ...!uunet!van-bc!mdavcr!rdr            Richmond BC Canada
 rdr%mda.ca@wimsey.bc.ca or rdr@mda.ca       V6V 2J3

From help-lucid-emacs-request@lucid.com  Tue Jun 30 01:33:29 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA03447; Tue, 30 Jun 92 01:33:29 PDT
Received: by heavens-gate.lucid.com id AA15652g; Tue, 30 Jun 92 01:24:34 PDT
Received: from sun2.nsfnet-relay.ac.uk by heavens-gate.lucid.com id AA15648g; Tue, 30 Jun 92 01:24:27 PDT
Via: uk.ac.city.cs; Tue, 30 Jun 1992 09:32:34 +0100
Received: from Messages.8.5.N.CUILIB.3.45.SNAP.NOT.LINKED.barney.cs.city.ac.uk.sun4.40 
          via MS.5.6.barney.cs.city.ac.uk.sun4_40;
          Tue, 30 Jun 1992 09:35:17 +0100 (BST)
Message-Id: <QeI1n56__5g85Bj21A@cs.city.ac.uk>
Date: Tue, 30 Jun 1992 09:35:17 +0100 (BST)
From: Andy Whitcroft <andy@cs.city.ac.uk>
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
To: help-lucid-emacs@lucid.com
Subject: GNUS 3.14.1 ?

Is anyone working on porting GNUS 3.14.1 to lemacs?  We have used 3.14.1
for a while now and the slight differences are getting agravating.  What
kind of changes were required to make GNUS work with lemacs?

I cirtainly would be interested in alpha/beta/contributing to any
porting efforts.

Andy.






From help-lucid-emacs-request@lucid.com  Tue Jun 30 01:44:37 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA03485; Tue, 30 Jun 92 01:44:37 PDT
Received: by heavens-gate.lucid.com id AA15668g; Tue, 30 Jun 92 01:34:47 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA15664g; Tue, 30 Jun 92 01:34:41 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA11414; Tue, 30 Jun 92 01:43:47 PDT
Date: Tue, 30 Jun 92 01:43:47 PDT
Message-Id: <9206300843.AA11414@thalidomide.lucid>
X-Windows: Japan's secret weapon.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: Andy Whitcroft <andy@cs.city.ac.uk>
Cc: help-lucid-emacs@lucid.com
Subject: Re: GNUS 3.14.1 ?
In-Reply-To: Andy Whitcroft's message of Tue 30-Jun-92 09:35:17 +0100 <QeI1n56__5g85Bj21A@cs.city.ac.uk>
References: <QeI1n56__5g85Bj21A@cs.city.ac.uk>

In message <QeI1n56__5g85Bj21A@cs.city.ac.uk> Andy Whitcroft wrote:
>
> What kind of changes were required to make GNUS work with lemacs?

Mostly it was just a matter of tracking down uses of this-command-keys,
read-char, and so on: the cases where ASCII codes have given way to real
event objects.  David Zuhn started porting 3.14, but I don't think he
finished.  

The best approach would probably be to get a copy of 3.13 and compare our
version to that.  Then look through 3.14 for code similar to that code that
was changed.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Tue Jun 30 03:07:25 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA03673; Tue, 30 Jun 92 03:07:25 PDT
Received: by heavens-gate.lucid.com id AA15785g; Tue, 30 Jun 92 02:56:25 PDT
Received: from relay1.UU.NET by heavens-gate.lucid.com id AA15781g; Tue, 30 Jun 92 02:55:29 PDT
Received: from cygnus.com by relay1.UU.NET with SMTP 
	(5.61/UUNET-internet-primary) id AA09700; Tue, 30 Jun 92 06:04:21 -0400
Received: from cirdan.cygnus.com by cygnus.com (4.1/SMI-4.1)
	id AA12720; Tue, 30 Jun 92 03:04:21 PDT
Date: Tue, 30 Jun 92 03:04:21 PDT
Message-Id: <9206301004.AA12720@cygnus.com>
Received: by cirdan.cygnus.com (4.1/SMI-4.1)
	id AA23003; Tue, 30 Jun 92 03:04:20 PDT
From: david d `zoo' zuhn <zoo@cygnus.com>
Sender: zoo@cygnus.com
Organization: Cygnus Support -- +1 415 322 3811
To: jwz@lucid.com (Jamie Zawinski)
Cc: help-lucid-emacs@lucid.com
In-Reply-To: jwz@lucid.com's message of 
Subject: Re: GNUS 3.14.1 ?
X-Windows: There's got to be a better way.
   event objects.  David Zuhn started porting 3.14, but I don't think he
   finished.  

Right, and I don't have the time to continue this.  What I did was
take a stock 3.13 and create diffs from the Lucid version, and apply
those patches to 3.14.1.  They went in fairly easily, but I still had
problems ('twas unusable).  I don't have a lot of time to spend inside
of GNUS when I have a working version (albeit slightly older).  I've
got many other things to be doing (so what I am doing reading news?)

From help-lucid-emacs-request@lucid.com  Tue Jun 30 11:37:09 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA05703; Tue, 30 Jun 92 11:37:09 PDT
Received: by heavens-gate.lucid.com id AA16777g; Tue, 30 Jun 92 11:27:18 PDT
Received: from moebius.loria.fr by heavens-gate.lucid.com id AA16738g; Tue, 30 Jun 92 11:20:50 PDT
Received: by moebius.loria.fr id AA05967
  (5.65c+/IDA-1.4.3 for help-lucid-emacs@lucid.com); Tue, 30 Jun 92 20:28:22 +0200
Date: Tue, 30 Jun 92 20:28:22 +0200
From: Guido Bosch <Guido.Bosch%loria.fr@lucid.com>
Message-Id: <9206301828.AA05967@moebius.loria.fr>
To: help-lucid-emacs@lucid.com
Subject: mouse-motion-handler
Reply-To: Guido BOSCH <bosch%loria.fr@lucid.com>

Hi,

Playing around with Lucid Emacs' mouse-motion-handler, I wrote tree
mouse tracking functions that do funny things: highlighting
characters, lines or sexpressions when the mouse goes over them.
This might be useful to add mouse selection features for
different modes.

However, there is a bug in it that I can't fix: 

Display  two different buffers at the same screen, each
buffer running a different mouse-motion-handler (I made the variable
buffer local). When switching between the two buffers by keybord
commans (C-x o), everythng works well. But just moving the mouse from
one window to the other often results in blocking the
mouse-motion-handler. Leaving the Emacs window and comming back with
the mouse, as well as any key stroke event make things working again.

Who knows what happens?

To try my hack, save the two files, evaluate (or better compile and
load) them, then put the cursor after one of the
(setq mouse-motion-handler ... ) forms in the first file, type C-x C-e
and see what happens.

	
  Guido



-------------------- mouse-track-highlighting.el --------------------
;;   -*- Syntax: Emacs-Lisp; Mode: emacs-lisp -*- 
;; 
;; writen by Guido Bosch <bosch@loria.fr>, INRIA Lorraine, France
;;
;; Please send bugs and comments to the above address
;;
;; <DISCLAIMER>
;; This program is still under development.  Neither the author nor
;; INRIA accepts responsibility to anyone for the consequences of
;; using it or for whether it serves any particular purpose or works
;; at all.
;;
;;  Mouse tracking with highliting
;;   - single characters `x-track-highlight-char'
;;   - whole lines       `x-track-highlight-line'
;;   - "things"          `x-track-highlight-thing'
;;     (see file things.el to see what "thigs" are)
;;
;; This file is not a package.  It only contains basic mouse tracking
;; functions. They have to be installed be hand using one of the
;; folowing forms:
;;
;; (setq mouse-motion-handler 'x-track-highlight-char)
;; (setq mouse-motion-handler 'x-track-highlight-line)
;; (setq mouse-motion-handler 'x-track-highlight-thing)
;;
;; to reinstall the default mouse motion handler:
;; (setq mouse-motion-handler 'x-track-pointer)


(require 'x-mouse)
(require 'thing)

(setq-default mouse-motion-handler 'x-track-pointer)

;; This 
(make-variable-buffer-local 'mouse-motion-handler)
;mouse-motion-handler
(provide 'mouse-track-highlighting.el)

(make-variable-buffer-local 'x-track-highlight-extend)
(setq-default x-track-highlight-extend nil)

(defvar x-track-highlight-extend nil
  "Extend for highliting single characters during mouse motion. See 
the function `x-track-highlight-region'.")

(defvar x-top-left-arrow nil)
(setq x-top-left-arrow "top_left_arrow")

(defun x-track-highlight-char (event)
  "Track the mouse motion by highlighting the character mouse is on.
This function can be used as value of the variable `mouse-motion-handler'.
Takes One Argument: EVENT"

  (x-track-highlight-region
   event
   (function 
    (lambda (point) (cons point (1+ point))))))


(defun x-track-highlight-line (event)
  "Track the mouse motion by highlighting the line mouse is in.
This function can be used as value of the variable `mouse-motion-handler'.
Takes One Argument: EVENT"

  (x-track-highlight-region
   event
   (function thing-get-line)))


(defun x-track-highlight-thing (event)
    "Track the mouse motion by highlighting the syntactic structure
mouse is in.  This function can be used as value of the variable
`mouse-motion-handler'.  Takes One Argument: EVENT"

  (x-track-highlight-region
   event
   (function thing-boundaries)))


(defun x-track-highlight-region (event compute-region)
  "Highlight a region of text for a given mouse motion EVENT.  The
function to compute the region is given as the second argument,
COMPUTE-REGION.  It takes one argument, a character position, and
returns (<START> . <END>), the region to be highlighted."

  (let* ((window (event-window event))
	 (screen (if window (window-screen window) (selected-screen)))
	 (buffer (and window (window-buffer window)))
	 (point  (event-point event))
	 region
	 glyph)

    (setq glyph
	  (cond (point 'x-top-left-arrow)
		(window
		 (cond (x-nontext-pointer-shape 'x-nontext-pointer-shape)
		       (x-pointer-shape 'x-pointer-shape)))
		(t (cond (x-mode-pointer-shape 'x-mode-pointer-shape)
			 (x-nontext-pointer-shape 'x-nontext-pointer-shape)
			 (x-pointer-shape 'x-pointer-shape)))))

    (if buffer (set-buffer buffer))
    (if window (select-window window))

    (if (and point
	     ;; compute the region to be highlighted
	     (setq region
		   (condition-case c
		       (funcall compute-region point)
		     (error (message "%s" (car (cdr c))) nil))))
	(progn 
	  (if x-track-highlight-extend
	      ;; update position if extent exists
	      (set-extent-endpoints
	       x-track-highlight-extend (car region) (cdr region))
	    ;; otherwise create a new one 
	    (setq x-track-highlight-extend
		  (make-extent (car region) (cdr region)))
	    (set-extent-attribute x-track-highlight-extend 'highlight))

	  ;; do the highliting
	  (highlight-extent x-track-highlight-extend 't)
	  (message ""))
      ;; unhighlight 
      (highlight-extent x-track-highlight-extend 'nil))

    (condition-case c
	(if (symbol-value glyph)
	    (x-set-screen-pointer
	     screen (symbol-value glyph)
	     x-pointer-foreground-color
	     x-pointer-background-color))
      (error
       (x-track-pointer-damage-control c glyph)))))


(defun mouse-motion-tester (event)
  (message "Window: %s; X: %s; Y: %s; Pointer: %s"
	   (event-window event)
	   (event-x event)
	   (event-y event)
	   (event-point event)))

;; (setq mouse-motion-handler 'mouse-motion-tester)

------------------------------ thing.el ------------------------------
;;; thing.el
;;; adapted from Joshua Guttman's Thing.el
;;; by Dan L. Pierson <pierson@encore.com>, 2/5/90
;;; adapted from sun-fns.el by Joshua Guttman, MITRE.  
;;; adapted to Lucid Emacs from epoch-thing.el 
;;; by Guido Bosch <bosch@loria.fr>, 6/30/92

(provide 'thing)

(defun thing-boundaries (here)

  "Return start and end of text object at HERE using syntax table and
thing-boundary-alist.  Thing-boundary-alist is a list of pairs of the
form (SYNTAX-CHAR FUNCTION) where FUNCTION takes a single position
argument and returns a cons of places (start end) representing
boundaries of the thing at that position.
Typically:
   Left or right Paren syntax indicates an s-expression.	
   The end of a line marks the line including a trailing newline. 
   Word syntax indicates current word. 
   Symbol syntax indicates symbol.
   If it doesn't recognize one of these it selects just the character HERE.

If an error occurs  during syntax scanning, the function just prints a
message and returns `nil'."

  (interactive "d")
  (if (save-excursion (goto-char here) (eolp))
      (thing-get-line here)
    (let*
	((syntax (char-syntax (char-after here)))
	 (pair (assq syntax thing-boundary-alist)))
      
      (if pair
	  (funcall (car (cdr pair)) here)
	(cons here (1+ here))))))


(defvar thing-boundary-alist
  '((?w thing-word)
    (?_ thing-symbol)
    (?\( thing-sexp-start)
    (?\$ thing-sexp-start)
    (?' thing-sexp-start)
    (?\" thing-sexp-start)
    (?\) thing-sexp-end)
    (?  thing-whitespace))
  "*List of pairs of the form (SYNTAX-CHAR FUNCTION) used by 
the function `thing-boundaries'.")
  
(defun thing-get-line (here)
  "Return whole of line HERE is in, with newline unless at eob."
  (let (start)
    (save-excursion
      (goto-char here)
      (beginning-of-line)
      (setq start (point))
      (end-of-line)
      (cons start (point)))))


(defun thing-word (here)
  "Return start and end of word at HERE."
  (save-excursion
    (goto-char here)
    (forward-word 1)
    (let ((end (point)))
      (forward-word -1)
      (cons (point) end))))


(defun thing-symbol (here)
  "Return start and end of symbol at HERE."
  (let ((end (scan-sexps here 1)))
    (cons (min here (scan-sexps end -1)) end )))

(defun thing-sexp-start (here)
  "Return start and end of sexp starting HERE."
  (cons here (scan-sexps here 1)))


(defun thing-sexp-end (here)
  "Return start and end of sexp ending HERE."
  (cons (scan-sexps (1+ here) -1) (1+ here)))


(defun thing-whitespace (here)
  "Returns always `nil'. This means that whitespaces are not considered 
to be \"things\"."
  nil)


(defun kill-thing-at-point (here)
  "Kill text object using syntax table.
See thing-boundaries for definition of text objects"
  (interactive "d")
  (let ((bounds (thing-boundaries here)))
    (kill-region (car bounds) (cdr bounds))))


(defun copy-thing-at-point (here)
  "Copy text object using syntax table.
See thing-boundaries for definition of text objects"
  (interactive "d")
  (let ((bounds (thing-boundaries here)))
    (copy-region-as-kill (car bounds) (cdr bounds))))



From help-lucid-emacs-request@lucid.com  Tue Jun 30 12:29:39 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA05936; Tue, 30 Jun 92 12:29:39 PDT
Received: by heavens-gate.lucid.com id AA17013g; Tue, 30 Jun 92 12:20:27 PDT
Received: from moebius.loria.fr by heavens-gate.lucid.com id AA17007g; Tue, 30 Jun 92 12:20:08 PDT
Received: by moebius.loria.fr id AA05967
  (5.65c+/IDA-1.4.3 for help-lucid-emacs@lucid.com); Tue, 30 Jun 92 20:28:22 +0200
Date: Tue, 30 Jun 92 20:28:22 +0200
From: Guido Bosch <Guido.Bosch%loria.fr@lucid.com>
Message-Id: <9206301828.AA05967@moebius.loria.fr>
To: help-lucid-emacs@lucid.com
Subject: mouse-motion-handler
Reply-To: Guido BOSCH <bosch%loria.fr@lucid.com>

Hi,

Playing around with Lucid Emacs' mouse-motion-handler, I wrote tree
mouse tracking functions that do funny things: highlighting
characters, lines or sexpressions when the mouse goes over them.
This might be useful to add mouse selection features for
different modes.

However, there is a bug in it that I can't fix: 

Display  two different buffers at the same screen, each
buffer running a different mouse-motion-handler (I made the variable
buffer local). When switching between the two buffers by keybord
commans (C-x o), everythng works well. But just moving the mouse from
one window to the other often results in blocking the
mouse-motion-handler. Leaving the Emacs window and comming back with
the mouse, as well as any key stroke event make things working again.

Who knows what happens?

To try my hack, save the two files, evaluate (or better compile and
load) them, then put the cursor after one of the
(setq mouse-motion-handler ... ) forms in the first file, type C-x C-e
and see what happens.

	
  Guido



-------------------- mouse-track-highlighting.el --------------------
;;   -*- Syntax: Emacs-Lisp; Mode: emacs-lisp -*- 
;; 
;; writen by Guido Bosch <bosch@loria.fr>, INRIA Lorraine, France
;;
;; Please send bugs and comments to the above address
;;
;; <DISCLAIMER>
;; This program is still under development.  Neither the author nor
;; INRIA accepts responsibility to anyone for the consequences of
;; using it or for whether it serves any particular purpose or works
;; at all.
;;
;;  Mouse tracking with highliting
;;   - single characters `x-track-highlight-char'
;;   - whole lines       `x-track-highlight-line'
;;   - "things"          `x-track-highlight-thing'
;;     (see file things.el to see what "thigs" are)
;;
;; This file is not a package.  It only contains basic mouse tracking
;; functions. They have to be installed be hand using one of the
;; folowing forms:
;;
;; (setq mouse-motion-handler 'x-track-highlight-char)
;; (setq mouse-motion-handler 'x-track-highlight-line)
;; (setq mouse-motion-handler 'x-track-highlight-thing)
;;
;; to reinstall the default mouse motion handler:
;; (setq mouse-motion-handler 'x-track-pointer)


(require 'x-mouse)
(require 'thing)

(setq-default mouse-motion-handler 'x-track-pointer)

;; This 
(make-variable-buffer-local 'mouse-motion-handler)
;mouse-motion-handler
(provide 'mouse-track-highlighting.el)

(make-variable-buffer-local 'x-track-highlight-extend)
(setq-default x-track-highlight-extend nil)

(defvar x-track-highlight-extend nil
  "Extend for highliting single characters during mouse motion. See 
the function `x-track-highlight-region'.")

(defvar x-top-left-arrow nil)
(setq x-top-left-arrow "top_left_arrow")

(defun x-track-highlight-char (event)
  "Track the mouse motion by highlighting the character mouse is on.
This function can be used as value of the variable `mouse-motion-handler'.
Takes One Argument: EVENT"

  (x-track-highlight-region
   event
   (function 
    (lambda (point) (cons point (1+ point))))))


(defun x-track-highlight-line (event)
  "Track the mouse motion by highlighting the line mouse is in.
This function can be used as value of the variable `mouse-motion-handler'.
Takes One Argument: EVENT"

  (x-track-highlight-region
   event
   (function thing-get-line)))


(defun x-track-highlight-thing (event)
    "Track the mouse motion by highlighting the syntactic structure
mouse is in.  This function can be used as value of the variable
`mouse-motion-handler'.  Takes One Argument: EVENT"

  (x-track-highlight-region
   event
   (function thing-boundaries)))


(defun x-track-highlight-region (event compute-region)
  "Highlight a region of text for a given mouse motion EVENT.  The
function to compute the region is given as the second argument,
COMPUTE-REGION.  It takes one argument, a character position, and
returns (<START> . <END>), the region to be highlighted."

  (let* ((window (event-window event))
	 (screen (if window (window-screen window) (selected-screen)))
	 (buffer (and window (window-buffer window)))
	 (point  (event-point event))
	 region
	 glyph)

    (setq glyph
	  (cond (point 'x-top-left-arrow)
		(window
		 (cond (x-nontext-pointer-shape 'x-nontext-pointer-shape)
		       (x-pointer-shape 'x-pointer-shape)))
		(t (cond (x-mode-pointer-shape 'x-mode-pointer-shape)
			 (x-nontext-pointer-shape 'x-nontext-pointer-shape)
			 (x-pointer-shape 'x-pointer-shape)))))

    (if buffer (set-buffer buffer))
    (if window (select-window window))

    (if (and point
	     ;; compute the region to be highlighted
	     (setq region
		   (condition-case c
		       (funcall compute-region point)
		     (error (message "%s" (car (cdr c))) nil))))
	(progn 
	  (if x-track-highlight-extend
	      ;; update position if extent exists
	      (set-extent-endpoints
	       x-track-highlight-extend (car region) (cdr region))
	    ;; otherwise create a new one 
	    (setq x-track-highlight-extend
		  (make-extent (car region) (cdr region)))
	    (set-extent-attribute x-track-highlight-extend 'highlight))

	  ;; do the highliting
	  (highlight-extent x-track-highlight-extend 't)
	  (message ""))
      ;; unhighlight 
      (highlight-extent x-track-highlight-extend 'nil))

    (condition-case c
	(if (symbol-value glyph)
	    (x-set-screen-pointer
	     screen (symbol-value glyph)
	     x-pointer-foreground-color
	     x-pointer-background-color))
      (error
       (x-track-pointer-damage-control c glyph)))))


(defun mouse-motion-tester (event)
  (message "Window: %s; X: %s; Y: %s; Pointer: %s"
	   (event-window event)
	   (event-x event)
	   (event-y event)
	   (event-point event)))

;; (setq mouse-motion-handler 'mouse-motion-tester)

------------------------------ thing.el ------------------------------
;;; thing.el
;;; adapted from Joshua Guttman's Thing.el
;;; by Dan L. Pierson <pierson@encore.com>, 2/5/90
;;; adapted from sun-fns.el by Joshua Guttman, MITRE.  
;;; adapted to Lucid Emacs from epoch-thing.el 
;;; by Guido Bosch <bosch@loria.fr>, 6/30/92

(provide 'thing)

(defun thing-boundaries (here)

  "Return start and end of text object at HERE using syntax table and
thing-boundary-alist.  Thing-boundary-alist is a list of pairs of the
form (SYNTAX-CHAR FUNCTION) where FUNCTION takes a single position
argument and returns a cons of places (start end) representing
boundaries of the thing at that position.
Typically:
   Left or right Paren syntax indicates an s-expression.	
   The end of a line marks the line including a trailing newline. 
   Word syntax indicates current word. 
   Symbol syntax indicates symbol.
   If it doesn't recognize one of these it selects just the character HERE.

If an error occurs  during syntax scanning, the function just prints a
message and returns `nil'."

  (interactive "d")
  (if (save-excursion (goto-char here) (eolp))
      (thing-get-line here)
    (let*
	((syntax (char-syntax (char-after here)))
	 (pair (assq syntax thing-boundary-alist)))
      
      (if pair
	  (funcall (car (cdr pair)) here)
	(cons here (1+ here))))))


(defvar thing-boundary-alist
  '((?w thing-word)
    (?_ thing-symbol)
    (?\( thing-sexp-start)
    (?\$ thing-sexp-start)
    (?' thing-sexp-start)
    (?\" thing-sexp-start)
    (?\) thing-sexp-end)
    (?  thing-whitespace))
  "*List of pairs of the form (SYNTAX-CHAR FUNCTION) used by 
the function `thing-boundaries'.")
  
(defun thing-get-line (here)
  "Return whole of line HERE is in, with newline unless at eob."
  (let (start)
    (save-excursion
      (goto-char here)
      (beginning-of-line)
      (setq start (point))
      (end-of-line)
      (cons start (point)))))


(defun thing-word (here)
  "Return start and end of word at HERE."
  (save-excursion
    (goto-char here)
    (forward-word 1)
    (let ((end (point)))
      (forward-word -1)
      (cons (point) end))))


(defun thing-symbol (here)
  "Return start and end of symbol at HERE."
  (let ((end (scan-sexps here 1)))
    (cons (min here (scan-sexps end -1)) end )))

(defun thing-sexp-start (here)
  "Return start and end of sexp starting HERE."
  (cons here (scan-sexps here 1)))


(defun thing-sexp-end (here)
  "Return start and end of sexp ending HERE."
  (cons (scan-sexps (1+ here) -1) (1+ here)))


(defun thing-whitespace (here)
  "Returns always `nil'. This means that whitespaces are not considered 
to be \"things\"."
  nil)


(defun kill-thing-at-point (here)
  "Kill text object using syntax table.
See thing-boundaries for definition of text objects"
  (interactive "d")
  (let ((bounds (thing-boundaries here)))
    (kill-region (car bounds) (cdr bounds))))


(defun copy-thing-at-point (here)
  "Copy text object using syntax table.
See thing-boundaries for definition of text objects"
  (interactive "d")
  (let ((bounds (thing-boundaries here)))
    (copy-region-as-kill (car bounds) (cdr bounds))))



From help-lucid-emacs-request@lucid.com  Tue Jun 30 13:16:01 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA06155; Tue, 30 Jun 92 13:16:01 PDT
Received: by heavens-gate.lucid.com id AA17190g; Tue, 30 Jun 92 13:07:04 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA17182g; Tue, 30 Jun 92 13:06:54 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA12552; Tue, 30 Jun 92 13:15:50 PDT
Date: Tue, 30 Jun 92 13:15:50 PDT
Message-Id: <9206302015.AA12552@thalidomide.lucid>
X-Windows: The Cutting Edge of Obsolescence.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: Guido BOSCH <bosch%loria.fr@lucid.com>
Cc: help-lucid-emacs@lucid.com
Subject: Re: mouse-motion-handler
In-Reply-To: Guido Bosch's message of Tue 30-Jun-92 20:28:22 +0200 <9206301828.AA05967@moebius.loria.fr>
References: <9206301828.AA05967@moebius.loria.fr>

You're losing because you're globally changing the current buffer and selected
window from the mouse-motion handler.  This is bad news, in the same way that
globally changing the current buffer or selected window from a process filter
is.  

I don't believe it's actually blocking in the mouse-motion handler, it's just
not updating the extents the way you expect.  I haven't looked that closely,
but possibly this is because you're trying to move an extent from one buffer
to another (I don't know that that works.)

Remember that the mouse-motion handler which is called will be the one of
whatever buffer happens to be current, -not- that of the buffer which is
displayed in the window under the mouse.

This is different than mouse-clicks, which are looked up in the buffer of
the click.  Perhaps mouse-motion should work that way as well.

They're called "extents", not "extends."

None of that code is really X-specific, so the function names shouldn't 
begin with x-.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Tue Jun 30 14:12:53 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA06357; Tue, 30 Jun 92 14:12:53 PDT
Received: by heavens-gate.lucid.com id AA17430g; Tue, 30 Jun 92 14:02:46 PDT
Received: from CAMIS.Stanford.EDU by heavens-gate.lucid.com id AA17426g; Tue, 30 Jun 92 14:02:38 PDT
Received: from mcs-ipc-4.Stanford.EDU by CAMIS.Stanford.EDU (4.1/inc-1.0)
	id AA00711; Tue, 30 Jun 92 14:11:32 PDT
Date: Tue, 30 Jun 1992 14:07:53 -0700 (PDT)
From: Kevin Brock <Brock@sumex-aim.stanford.edu>
Reply-To: Brock@sumex-aim.stanford.edu
Subject: Re: mouse-motion-handler
To: help-lucid-emacs@lucid.com
In-Reply-To: Jamie Zawinski's message of Tue, 30 Jun 92 13:15:50 PDT: <9206302015.AA12552@thalidomide.lucid>
Message-Id: <Ximap.709938688.7590.brock@MCS-IPC-4>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

I took a look at this code because I wanted to see it work, but
when I loaded it and set the mouse handler, nothing appeared to
happen.  I found out that *if I already had text highlighted* then
the mouse handler would perform as described, bug and all, by
*unhighlighting* the line/char/thing in question.  Why is this 
happening?  Is there something obvious that I can't seem to dig out
of the NEWS file, or is it more subtle?

Kevin Brock
brock@sumex-aim.stanford.edu



From help-lucid-emacs-request@lucid.com  Wed Jul  1 02:40:42 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA09004; Wed, 1 Jul 92 02:40:42 PDT
Received: by heavens-gate.lucid.com id AA19172g; Wed, 1 Jul 92 02:29:02 PDT
Received: from moebius.loria.fr by heavens-gate.lucid.com id AA19166g; Wed, 1 Jul 92 02:28:47 PDT
Received: by moebius.loria.fr id AA06361
  (5.65c+/IDA-1.4.3 for help-lucid-emacs@lucid.com); Wed, 1 Jul 92 11:36:22 +0200
Date: Wed, 1 Jul 92 11:36:22 +0200
From: Guido Bosch <Guido.Bosch%loria.fr@lucid.com>
Message-Id: <9207010936.AA06361@moebius.loria.fr>
To: Jamie Zawinski <jwz@lucid.com>
Cc: help-lucid-emacs@lucid.com
Subject: Re: mouse-motion-handler
In-Reply-To: <9206302015.AA12552@thalidomide.lucid>
References: <9206301828.AA05967@moebius.loria.fr>
	<9206302015.AA12552@thalidomide.lucid>
Reply-To: Guido BOSCH <bosch%loria.fr@lucid.com>

Jamie Zawinski writes:
 > You're losing because you're globally changing the current buffer and selected
 > window from the mouse-motion handler.  This is bad news, in the same way that
 > globally changing the current buffer or selected window from a process filter
 > is.  

I don't agree with you in that point. Selecting an other buffer and
window mmay be exactly what the user wants when moving the mouse from
one window to an other, even without clicking.

The case of a proces filter is different: in this case there is
usually something happening in the background without any user
interaction, and this, of course, should not globally select other
buffers and windows.

 > I don't believe it's actually blocking in the mouse-motion handler,
 > it's just not updating the extents the way you expect.

Don't think so. There are some other visible effects of the motion
handlers that do not depend on extents: the changing of mouse glyphs.
And they also  don't work anymore. 

If I remove the select-window call, things work better but still keep on
confusing me. 

To be frank, I've never completely understood what exactly `select-window'
does and which is its correct usage together with `set-buffer'. 

 > I haven't looked that closely, but possibly this is because you're
 > trying to move an extent from one buffer to another (I don't know
 > that that works.)

I put the extent into a per buffer variable (and that's also why I do
buffer selection before updating or creaing the extent). Anyway, you
can see if you use an extent from a foreign buffer: it keeps
highlighting there while the mouse moves somewhere else. 

 > 
 > Remember that the mouse-motion handler which is called will be the one of
 > whatever buffer happens to be current, -not- that of the buffer which is
 > displayed in the window under the mouse.
 > 
 > This is different than mouse-clicks, which are looked up in the buffer of
 > the click.  Perhaps mouse-motion should work that way as well.
 > 

This would help a lot. A more general discussion on that subject is:

Does the mouse motion handler has to be

	- global (seems to be the case now),

	- mode specific (could be implemented by a global motion
	  handler that dispatches according to the major mode),

	- buffer local (what I tried to implement)
 	  Making the variable mouse-motion-handler buffer local 
          seems to be a good idea, but then there is the problem 
          of buffer selection. 
	


 > None of that code is really X-specific, so the function names shouldn't 
 > begin with x-.
 > 

Well, I took `x-track-pointer' in "lisp/x11/x-mouse.el" as an example how
to build my functions, which I then called `x-track-highlight-*'.

I agree that the names are not well chosen, but then this is also true
for some of the stuff in "lisp/x11/x-mouse.el".

I will call my functions `mouse-track-*'.

	Guido

From help-lucid-emacs-request@lucid.com  Wed Jul  1 18:12:46 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA12020; Wed, 1 Jul 92 18:12:46 PDT
Received: by heavens-gate.lucid.com id AA21512g; Wed, 1 Jul 92 17:56:29 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA21508g; Wed, 1 Jul 92 17:56:13 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA16608; Wed, 1 Jul 92 18:05:18 PDT
Date: Wed, 1 Jul 92 18:05:18 PDT
Message-Id: <9207020105.AA16608@thalidomide.lucid>
X-Windows: It could happen to you.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: Guido BOSCH <bosch%loria.fr@lucid.com>
Cc: help-lucid-emacs@lucid.com
Subject: Re: mouse-motion-handler
In-Reply-To: Guido Bosch's message of Wed 1-Jul-92 11:36:22 +0200 <9207010936.AA06361@moebius.loria.fr>
References: <9206301828.AA05967@moebius.loria.fr>
	<9206302015.AA12552@thalidomide.lucid>
	<9207010936.AA06361@moebius.loria.fr>

In message <9207010936.AA06361@moebius.loria.fr> Guido Bosch wrote:
>
> Jamie Zawinski writes:
>  > You're losing because you're globally changing the current buffer and
>  > selected window from the mouse-motion handler.  This is bad news, in the
>  > same way that globally changing the current buffer or selected window
>  > from a process filter is.
> 
> I don't agree with you in that point. Selecting an other buffer and
> window mmay be exactly what the user wants when moving the mouse from
> one window to an other, even without clicking.

It may be a reasonable thing to want to do, but the current implementation
of the mouse-motion-handler makes it behave exactly like a process filter.
Therefore changing the current buffer, selected window, or whatever will
make lots of things malfunction.  GNUS, for example, will blow up if you
move the mouse into another window while an article is being retrieved.

> Does the mouse motion handler has to be
> 
> 	- global (seems to be the case now),
> 
> 	- mode specific (could be implemented by a global motion
> 	  handler that dispatches according to the major mode),
> 
> 	- buffer local (what I tried to implement)
>  	  Making the variable mouse-motion-handler buffer local 
>           seems to be a good idea, but then there is the problem 
>           of buffer selection. 

I don't think there's any problem with the mouse-motion handler being
buffer-local, but it will (currently) be local to the globally current buffer
(the buffer in the window where the cursor is) not the buffer in the window
that the mouse is over.  

"Mode-specific" could also be implemented via "buffer local."

	-- Jamie

From help-lucid-emacs-request@lucid.com  Wed Jul  1 18:38:43 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA12070; Wed, 1 Jul 92 18:38:43 PDT
Received: by heavens-gate.lucid.com id AA21598g; Wed, 1 Jul 92 18:28:41 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA21594g; Wed, 1 Jul 92 18:28:28 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA16658; Wed, 1 Jul 92 18:37:32 PDT
Date: Wed, 1 Jul 92 18:37:32 PDT
Message-Id: <9207020137.AA16658@thalidomide.lucid>
X-Windows: A moment of convenience, a lifetime of regret.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: help-lucid-emacs@lucid.com
Subject: Lucid Emacs newsgroups

Thanks to Kyle Jones, we now have a pair of newsgroups bidirectionally
gatewayed into the bug-lucid-emacs and help-lucid-emacs newsgroups.
They are alt.lucid-emacs.bug and alt.lucid-emacs.help.

I expect that many of you will want to unsubscribe from the mailing lists,
and read the messages in newsgroup form instead.  However, I would advise 
you to wait a few weeks before unsubscribing, so that we know that the 
gateway is functioning properly.

We wanted the newsgroups to be gnu.lucid-emacs.bug and gnu.lucid-emacs.help,
but the FSF folks are not willing to allow the creation of those groups.
In fact, it would appear that they are unwilling even to allow us to
announce the existence of our version of emacs on their newsgroups.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Thu Jul  2 07:52:05 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA15109; Thu, 2 Jul 92 07:52:05 PDT
Received: by heavens-gate.lucid.com id AA22944g; Thu, 2 Jul 92 07:40:28 PDT
Received: from linus.mitre.org by heavens-gate.lucid.com id AA22939g; Thu, 2 Jul 92 07:40:09 PDT
Return-Path: <guttman@linus.mitre.org>
Received: from circe.mitre.org by linus.mitre.org (5.61/RCF-4S)
	id AA09053; Thu, 2 Jul 92 10:49:13 -0400
Posted-Date: Thu, 02 Jul 92 10:50:06 -0400
Received: by circe.mitre.org (5.61/RCF-4C)
	id AA01582; Thu, 2 Jul 92 10:50:07 -0400
Message-Id: <9207021450.AA01582@circe.mitre.org>
To: help-lucid-emacs@lucid.com
Cc: guttman@linus.mitre.org
Subject: Summary of differences from 18?  
X-Postal-Address: MITRE, Mail Stop A156 \\ 202 Burlington Rd. \\ Bedford, MA 01730
Date: Thu, 02 Jul 92 10:50:06 -0400
From: guttman@linus.mitre.org

I just retrieved lemacs 19.2, and I'm looking for a summary somewhere giving
the differences from v18.  In particular, I need to understand how to define
keybindings and mouse clicks, and what the changes will be for elisp code.  

I'm sure that somewhere in the sources there's a summary like this, but I
haven't found it.  Thanks.  

	Josh



From help-lucid-emacs-request@lucid.com  Thu Jul  2 09:01:07 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA15377; Thu, 2 Jul 92 09:01:07 PDT
Received: by heavens-gate.lucid.com id AA23141g; Thu, 2 Jul 92 08:51:26 PDT
Received: from moebius.loria.fr by heavens-gate.lucid.com id AA23131g; Thu, 2 Jul 92 08:50:01 PDT
Received: by moebius.loria.fr id AA08959
  (5.65c+/IDA-1.4.3 for jwz@lucid.com); Thu, 2 Jul 92 17:57:15 +0200
Date: Thu, 2 Jul 92 17:57:15 +0200
From: Guido Bosch <Guido.Bosch%loria.fr@lucid.com>
Message-Id: <9207021557.AA08959@moebius.loria.fr>
To: Guido BOSCH <Guido.Bosch@loria.fr>
Cc: Jamie Zawinski <jwz@lucid.com>, help-lucid-emacs@lucid.com
Subject: mode-mouse-motion.el
In-Reply-To: <9207010936.AA06361@moebius.loria.fr>
References: <9206301828.AA05967@moebius.loria.fr>
	<9206302015.AA12552@thalidomide.lucid>
	<9207010936.AA06361@moebius.loria.fr>
Reply-To: Guido BOSCH <bosch%loria.fr@lucid.com>

Guido Bosch writes:
 > 
 > Does the mouse motion handler has to be
 > 
 > 	- global (seems to be the case now),
 > 
 > 	- mode specific (could be implemented by a global motion
 > 	  handler that dispatches according to the major mode),
 > 
 > 	- buffer local (what I tried to implement)
 >  	  Making the variable mouse-motion-handler buffer local 
 >           seems to be a good idea, but then there is the problem 
 >           of buffer selection. 
 > 	

Here is an implementation for the second suggestion. It works prety
much better than the per buffer mouse motion handling I posted before.

This implementation uses a global mouse motion handler function that
dispatches motion handling according to the major mode of the buffer
*mouse is on* (without selecting it). 

For Jamie: This stuff is much more generic than the vm/gnu-track-mouse
	   functions you sent me, and it is much easier to install.
	   If you wish I can merge the code into lisp/x11/x-mouse.el
	   to replace the global mouse motion handler mecanism. 
	   
To try it: write the code into files, then byte-compile and load them. 

A question: Who can tell me how to change the highlight overlay
   pattern? Is it possible to get frames as the highlight look? 

	Guido

------------------------ mode-mouse-motion.el ------------------------
;;   -*- Syntax: Emacs-Lisp; Mode: emacs-lisp -*- 
;; 
;; writen by Guido Bosch <bosch@loria.fr>, INRIA Lorraine, France
;;
;; Please send bugs and comments to the above address
;;
;; <DISCLAIMER>
;; This program is still under development.  Neither the author nor
;; INRIA accepts responsibility to anyone for the consequences of
;; using it or for whether it serves any particular purpose or works
;; at all.
;; 
;; 
;; This file implements a package to allow mode specific mouse motion
;; handling. 
;;
;;  There are a number of predefined motion handlers with their mode
;; associations in this file. To make them work for other modes, you
;; should use the following two custommization functions:
;; `set-mode-mouse-motion-handler' `add-mode-mouse-motion-handler'
;;
;; Redefining a new mouse mode handler might easily be done by using the 
;; function `mouse-track-highlight-region'. 
;;
;; Predefined motion handlers to display:
;; 
;;   - single characters `mouse-track-highlight-char'
;;   - lines             `mouse-track-highlight-visible-text-in-line'
;;   - long lines        `mouse-track-highlight-whole-line
;;                       (may be dangerous, because fills lines with white space 
;;                       up to the end of the maximum visible column. 
;;			 Should find a better solution.)
;;   - syntax structures `mouse-track-highlight-thing'
;;     
;;

(require 'x-mouse)

;; maybe some autoloads would do ... 
(require 'thing)

(provide 'mode-mouse-motion)

(defvar mode-mouse-motion-default-handler 'x-track-pointer

  "The default mouse handler. It is used if the mouse is not over a
buffer or if there is no mode specific mouse motion handler.")

(defvar mode-mouse-motion-handler-alist nil
  "Alist to dispatch  major mode specific mouse motion handlers.
   Format: \(\(<mode>  <motion-handler1> <motion-handler2> ... \) ... \)

Several motion handlers can be associated to each major mode. The will
run in the specified order. A motion handler is a function that takes
one argument: an event.")

(setq mode-mouse-motion-handler-alist
      '((emacs-lisp-mode	mouse-track-highlight-thing)
	(c-mode			mouse-track-highlight-thing)
	(dired-mode		mouse-track-highlight-visible-text-in-line)
	(vm-summary-mode	mouse-track-highlight-whole-line)
	(gnus-Group-mode	mouse-track-highlight-visible-text-in-line)
	(gnus-Subject-mode	mouse-track-highlight-whole-line)
	(Buffer-menu-mode	mouse-track-highlight-whole-line)
	(text-mode		mouse-track-highlight-char)))


;; User level function to manipulate the alist
 
(defmacro add-mode-mouse-motion-handler (mode handler &optional position)
  "Add a mode specific mouse motion handler. 
Usage: \(add-mode-mouse-motion-handle MODE HANDLER &optional POSITION)
POSITION is one of {before, after} and defaults to `before. "
  (if position
      (or (memq position '(before after))
	  (error "POSITION argument must be one of {before, after"))
    (setq position 'before))
  (` (mode-mouse-motion-add-handler '(, mode) '(, handler) '(, position))))



(defun mode-mouse-motion-add-handler (mode handler position)
  (let ((entry (assq mode mode-mouse-motion-handler-alist)))
    (if entry
	(progn
	  (delq handler entry)
	  (cond ((eq position 'before)
		 (rplacd entry (cons handler (cdr entry))))
		((eq position 'after)
		 (rplacd (last entry) (list handler)))))
      (setq mode-mouse-motion-handler-alist
	    (cons (cons mode (list handler))
		  mode-mouse-motion-handler-alist)))
    (assq mode mode-mouse-motion-handler-alist)))

(defmacro set-mode-mouse-motion-handler (mode handler &rest handlers)
  "Set the mode specific mouse motion handlers.
Usage: \(set-mode-mouse-motion-handler MODE HANDLER1 HANDLER2 ...\)."
  (` (mode-mouse-motion-set-handlers
      '(, mode) '(, (cons handler handlers)))))

(defun mode-mouse-motion-set-handlers (mode handlers)
  (let ((entry (assq mode mode-mouse-motion-handler-alist)))
    (if entry
	(rplacd entry handlers)
      (setq mode-mouse-motion-handler-alist
	    (cons (cons mode handlers)
		  mode-mouse-motion-handler-alist)))
    (assq mode mode-mouse-motion-handler-alist)))


;; The dispatch function that replaces the standard mouse  motion handler 

(defun mode-mouse-motion-handler (event)
  "Mouse motion handler that implements mode specific mouse handling.
It looks up in the `mode-mouse-motion-handler-alist' for an entry with
the  major-mode of the buffer where mouse is over.
One argument: EVENT."

  (let ((window (event-window event)) screen  buffer mode motion-handlers)
    (setq screen (if window (window-screen window) (selected-screen))
	  buffer (and window (window-buffer window))
	  mode (and buffer (save-excursion
			     (set-buffer buffer)
			     major-mode))
	  motion-handlers
	  (or (and mode
		   (cdr (assoc mode mode-mouse-motion-handler-alist)))
	      (list mode-mouse-motion-default-handler)))

     ;; (message "Buffer: %s; Mode: %s; Handlers: %s" buffer mode motion-handlers)
     ;;(message "Handlers: %s" motion-handlers)
    
    (while motion-handlers
      (funcall (car motion-handlers) event)
      (setq motion-handlers (cdr motion-handlers)))))



;;;  Mouse tracking with highlighting

(make-variable-buffer-local 'mouse-track-highlight-extent)
(setq-default mouse-track-highlight-extent nil)

(defvar mouse-track-highlight-extent nil
  "Extent for highliting single characters during mouse motion. See 
the function `mouse-track-highlight-region'.")


;; should go into "x-mouse.el"
(defvar x-top-left-arrow nil)
(setq x-top-left-arrow "top_left_arrow")

(defun mouse-track-highlight-char (event)
  "Track the mouse motion by highlighting the character mouse is on.
This function can be used as value of the variable `mouse-motion-handler'.
Takes One Argument: EVENT"

  (mouse-track-highlight-region
   event
   (function 
    (lambda (point) (cons point (1+ point))))))


(defun mouse-track-highlight-visible-text-in-line (event)
  "Track the mouse motion by highlighting the line mouse is in.
This function can be used as value of the variable `mouse-motion-handler'.
Takes One Argument: EVENT"

  (mouse-track-highlight-region
   event
   (function
    (lambda (point)
      (let (start)
	(save-excursion
	  (goto-char point)
	  (beginning-of-line)
	  (skip-chars-forward " \t")
	  (setq start (point))
	  (end-of-line)
	  (skip-chars-backward " \t")
	  (cons start (point))))))))
;; 

(defun mouse-track-highlight-whole-line (event)
  (let ((buffer-modified-flag (buffer-modified-p))
	(buffer-read-only nil)
	start mid end ww)
    
    (mouse-track-highlight-region
     event
     '(lambda (point)
	(save-excursion
	  (goto-char point)
	  (beginning-of-line)
	  (setq start (point))
	  (end-of-line)
	  ;; fill up with white space
	  (if (>= (setq ww (1- (window-width (event-window event))))
		  (current-column))
	      (progn 
		;; (setq mid (point))
		(indent-to-column ww)))
	  (setq end (point)))
	(cons start end)))
    (set-buffer-modified-p buffer-modified-flag)))



(defun mouse-track-highlight-thing (event)
    "Track the mouse motion by highlighting the syntactic structure
mouse is in.  This function can be used as value of the variable
`mouse-motion-handler'.  Takes One Argument: EVENT"

  (mouse-track-highlight-region
   event
   (function thing-boundaries)))


(defun mouse-track-highlight-region (event compute-region)
  "Highlight a region of text for a given mouse motion EVENT.  The
function to compute the region is given as the second argument,
COMPUTE-REGION.  It takes one argument, a character position, and
returns (<START> . <END>), the region to be highlighted."

  (let* ((window (event-window event))
	 (screen (if window (window-screen window) (selected-screen)))
	 (buffer (and window (window-buffer window)))
	 (point  (event-point event))
	 region
	 glyph)


    (if buffer (set-buffer buffer))
    ;; (if window (select-window window))

    (if (and point
	     ;; compute the region to be highlighted
	     (setq region
		   (condition-case c
		       (funcall compute-region point)
		     (error (message "%s" (car (cdr c))) nil))))
	(progn 
	  (if mouse-track-highlight-extent
	      ;; update position if extent exists
	      (set-extent-endpoints
	       mouse-track-highlight-extent (car region) (cdr region))
	    ;; otherwise create a new one 
	    (setq mouse-track-highlight-extent
		  (make-extent (car region) (cdr region)))
	    (set-extent-attribute mouse-track-highlight-extent 'highlight))

	  ;; do the highliting
	  (highlight-extent mouse-track-highlight-extent 't)
	  ;; (message "")
	  )
      ;; unhighlight 
      (highlight-extent mouse-track-highlight-extent 'nil))

    (setq glyph
	  (cond (point 'x-top-left-arrow)
		(window
		 (cond (x-nontext-pointer-shape 'x-nontext-pointer-shape)
		       (x-pointer-shape 'x-pointer-shape)))
		(t (cond (x-mode-pointer-shape 'x-mode-pointer-shape)
			 (x-nontext-pointer-shape 'x-nontext-pointer-shape)
			 (x-pointer-shape 'x-pointer-shape)))))
    ;; (mouse-motion-tester event)
    (condition-case c
	(if (symbol-value glyph)
	    (x-set-screen-pointer
	     screen (symbol-value glyph)
	     x-pointer-foreground-color
	     x-pointer-background-color))
      (error
       (x-track-pointer-damage-control c glyph)))))


;; Utilities:

(defun last (x)
  "Returns the last link in the list LIST."
  (if (nlistp x)
      (error "Arg to `last' must be a list"))
  (let ((current-cons x)
	(next-cons (cdr x)))
    (while (not (null next-cons))
      (setq current-cons
	    (cdr current-cons)
	    next-cons
	    (cdr next-cons)))
    current-cons))


;; install the mode specific mouse handler:
(setq mouse-motion-handler 'mode-mouse-motion-handler)

------------------------------ thing.el ------------------------------
;;; thing.el
;;; adapted from Joshua Guttman's Thing.el
;;; by Dan L. Pierson <pierson@encore.com>, 2/5/90
;;; adapted from sun-fns.el by Joshua Guttman, MITRE.  
;;; adapted to Lucid Emacs from epoch-thing.el 
;;; by Guido Bosch <bosch@loria.fr>

(provide 'thing)

(defun thing-boundaries (here)

  "Return start and end of text object at HERE using syntax table and
thing-boundary-alist.  Thing-boundary-alist is a list of pairs of the
form (SYNTAX-CHAR FUNCTION) where FUNCTION takes a single position
argument and returns a cons of places (start end) representing
boundaries of the thing at that position.
Typically:
   Left or right Paren syntax indicates an s-expression.	
   The end of a line marks the line including a trailing newline. 
   Word syntax indicates current word. 
   Symbol syntax indicates symbol.
   If it doesn't recognize one of these it selects just the character HERE.

If an error occurs  during syntax scanning, the function just prints a
message and returns `nil'."

  (interactive "d")
  (if (save-excursion (goto-char here) (eolp))
      (thing-get-line here)
    (let*
	((syntax (char-syntax (char-after here)))
	 (pair (assq syntax thing-boundary-alist)))
      
      (if pair
	  (funcall (car (cdr pair)) here)
	(cons here (1+ here))))))


(defvar thing-boundary-alist
  '((?w thing-word)
    (?_ thing-symbol)
    (?\( thing-sexp-start)
    (?\$ thing-sexp-start)
    (?' thing-sexp-start)
    (?\" thing-sexp-start)
    (?\) thing-sexp-end)
    (?  thing-whitespace))
  "*List of pairs of the form (SYNTAX-CHAR FUNCTION) used by 
the function `thing-boundaries'.")
  
(defun thing-get-line (here)
  "Return whole of line HERE is in, with newline unless at eob."
  (let (start)
    (save-excursion
      (goto-char here)
      (beginning-of-line)
      (setq start (point))
      (end-of-line)
      (cons start (point)))))


(defun thing-word (here)
  "Return start and end of word at HERE."
  (save-excursion
    (goto-char here)
    (forward-word 1)
    (let ((end (point)))
      (forward-word -1)
      (cons (point) end))))


(defun thing-symbol (here)
  "Return start and end of symbol at HERE."
  (let ((end (scan-sexps here 1)))
    (cons (min here (scan-sexps end -1)) end )))

(defun thing-sexp-start (here)
  "Return start and end of sexp starting HERE."
  (cons here (scan-sexps here 1)))


(defun thing-sexp-end (here)
  "Return start and end of sexp ending HERE."
  (cons (scan-sexps (1+ here) -1) (1+ here)))


(defun thing-whitespace (here)
  "Returns always `nil'. This means that whitespaces are not considered 
to be \"things\"."
  nil)


(defun kill-thing-at-point (here)
  "Kill text object using syntax table.
See thing-boundaries for definition of text objects"
  (interactive "d")
  (let ((bounds (thing-boundaries here)))
    (kill-region (car bounds) (cdr bounds))))


(defun copy-thing-at-point (here)
  "Copy text object using syntax table.
See thing-boundaries for definition of text objects"
  (interactive "d")
  (let ((bounds (thing-boundaries here)))
    (copy-region-as-kill (car bounds) (cdr bounds))))



From help-lucid-emacs-request@lucid.com  Thu Jul  2 10:32:44 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA15691; Thu, 2 Jul 92 10:32:44 PDT
Received: by heavens-gate.lucid.com id AA23410g; Thu, 2 Jul 92 10:23:15 PDT
Received: from moebius.loria.fr by heavens-gate.lucid.com id AA23406g; Thu, 2 Jul 92 10:23:00 PDT
Received: by moebius.loria.fr id AA09014
  (5.65c+/IDA-1.4.3 for help-lucid-emacs@lucid.com); Thu, 2 Jul 92 19:30:28 +0200
Date: Thu, 2 Jul 92 19:30:28 +0200
From: Guido Bosch <Guido.Bosch%loria.fr@lucid.com>
Message-Id: <9207021730.AA09014@moebius.loria.fr>
To: help-lucid-emacs@lucid.com
Subject: Mouse Packages
Reply-To: Guido BOSCH <bosch%loria.fr@lucid.com>

I've seen that there are *A LOT* of mouse- functions defined in
lisp/prim/mouse.el, but only a few of them are actually used with
mouse bindings when Lucid Emacs starts up.

Are there already packages available that define other mouse
interfaces? I would be interested in particular in any Zmacs style
mouse interface (such as SKY-mouse for Epoch).

	Guido

From help-lucid-emacs-request@lucid.com  Thu Jul  2 13:15:25 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA16316; Thu, 2 Jul 92 13:15:25 PDT
Received: by heavens-gate.lucid.com id AA23848g; Thu, 2 Jul 92 13:05:41 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA23844g; Thu, 2 Jul 92 13:03:54 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA17169; Thu, 2 Jul 92 13:12:57 PDT
Date: Thu, 2 Jul 92 13:12:57 PDT
Message-Id: <9207022012.AA17169@thalidomide.lucid>
X-Windows: Putting new limits on productivity.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: guttman@linus.mitre.org, help-lucid-emacs@lucid.com
Subject: Re: Summary of differences from 18?  
In-Reply-To: guttman@linus.mitre.org's message of Thu 2-Jul-92 10:50:06 -0400 <9207021450.AA01582@circe.mitre.org>
References: <9207021450.AA01582@circe.mitre.org>

In message <9207021450.AA01582@circe.mitre.org> guttman@linus.mitre.org wrote:
>
> I just retrieved lemacs 19.2, and I'm looking for a summary somewhere giving
> the differences from v18.

Check the NEWS file (^Hn).  It contains extensive lists of those functions
whose behavior has changed or been extended from 18.57.

> In particular, I need to understand how to define keybindings and mouse
> clicks, and what the changes will be for elisp code.  

Describe-function define-key.  The old syntax of define-key works as well.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Thu Jul  2 14:28:42 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA16582; Thu, 2 Jul 92 14:28:42 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA24230g; Thu, 2 Jul 92 14:19:05 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA22428; Thu, 2 Jul 92 17:27:50 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA22410; Thu, 2 Jul 92 17:27:45 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA28152; Thu, 2 Jul 92 17:28:19 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!darwin.sura.net!ukma!usenet.ins.cwru.edu!magnus.acs.ohio-state.edu!zaphod.mps.ohio-state.edu!menudo.uh.edu!sugar!jimt
From: jimt@NeoSoft.com (Jim Thompson)
Subject: Re: Lucid Emacs newsgroups
Organization: NeoSoft Communications Services -- (713) 684-5900
Date: Thu, 02 Jul 1992 16:32:05 GMT
Message-Id: <1992Jul02.163205.20678@NeoSoft.com>
References: <9207020136.AA16655@thalidomide.lucid>
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <9207020136.AA16655@thalidomide.lucid> Jamie Zawinski <jwz@lucid.com> writes:
>Thanks to Kyle Jones, we now have a pair of newsgroups bidirectionally
>gatewayed into the bug-lucid-emacs and help-lucid-emacs newsgroups.
>They are alt.lucid-emacs.bug and alt.lucid-emacs.help.
>
>I expect that many of you will want to unsubscribe from the mailing lists,
>and read the messages in newsgroup form instead.  However, I would advise 
>you to wait a few weeks before unsubscribing, so that we know that the 
>gateway is functioning properly.

They appear to be working, as we're receiving them here on Sugar.

I need help with a problem.  I built lemacs-19.2 on my box at work, a
Sparc 2 running SunOS-4.1.1 and X-windows release 5 (patchlevel 8, I
think), using gcc 2.0 and the Motif widget set.

When I run the dumped xemacs, it just sits there, doing nothing.  If I
run temacs, it spits out a message saying that ASCII functionality
isn't available, and that I should check my DISPLAY variable to see
that it's set properly (it is).

Now, I read about a similar bug in the help-lucid-emacs archive, which
was caused by lemacs picking up emacs 18 lisp code rather than the
emacs 19 lisp.  I tried this solution, by explicitly setting the
initial load-path in paths.h, and recompiling, but no joy.

Is there another variant of this problem, one with similar symptoms,
or am I just not setting up the load-path correctly?  Can anyone
suggest how I might be able to tell?

>We wanted the newsgroups to be gnu.lucid-emacs.bug and gnu.lucid-emacs.help,
>but the FSF folks are not willing to allow the creation of those groups.
>In fact, it would appear that they are unwilling even to allow us to
>announce the existence of our version of emacs on their newsgroups.

Ah, but your lucid-emacs has the scent of commercial software heavy
about it; it may be freely distributable, but it is tainted
nevertheless.  Can't have ideologically impure influences in the gnu
newsgroups!

-- 
   _    
 _| ~-.  James C. Thompson        |  "The place to be happy is here.
 \,  _}  Webster, Texas           |   The time to be happy is now."
   \(    jimt@sugar.neosoft.com   |     -- Robert Green Ingersoll

From help-lucid-emacs-request@lucid.com  Thu Jul  2 14:38:43 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA16629; Thu, 2 Jul 92 14:38:43 PDT
Received: by heavens-gate.lucid.com id AA24277g; Thu, 2 Jul 92 14:28:47 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA24269g; Thu, 2 Jul 92 14:28:10 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA17577; Thu, 2 Jul 92 14:37:14 PDT
Date: Thu, 2 Jul 92 14:37:14 PDT
Message-Id: <9207022137.AA17577@thalidomide.lucid>
X-Windows: The problem for your problem.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: jimt@NeoSoft.com (Jim Thompson)
Cc: help-lucid-emacs@lucid.com
Subject: Re: Lucid Emacs newsgroups
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Jim Thompson's message of Thu 2-Jul-92 16:32:05 GMT <1992Jul02.163205.20678@NeoSoft.com>
References: <1992Jul02.163205.20678@NeoSoft.com>
	<9207020136.AA16655@thalidomide.lucid>

[Messages like this should probably go to bug- not to help-].

In message <1992Jul02.163205.20678@NeoSoft.com> Jim Thompson wrote:
>
> When I run the dumped xemacs, it just sits there, doing nothing.  

Possibly this is the bug where emacs gets stuck in a loop in next_window
because it's trying to make an impossibly small window, because of bad
resource settings.  Try "xrdb </dev/null" and see if that helps.  If not,
run xemacs under gdb and see what it thinks its doing.

> If I run temacs, it spits out a message saying that ASCII functionality
> isn't available, and that I should check my DISPLAY variable to see
> that it's set properly (it is).

A side effect of the fact that tty support doesn't exist yet is that you
can't really run temacs except in batch mode.  

	-- Jamie

From help-lucid-emacs-request@lucid.com  Thu Jul  2 14:45:04 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA16651; Thu, 2 Jul 92 14:45:04 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA24342g; Thu, 2 Jul 92 14:35:06 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA22901; Thu, 2 Jul 92 17:44:04 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA22894; Thu, 2 Jul 92 17:44:03 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA28319; Thu, 2 Jul 92 17:44:46 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!hoptoad!amdcad!netcomsv!mork!maw
From: maw@netcom.com (Martin Walker)
Subject: Where is Lucid Emacs? Is it X only?
Message-Id: <221lzpj.maw@netcom.com>
Date: Thu, 02 Jul 92 16:43:30 GMT
Organization: Netcom - Online Communication Services  (408 241-9760 guest) 
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Hello all.
Where can one ftp (anonymously) Lucid Emacs from, and, most importantly,
can it run on text-only terminals as the original Emacs does? I don't
have X, so if it is only X based, is it worth waiting for FSF's Emacs 19?
Lastly, if this is the case (wait for Emacs 19), will it support region
highlighting (as Lucid is rumoured to do)?

Any help will be appreciated.

Thank you in advance.

Kean johnston, via
maw@netcom.netcom.com

From help-lucid-emacs-request@lucid.com  Thu Jul  2 15:05:05 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA16721; Thu, 2 Jul 92 15:05:05 PDT
Received: by heavens-gate.lucid.com id AA24427g; Thu, 2 Jul 92 14:53:35 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA24423g; Thu, 2 Jul 92 14:53:03 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA17612; Thu, 2 Jul 92 15:02:07 PDT
Date: Thu, 2 Jul 92 15:02:07 PDT
Message-Id: <9207022202.AA17612@thalidomide.lucid>
X-Windows: Complex nonsolutions to simple nonproblems.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: maw@netcom.com (Martin Walker)
Cc: help-lucid-emacs@lucid.com
Subject: Re: Where is Lucid Emacs? Is it X only?
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Martin Walker's message of Thu 2-Jul-92 16:43:30 GMT <221lzpj.maw@netcom.com>
References: <221lzpj.maw@netcom.com>

In message <221lzpj.maw@netcom.com> Martin Walker wrote:
>
> Hello all.
> Where can one ftp (anonymously) Lucid Emacs from, and, most importantly,
> can it run on text-only terminals as the original Emacs does? I don't
> have X, so if it is only X based, is it worth waiting for FSF's Emacs 19?
> Lastly, if this is the case (wait for Emacs 19), will it support region
> highlighting (as Lucid is rumoured to do)?

Lucid Emacs doesn't yet run on ttys, but that is planned.  For the benefit of
those of you just joining us, here is the readme file for Lucid Emacs 19.2.

	-- Jamie

------------------------------------------------------------------------------
Lucid GNU Emacs 19.2 is now available.  This is a version of GNU Emacs derived
from an early version of Emacs version 19 from the Free Software Foundation.

You can get it via anonymous FTP from the host labrea.Stanford.EDU (36.8.0.47).
It is currently available only by FTP.  We don't have the manpower to make 
tapes right now.

Log in with the user "anonymous" and "username@host" as a password (that is,
your email address.)  Execute the command "cd pub/gnu/lucid/".  These are
the files you will find there:

  lemacs-19.2.tar.Z
	The complete source distribution.  This file is about 8 megabytes.
	When untarred and uncompressed, the source distribution will take up
	about 20 megs. You will need an additional 12 megs or so to compile it.

  lemacs-19.2-sun4.tar.Z
	This is a ready-to-run set of Sun4 executables, and a DOC file.  If
	you want to use these executables, you will still need to get the file
	lemacs-19.2.tar.Z, because Emacs cannot function very well without the
	lisp library online.  This file is about 2.3 megs, 4.7 megs when
	unpacked, 3.6 megs of which is the Emacs executable itself. 

Don't forget to set "binary" mode when transferring these files.  Unpack them
with some variation of the command "zcat lemacs-19.2.tar.Z | tar -vxf -".

We have created two mailing lists for discussing our Emacs.

   bug-lucid-emacs@lucid.com	For reporting all bugs in Lucid GNU Emacs,
				including bugs in the compilation and
				installation procedures.

   help-lucid-emacs@lucid.com	For random questions and conversation
				about using Lucid GNU Emacs.

To be added or removed from these mailing lists, send mail to 
bug-lucid-emacs-request@lucid.com or help-lucid-emacs-request@lucid.com.

The bug-lucid-emacs and help-lucid-emacs mailing lists are archived on labrea,
and are bidirectionally gatewayed into the newsgroups alt.lucid-emacs.bug and
alt.lucid-emacs.help.

Please do not send messages about problems with Lucid GNU Emacs to the FSF
GNU Emacs newsgroups and mailing lists (help-gnu-emacs@prep.ai.mit.edu,
bug-gnu-emacs@prep.ai.mit.edu, gnu.emacs.help, gnu.emacs.bug, et cetera)
unless you are sure that the problem you are reporting is a problem with
both versions of GNU Emacs.  People who aren't subscribed to the Lucid GNU
Emacs mailing lists most likely are not interested in hearing about problems
with it.


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.

No Warranty
===========

Lucid GNU Emacs is distributed under exactly the same terms as GNU Emacs,
and thus has no warranty of any kind.  (However, Energize support contracts
include Lucid GNU Emacs support.)  We do not currently have plans to sell
support for Emacs independent of support for Energize.

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 yet tried to compile this version of Emacs under anything but
SunOS 4.1 on SparcStations.  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; it is possible to, for example, bind 
different commands to each of the chords Control-h, Control-H, Backspace,
Control-Backspace, and Super-Shift-Backspace.  Key bindings, function key
bindings, and mouse bindings live in the same keymaps.

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.

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 OpenWindows, you can use a real OpenWindows 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.

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.

If you're running on a sun SparcStation, you can specify sound files for
Emacs to play instead of the default X beep.

Much more detail about the differences between Lucid GNU Emacs and Emacs 18
can be found in the file .../etc/NEWS (accessible with ``C-h n''.)

Note that building Lucid GNU Emacs requires an ANSI C compiler, such as gcc.

From help-lucid-emacs-request@lucid.com  Thu Jul  2 21:45:41 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA17810; Thu, 2 Jul 92 21:45:41 PDT
Received: by heavens-gate.lucid.com id AA25442g; Thu, 2 Jul 92 21:36:15 PDT
Received: from inet-gw-2.pa.dec.com by heavens-gate.lucid.com id AA25437g; Thu, 2 Jul 92 21:33:52 PDT
Received: by inet-gw-2.pa.dec.com; id AA09066; Thu, 2 Jul 92 21:42:26 -0700
Received: by kodak.pa.dec.com; id AA12945; Thu, 2 Jul 92 21:42:24 -0700
Received: by fortress.pa.dec.com; id AA01573; Thu, 2 Jul 92 21:42:25 -0700
Date: Thu, 2 Jul 92 21:42:25 -0700
From: babu@pa.dec.com
Message-Id: <9207030442.AA01573@fortress.pa.dec.com>
To: help-lucid-emacs@lucid.com
Cc: babu@Pa.dec.com
Subject: Problems running lucid emacs


After several iterations, I finally built the executable xemacs.
When I run, xemacs or xemacs -q, I get the message:
  emacs: Cannot open termcap database file.

****************************************************************
Machine: DecStation 
OS:	 Ultrix V4.2A
Compiler: c89 (Dec ANSI C Compiler)
In config.h, I have:
  #include "s/s-bsd4-2.h"  (Is this correct ?)
  #include "m/m-pmax.h"    (Is this correct ?)
  #define INVISIBLE_TERMINAL_KLUDGE
  #define MAINTAIN_ENVIRONMENT

Modifications to emacs.c to get xemacs to build.
I can't find the function tzsetwall in any of the libraries.
I commented out the following code in emacs.c:
#if 0  /* BSD4_2 */ 
  {
    /* fix for bug where emacs always thinks that it is in the
       timezone wherein it was dumped */
    extern void tzsetwall();
    tzsetwall();
  }
#endif
****************************************************************

****************************************************************
Behavior:
I ran xemacs under dbx.
In emacs.c, I find that if INVISIBLE_TERMINAL_KLUDGE is not defined,
xemacs will print an error message and quit.
When INVISIBLE_TERMINAL_KLUDGE is defined, the code sets the TERM to
"invisible". The function term_init gets called with parameter
terminal_type set to "invisible". term_init() calls tgetent() with
terminal_type "invisible" which returns a status of -1. Hence xemacs
exits with the message "emacs: Cannot open termcap database file.".


Question:
I ran xemacs from a xterm and also from the Window Manager menu with
the same result. 
When dbx is in function term_init(), I typed:
(dbx) p getenv("TERM")
0x100dafa5 = "invisible"
(dbx) p getenv("TERMCAP")
0x100cbb88 = "invisible:cm=:co#80:li#24:"
So, why is tgetent() returning -1 ?

I would appreciate any help that you can provide.
Thanks.

-Babu



****************************************************************
FYI:
The library -lcurses doesn't have functions like tgetent.
The manual says that these functions are included for compatibility
with application programs that used the old termcap database and
suggests that these not be used in new curses application programs.
I used -lcursesX and it works fine. You might mention this in the
README file.

When using gcc, I got several compilation errors.

For several files, I get warnings like the one below when I
compile with DEC Ansi C compiler, for example: 
c89 -common -g   -I/usr/lib/DXM/lib -I/usr/lib/DXM/lib/Xt -Demacs  -I./lwlib  -c menubar.c
m/m-mips.h:119: warning: The redefinition of the macro "DATA_START" conflicts with a current definition because the replacement lists differ.  The redefinition is now in effect.
/usr/include/signal.h:350: warning: The redefinition of the macro "sigmask" conflicts with a current definition because the spelling of one or more parameters is different.  The redefinition is now in effect.
Compilation terminated with warnings. 

When compiling alloc.c, I get:
c89 -common -g   -I/usr/lib/DXM/lib -I/usr/lib/DXM/lib/Xt -Demacs  -I./lwlib  -c alloc.c
m/m-mips.h:119: warning: The redefinition of the macro "DATA_START" conflicts with a current definition because the replacement lists differ.  The redefinition is now in effect.
alloc.c:1163: warning: In this expression, integer overflow occurs in
evaluating the expression "1<<(26+5)". 
****************************************************************


From help-lucid-emacs-request@lucid.com  Sun Jul  5 09:58:11 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA25838; Sun, 5 Jul 92 09:58:11 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA29097g; Sun, 5 Jul 92 09:46:16 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA01696; Sun, 5 Jul 92 12:55:19 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA01690; Sun, 5 Jul 92 12:55:17 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA00403; Sun, 5 Jul 92 12:55:16 -0400
Path: uunet!charon.amdahl.com!pacbell.com!decwrl!decwrl!deccrl!bloom-beacon!eru.mt.luth.se!lunic!sunic2!ugle.unit.no!nuug!nntp.nta.no!nntp.nta.no!kjellm
From: kjellm%gauda.unik.no@lucid.com (Kjell M. Myksvoll)
Newsgroups: alt.lucid-emacs.help
Subject: Displaying 8-bits characters.
Message-Id: <KJELLM.92Jul5140732@gauda.unik.no>
Date: 5 Jul 92 12:07:32 GMT
Organization: Universitetsstudiene paa Kjeller (UNIK), University of Oslo,
	Norway
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


How does one make Lucid (v. 19.2) display 8-bits characters as a character
and not as an oktal value?

Kjell

From help-lucid-emacs-request@lucid.com  Sun Jul  5 16:10:04 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA26402; Sun, 5 Jul 92 16:10:04 PDT
Received: by heavens-gate.lucid.com id AA29440g; Sun, 5 Jul 92 16:00:16 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA29430g; Sun, 5 Jul 92 16:00:01 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA22523; Sun, 5 Jul 92 16:09:12 PDT
Date: Sun, 5 Jul 92 16:09:12 PDT
Message-Id: <9207052309.AA22523@thalidomide.lucid>
X-Windows: graphics hacking :: roman numerals : sqrt(pi)
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: kjellm%gauda.unik.no@lucid.com (Kjell M. Myksvoll)
Cc: help-lucid-emacs@lucid.com
Subject: Re: Displaying 8-bits characters.
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Kjell M. Myksvoll's message of  5-Jul-92 12:07:32 GMT <KJELLM.92Jul5140732@gauda.unik.no>
References: <KJELLM.92Jul5140732@gauda.unik.no>

In message <KJELLM.92Jul5140732@gauda.unik.no> Kjell M. Myksvoll wrote:
>
> How does one make Lucid (v. 19.2) display 8-bits characters as a character
> and not as an oktal value?

(setq-default ctl-arrow 'any-value-other-than-t-or-nil)

Also see the code in .../lisp/x11/x-compose.el.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Mon Jul  6 03:11:32 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA27633; Mon, 6 Jul 92 03:11:32 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA00237g; Mon, 6 Jul 92 03:01:32 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA09173; Mon, 6 Jul 92 06:10:36 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA09167; Mon, 6 Jul 92 06:10:35 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA10859; Mon, 6 Jul 92 06:10:42 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!destroyer!ubc-cs!fornax!bremner
From: bremner%cs.sfu.ca@lucid.com (David Bremner)
Subject: X libraries must be static?
Message-Id: <1992Jul5.224627.9032@cs.sfu.ca>
Summary: do I need libXaw.a et. al?
Keywords: SunOS 4.1.1, X11R5
Reply-To: bremner%cs.sfu.ca@lucid.com (David Bremner)
Organization: Simon Fraser University
Date: Sun, 5 Jul 1992 22:46:27 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

This is probably a dumb question, but hey, thats what you get for creating a
newsgroup: newbies :-)

I am attempting to get lemacs up under SunOS 4.1.1

The local X11R5 installation just has the dynamic libraries libFoo.sa and
libFoo.so.  When I attempt to link, ld complains that it can't find libXaw,
presumably becuase of the -Bstatic flag, and there being no libXaw.a.  How
does this business about "emacs must be staticly linked" work? Can I
dynamically link in the X11 libraries?  I guess I could get somebody to
install the nonsharable libraries, but I'd just as soon the X11 libs where
dynamic.

Thanks,

David
-- 
bremner@cs.sfu.ca 				          ubc-cs!fornax!bremner

From help-lucid-emacs-request@lucid.com  Mon Jul  6 03:42:51 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA27692; Mon, 6 Jul 92 03:42:51 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA00280g; Mon, 6 Jul 92 03:33:47 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA09975; Mon, 6 Jul 92 06:42:51 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA09969; Mon, 6 Jul 92 06:42:49 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA11166; Mon, 6 Jul 92 06:42:57 -0400
Path: uunet!hoptoad!zoo
From: zoo@cygnus.com (david d 'zoo' zuhn)
Newsgroups: alt.lucid-emacs.help
Subject: Re: X libraries must be static?
Message-Id: <31979@hoptoad.uucp>
Date: 6 Jul 92 10:35:14 GMT
References: <1992Jul5.224627.9032@cs.sfu.ca>
Organization: Cygnus Support -- +1 415 322 3816
In-Reply-To: bremner@cs.sfu.ca's message of Sun, 5 Jul 1992 22:46:27 GMT
X-Md4-Signature: 54878e3ad8ae4a18cce93b2dd8a1c27b
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


   I am attempting to get lemacs up under SunOS 4.1.1

Why not use the provided executable?  That's the easiest way to get it
running on a Sun.

   The local X11R5 installation just has the dynamic libraries libFoo.sa and
   libFoo.so.  When I attempt to link, ld complains that it can't find libXaw,
   presumably becuase of the -Bstatic flag, and there being no libXaw.a.  How
   does this business about "emacs must be staticly linked" work? Can I
   dynamically link in the X11 libraries?  I guess I could get somebody to
   install the nonsharable libraries, but I'd just as soon the X11 libs where
   dynamic.

Nope.  Sorry, but emacs does need to be statically linked.  There is
work going on in Emacs development so that this won't be the case in
the future, but for the time being, you need to have the lib*.a files
around to build Emacs.  You may need to modify your site.cf file for
X11R5 in order to build static libraries in addition to the dynamic ones.

  david d 'zoo' zuhn |  
    cygnus support   |  "Man made it, man can fix it."
    zoo@cygnus.com   |  		-- anonymous biker in South Dakota
  

From help-lucid-emacs-request@lucid.com  Mon Jul  6 08:32:09 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA29281; Mon, 6 Jul 92 08:32:09 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA00638g; Mon, 6 Jul 92 08:22:22 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA24570; Mon, 6 Jul 92 11:31:27 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA24564; Mon, 6 Jul 92 11:31:25 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA13210; Mon, 6 Jul 92 11:31:35 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!walter!porthos!sapphire!gwf
From: gwf@sapphire.bellcore.com (George W. Fleming)
Subject: Compiling problem.
Organization: Bellcore, Livingston, NJ
Distribution: na
Date:  6 Jul 92 14:50:35 GMT
Message-Id: <gwf.710434235@sapphire>
Summary: problem compiling lucid
Keywords: help compile
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I have been trying to build lemacs-19.2.  I got as far as linking temacs.
When I try to do that, I kept getting undefined symbol:  ___main.
Further investigation reveals that the ___main symbol comes from emacs.c.
I am using gcc-2.2.2 and I am trying to build lemacs on a Sparcstation.
Any idea?


-- 
-------------------------
George W. Fleming
gwf@sapphire.bellcore.com
-------------------------

From help-lucid-emacs-request@lucid.com  Mon Jul  6 10:36:54 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA29871; Mon, 6 Jul 92 10:36:54 PDT
Received: by heavens-gate.lucid.com id AA01042g; Mon, 6 Jul 92 10:25:19 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA01029g; Mon, 6 Jul 92 10:22:12 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA23123; Mon, 6 Jul 92 10:31:22 PDT
Date: Mon, 6 Jul 92 10:31:22 PDT
Message-Id: <9207061731.AA23123@thalidomide.lucid>
X-Windows: There's got to be a better way.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: gwf@sapphire.bellcore.com (George W. Fleming)
Cc: help-lucid-emacs@lucid.com
Subject: Re: Compiling problem.
Newsgroups: alt.lucid-emacs.help
In-Reply-To: George W. Fleming's message of  6-Jul-92 14:50:35 GMT <gwf.710434235@sapphire>
References: <gwf.710434235@sapphire>

With gcc2, this symptom means that you ended up using "ld" to link instead
of "gcc", probably because "cc" was used to preprocess ymakefile instead of
"gcc".  With gcc1, this means you have to set LIB_GCC in config.h (this
solution works with gcc2 as well.)

	-- Jamie

From help-lucid-emacs-request@lucid.com  Mon Jul  6 11:23:25 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA00148; Mon, 6 Jul 92 11:23:25 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA01226g; Mon, 6 Jul 92 11:12:11 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA07840; Mon, 6 Jul 92 13:59:21 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA07834; Mon, 6 Jul 92 13:59:18 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA14279; Mon, 6 Jul 92 13:59:29 -0400
Path: uunet!cis.ohio-state.edu!rutgers!micro-heart-of-gold.mit.edu!xn.ll.mit.edu!xn!haydens
From: haydens@bullwinkle.juliet.ll.mit.edu (Hayden Schultz x3685 g42)
Newsgroups: alt.lucid-emacs.help
Subject: How do you bind function keys with modifiers?
Message-Id: <HAYDENS.92Jul6125719@bullwinkle.juliet.ll.mit.edu>
Date: 6 Jul 92 16:57:19 GMT
Reply-To: haydens@juliet.ll.mit.edu
Distribution: alt.lucid-emacs.help
Organization: M.I.T. Lincoln Lab - Group 42
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


How do you bind function keys with modifiers like shift, control,
meta?

Example (this doesn't work):

(global-set-key "\M-left" 'backward-word)


	Thanks,

	Hayden Schultz
	haydens@juliet.ll.mit.edu
	haydens@atc.ll.mit.edu
	MIT Lincoln Lab
	(617) 981-3685

From help-lucid-emacs-request@lucid.com  Mon Jul  6 11:25:55 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA00158; Mon, 6 Jul 92 11:25:55 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA01240g; Mon, 6 Jul 92 11:16:26 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA03392; Mon, 6 Jul 92 13:04:43 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA03386; Mon, 6 Jul 92 13:04:42 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA13869; Mon, 6 Jul 92 13:04:52 -0400
Path: uunet!cis.ohio-state.edu!ucbvax!bloom-beacon!micro-heart-of-gold.mit.edu!xn.ll.mit.edu!xn!haydens
From: haydens@bullwinkle.juliet.ll.mit.edu (Hayden Schultz x3685 g42)
Newsgroups: alt.lucid-emacs.help
Subject: problems compiling for SGI
Message-Id: <HAYDENS.92Jul6125006@bullwinkle.juliet.ll.mit.edu>
Date: 6 Jul 92 19:50:06 GMT
Reply-To: haydens@juliet.ll.mit.edu
Distribution: alt.lucid-emacs.help
Organization: M.I.T. Lincoln Lab - Group 42
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


I'm runnin on a 4D/440 under Irix 4.0.1. In my config.h I used
s-iris3-6.h and m-iris4d. I'm attempting to compile lemacs-19.2.

Because m-iris4d.h defines NEED_SIOCTL, files like src/sysdep.c try to
include sys/sioctl.h. Unfortunately there is no such file. For that
matter the compile line has -I/usr/include/bsd which isn't there
either. Could -D_BSD_COMPAT be what was intended instead of
-I/usr/include/bsd?

Any clues?

	Thanks,

	Hayden Schultz
	haydens@juliet.ll.mit.edu
	haydens@atc.ll.mit.edu
	MIT Lincoln Lab
	(617) 981-3685

From help-lucid-emacs-request@lucid.com  Mon Jul  6 12:58:35 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA00548; Mon, 6 Jul 92 12:58:35 PDT
Received: by heavens-gate.lucid.com id AA01582g; Mon, 6 Jul 92 12:45:13 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA01570g; Mon, 6 Jul 92 12:43:19 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA23359; Mon, 6 Jul 92 12:52:27 PDT
Date: Mon, 6 Jul 92 12:52:27 PDT
Message-Id: <9207061952.AA23359@thalidomide.lucid>
X-Windows: The defacto substandard.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: haydens@juliet.ll.mit.edu
Cc: help-lucid-emacs@lucid.com
Subject: Re: How do you bind function keys with modifiers?
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Hayden Schultz x3685 g's message of  6-Jul-92 16:57:19 GMT <HAYDENS.92Jul6125719@bullwinkle.juliet.ll.mit.edu>
References: <HAYDENS.92Jul6125719@bullwinkle.juliet.ll.mit.edu>

In message <HAYDENS.92Jul6125719@bullwinkle.juliet.ll.mit.edu> Hayden Schultz x3685 g wrote:
>
> How do you bind function keys with modifiers like shift, control,
> meta?

(global-set-key '(meta left) 'backward-word)

> Example (this doesn't work):
> 
> (global-set-key "\M-left" 'backward-word)

Strings are arrays of 8-bit integers.  Since M-left has no corresponding ASCII
code, you can't represent it in a string.  So for non-ASCII sequences, you
need to use the non-string syntax of define-key.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Mon Jul  6 17:52:33 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01331; Mon, 6 Jul 92 17:52:33 PDT
Received: by heavens-gate.lucid.com id AA02602g; Mon, 6 Jul 92 17:41:18 PDT
Received: from fernwood.mpk.ca.us by heavens-gate.lucid.com id AA02590g; Mon, 6 Jul 92 17:40:42 PDT
Received: by fernwood.mpk.ca.us; id AA08849; Mon, 6 Jul 92 16:45:47 -0700
Received: from alba.YP.acad by autodesk.com (4.1/MADMAX-RED-CUCCIA)
	id AA13913; Mon, 6 Jul 92 16:34:32 PDT
Received: by alba.YP.acad (4.1/SMI-4.1)
	id AA05747; Mon, 6 Jul 92 16:34:32 PDT
Date: Mon, 6 Jul 92 16:34:32 PDT
From: larsn@autodesk.com (Lars Nyman)
Message-Id: <9207062334.AA05747@alba.YP.acad>
To: help-lucid-emacs@lucid.com
Subject: remove from mailing list

Can you please remove me from the mailing list.
Thanks.

From help-lucid-emacs-request@lucid.com  Mon Jul  6 17:58:54 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01340; Mon, 6 Jul 92 17:58:54 PDT
Received: by heavens-gate.lucid.com id AA02634g; Mon, 6 Jul 92 17:49:38 PDT
Received: from inet-gw-2.pa.dec.com by heavens-gate.lucid.com id AA02627g; Mon, 6 Jul 92 17:47:45 PDT
Received: by inet-gw-2.pa.dec.com; id AA23992; Mon, 6 Jul 92 15:23:32 -0700
Received: by kodak.pa.dec.com; id AA16354; Mon, 6 Jul 92 15:23:27 -0700
Received: by fortress.pa.dec.com; id AA03887; Mon, 6 Jul 92 15:23:27 -0700
Date: Mon, 6 Jul 92 15:23:27 -0700
From: babu@pa.dec.com
Message-Id: <9207062223.AA03887@fortress.pa.dec.com>
To: help-lucid-emacs@lucid.com
Subject: TAGS


Lucid Emacs builds and works fine. I haven't explored the nifty
features yet. Nice job guys!

I am having a problem with tags. The find-tag command works only if
the function name is typed in its entirety with proper case. Is there
a variable to turn off this exact match ? The power of tags comes from
typing in a portion of the function name and having emacs visit the
file[s] containing the function[s] and I am surprised that this is not
the default behavior. For now, I am loading in the tags.el from
gnu-emacs. However, I would like to use the enhanced features of tags
on lucid emacs.

Thanks,

-Babu

From help-lucid-emacs-request@lucid.com  Tue Jul  7 10:46:07 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA04719; Tue, 7 Jul 92 10:46:07 PDT
Received: by heavens-gate.lucid.com id AA04531g; Tue, 7 Jul 92 10:35:50 PDT
Received: from moebius.loria.fr by heavens-gate.lucid.com id AA04527g; Tue, 7 Jul 92 10:35:32 PDT
Received: by moebius.loria.fr id AA16163
  (5.65c+/IDA-1.4.3 for help-lucid-emacs@lucid.com); Tue, 7 Jul 92 19:43:20 +0200
Date: Tue, 7 Jul 92 19:43:20 +0200
From: Guido Bosch <Guido.Bosch%loria.fr@lucid.com>
Message-Id: <9207071743.AA16163@moebius.loria.fr>
To: help-lucid-emacs@lucid.com
Subject: attatching lisp objects to extents
Reply-To: Guido BOSCH <bosch%loria.fr@lucid.com>

Is there a way to store an arbitrary lisp object in an extent?
(some sort of "user attribute")

What I want to do is to build a kind of object browser (for ILISP)
that allows to highlight regions of text representing links to other
lisp objects. When clicking on such am extent, I need to get the link
description stored in that extend. 

Is this actually possible (if not so, I suggest to make it available,
because any hypertext package would largely profit of that)

	Guido

From help-lucid-emacs-request@lucid.com  Tue Jul  7 11:52:16 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA04984; Tue, 7 Jul 92 11:52:16 PDT
Received: by heavens-gate.lucid.com id AA04739g; Tue, 7 Jul 92 11:41:39 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA04733g; Tue, 7 Jul 92 11:40:46 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA24674; Tue, 7 Jul 92 11:50:10 PDT
Date: Tue, 7 Jul 92 11:50:10 PDT
Message-Id: <9207071850.AA24674@thalidomide.lucid>
X-Windows: The defacto substandard.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: Guido BOSCH <bosch%loria.fr@lucid.com>
Cc: help-lucid-emacs@lucid.com
Subject: Re: attatching lisp objects to extents
In-Reply-To: Guido Bosch's message of Tue 7-Jul-92 19:43:20 +0200 <9207071743.AA16163@moebius.loria.fr>
References: <9207071743.AA16163@moebius.loria.fr>

In message <9207071743.AA16163@moebius.loria.fr> Guido Bosch wrote:
>
> Is there a way to store an arbitrary lisp object in an extent?
> (some sort of "user attribute")

This sort of thing isn't doable from lisp in 19.2, but will be in 19.3.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Tue Jul  7 13:03:12 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA05329; Tue, 7 Jul 92 13:03:12 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA04954g; Tue, 7 Jul 92 12:52:25 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA09215; Tue, 7 Jul 92 16:01:23 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA09209; Tue, 7 Jul 92 16:01:21 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA01044; Tue, 7 Jul 92 16:01:42 -0400
Path: uunet!tymix!gabriela!steve
From: steve@gabriela.tymnet.com (Steve Sandke)
Newsgroups: alt.lucid-emacs.help
Subject: How do I bind Sun function keys?
Message-Id: <1983@tymix.Tymnet.COM>
Date: 7 Jul 92 19:56:01 GMT
Distribution: usa
Organization: BT North America, San Jose, CA
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In "normal" emacs (18.57), I bound actions to sun function keys like so:

(global-unset-key "\M-[")
(global-set-key "\M-[211z" 'shrink-window-horizontally)
(global-set-key "\M-[212z" 'enlarge-window-horizontally)
(global-set-key "\M-[213z" 'beginning-of-buffer)
(global-set-key "\M-[213z" 'beginning-of-buffer)
(global-set-key "\M-[214z" 'beginning-of-buffer)
(global-set-key "\M-[215z" 'previous-line)
(global-set-key "\M-[216z" 'scroll-down)
(global-set-key "\M-[217z" 'backward-char)
(global-set-key "\M-[218z" nil)
(global-set-key "\M-[219z" 'forward-char)
(global-set-key "\M-[220z" 'end-of-buffer)
(global-set-key "\M-[221z" 'next-line)
(global-set-key "\M-[222z" 'scroll-up)

However, lemacs doesn't recognize these bindings.  For example, when I hit
3 on the keypad (R15), it complains "f35 not defined". 

How do I bind things correctly?

-- 
-------------------
Steve Sandke
steve@orchid.tymnet.com


From help-lucid-emacs-request@lucid.com  Tue Jul  7 13:08:26 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA05375; Tue, 7 Jul 92 13:08:26 PDT
Received: by heavens-gate.lucid.com id AA04976g; Tue, 7 Jul 92 12:58:59 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA04970g; Tue, 7 Jul 92 12:58:43 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA25206; Tue, 7 Jul 92 13:08:05 PDT
Date: Tue, 7 Jul 92 13:08:05 PDT
Message-Id: <9207072008.AA25206@thalidomide.lucid>
X-Windows: There's got to be a better way.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: steve@gabriela.tymnet.com (Steve Sandke)
Cc: help-lucid-emacs@lucid.com
Subject: Re: How do I bind Sun function keys?
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Steve Sandke's message of  7-Jul-92 19:56:01 GMT <1983@tymix.Tymnet.COM>
References: <1983@tymix.Tymnet.COM>

(global-set-key 'f35 'foobar)

See the doc for define-key.

From help-lucid-emacs-request@lucid.com  Tue Jul  7 16:09:53 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA05825; Tue, 7 Jul 92 16:09:53 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA05799g; Tue, 7 Jul 92 16:00:51 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA25368; Tue, 7 Jul 92 19:10:00 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA25362; Tue, 7 Jul 92 19:09:58 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA02603; Tue, 7 Jul 92 19:10:22 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!infonode!ingr!remtech!remtech!jim
From: jim@remtech.com (Jim Levie)
Subject: Missing etc/emacs.1 in V19.2
Message-Id: <jim.710527887@remtech>
Summary: The file etc/emacs.1 isn't in my copy of v19.2
Organization: Remtech Inc.
Distribution: na
Date: Tue, 7 Jul 1992 16:51:27 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I don't have a copy of emacs.1 in my copy of 19.2 (obtained from
uunet). Could someone point me to a place I could fetch the file from?


-- 
=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+
 Jim Levie                                  email: jim@chimera.remtech.com
 REMTECH Inc  Huntsville, Al                (or)  ...uunet!remtech!chimera!jim
 The opinions expressed above are just that     Ph.     (205) 536-8581

From help-lucid-emacs-request@lucid.com  Wed Jul  8 00:32:01 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA07178; Wed, 8 Jul 92 00:32:01 PDT
Received: by heavens-gate.lucid.com id AA06765g; Wed, 8 Jul 92 00:22:47 PDT
Received: from Sunburn.Stanford.EDU by heavens-gate.lucid.com id AA06761g; Wed, 8 Jul 92 00:22:32 PDT
Received:  by Sunburn.Stanford.EDU (5.61+IDA/25-eef) id AA29917; Wed, 8 Jul 92 00:31:05 -0700
Date: Wed, 8 Jul 92 00:31:05 -0700
From: Martin Frost <me@Sunburn.Stanford.EDU>
Message-Id: <9207080731.AA29917@Sunburn.Stanford.EDU>
To: help-lucid-emacs@lucid.com
Subject: lemacs on DEC 5000/200
Reply-To: me@CS.Stanford.EDU

Has anyone successfully gotten lemacs to work under Ultrix?  I have a DEC
5000/200 that we would like to run it on, but from what I've seen in the
discussions, it didn't look like anyone had succeeded at this.

From help-lucid-emacs-request@lucid.com  Wed Jul  8 02:20:19 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA08043; Wed, 8 Jul 92 02:20:19 PDT
Received: by heavens-gate.lucid.com id AA06953g; Wed, 8 Jul 92 02:11:19 PDT
Received: from sun4nl.nluug.nl by heavens-gate.lucid.com id AA06949g; Wed, 8 Jul 92 02:11:01 PDT
Received: from mh.nl by sun4nl.nluug.nl via EUnet
	id AA06683 (5.65b/CWI-3.3); Wed, 8 Jul 1992 11:18:03 +0200
Received: by mhres.mh.nl (/\=-/\ Smail3.1.18.1 #18.10)
	id <m0m5XeK-0005CpC@mhres.mh.nl>; Wed, 8 Jul 92 10:45 METDST
Received: by largo.mh.nl (/\==/\ Smail3.1.22.1 #22.2)
	id <m0m5XdX-00039TC@largo.mh.nl>; Wed, 8 Jul 92 10:44 MET DST
Message-Id: <m0m5XdX-00039TC@largo.mh.nl>
Date: Wed, 8 Jul 92 10:44 MET DST
From: jv%mh.nl@lucid.com (Johan Vromans)
X-From: Multihouse, Gouda, The Netherlands
To: me@CS.Stanford.ED, help-lucid-emacs@lucid.com (Lucid Emacs Mailing List)
In-Reply-To: Martin Frost's message of Wed, 8 Jul 92 00:31:05 -0700
Subject: Re: lemacs on DEC 5000/200
X-Mailer: GNU Emacs 18.58.5 with VM 4.42


> Has anyone successfully gotten lemacs to work under Ultrix?  I have a DEC
> 5000/200 that we would like to run it on, but from what I've seen in the
> discussions, it didn't look like anyone had succeeded at this.

Sure, no problem at all.
I have used GCC 2.2.2 with the MIT version of X11R4. This is installed
in /usr/local/lib/X11R4. With Ultrix 4.2 and above you can use the DEC
version of X11 (but use -I/usr/include/mit !).

This is our config.h. 

/* GNU Emacs site configuration template file.
   Copyright (C) 1986, 1988, 1992 Free Software Foundation, Inc.

This file is part of GNU Emacs.

GNU Emacs is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 1, or (at your option)
any later version.

GNU Emacs is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with GNU Emacs; see the file COPYING.  If not, write to
the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */


/* Allow Emacses larger than 16 megabytes.  */

#ifndef VALBITS
#define VALBITS 26
#define GCTYPEBITS 5
#endif

/* Include here a s- file that describes the system type you are using.
   See the file ../etc/MACHINES for a list of systems and the names of
   the s- files to use for them.  See s-template.h for documentation on 
   writing s- files.
 */
#include "s/s-bsd4-3.h"
/* Include here a m- file that describes the machine and system you use.
   See the file ../etc/MACHINES for a list of machines and the names of 
   the m- files to use for them.   See m-template.h for info on what m- 
   files should define.
 */
#include "m/m-pmax.h"
#undef TERMINFO

/* Load in the conversion definitions if this system
   needs them and the source file being compiled has not
   said to inhibit this.  There should be no need for you
   to alter these lines.  */

#ifdef SHORTNAMES
#ifndef NO_SHORTNAMES
#include "../shortnames/remap.h"
#endif /* not NO_SHORTNAMES */
#endif /* SHORTNAMES */

/* Define HAVE_X_WINDOWS if you want to use the X window system.  */
#define HAVE_X_WINDOWS

#ifdef HAVE_X_WINDOWS
#ifndef MULTI_SCREEN
#define MULTI_SCREEN
#endif
#endif

/* Define `subprocesses' if you want to have code for asynchronous
   subprocesses (as used in M-x compile and M-x shell).  These do not
   work for some USG systems yet; for the ones where they work, the
   s-*.h file defines this flag.  */

#ifndef VMS
#ifndef USG
#define subprocesses
#endif
#endif

/* Define USER_FULL_NAME to return a string
   that is the user's full name.
   It can assume that the variable `pw'
   points to the password file entry for this user.

   At some sites, the pw_gecos field contains
   the user's full name.  If neither this nor any other
   field contains the right thing, use pw_name,
   giving the user's login name, since that is better than nothing.  */

#define USER_FULL_NAME pw->pw_gecos

/* Define AMPERSAND_FULL_NAME if you use the convention
   that & in the full name stands for the login id.  */

/* #define AMPERSAND_FULL_NAME */

/* Define HIGHPRI as a negative number if you want Emacs to run at a higher
   than normal priority.  For this to take effect, you must install it as
   setuid root. */

/* #define HIGHPRI */

/* support `getenv' and `setenv' in Emacs (unix only) */
#define MAINTAIN_ENVIRONMENT

/* Define LISP_FLOAT_TYPE if you want emacs to support floating-point
   numbers. */

#define LISP_FLOAT_TYPE

/* Define GNU_MALLOC if you want to use the *new* GNU memory allocator.
   If you have trouble with _malloc being multiply-defined, or if you're
   on a NeXT (or possibly MACH in general) comment out the next four lines.
 */
/* #ifdef SYSTEM_MALLOC
 #undef SYSTEM_MALLOC
 #endif
 #define GNU_MALLOC */
#define HAVE_ALLOCA
#ifdef __GNUC__
# define alloca __builtin_alloca
#endif

/* define NEED_STRDUP if your system doesn't have the strdup() function. */

#define NEED_STRDUP


/* Define REL_ALLOC if you want to use the relocating allocator for
   buffer space.  (There are too many problems with this right now.) */

/* #define REL_ALLOC */

/* Non-Lucid sites can't compile with Energize support yet */
/* #define ENERGIZE */

/* You should define LWLIB_HAS_EXTENSIONS if and only if the lwlib Imakefile
   had INCLUDE_EXTENSIONS defined.  This makes it possible to link arbitrary
   other widgets into the Emacs frame; Energize requires this.  The only
   reason you would not want this defined is if you couldn't get lwlib to
   compile this way because you don't have read-access to the X source tree.
   See also LWLIB_USES_MOTIF and LWLIB_USES_OLIT, below.
 */
#ifdef ENERGIZE
#define LWLIB_HAS_EXTENSIONS
#endif

/* Until we figure out a better way, this is so you can run an X-based Emacs
   from a menu entry or from a shell buffer. */
#define INVISIBLE_TERMINAL_KLUDGE

/* Sound support.  If you are on a SparcStation and have the "sound" option
   installed (usually in /usr/demo/SOUND/) then define this to make it 
   possible to use arbitrary sound files as beeps.
 */
#ifdef sparc
#define USE_SPARC_SOUND
#endif

/* Compile in support for running emacs directly from temacs (useful for
   debugging emacs) */
#define RUNNABLE_TEMACS

/* Define this if your system does not include the realpath() system call. */

#define NEED_REALPATH

#ifdef THIS_IS_YMAKEFILE

/* Define USE_GCC to compile with GCC.
   Define USE_LCC to compile with Lucid C.
   Otherwise, "cc" will be used.
   You -must- use an ANSI C compiler.
 */
#define USE_GCC
/* #define USE_LCC */
#define C_DEBUG_SWITCH -O

/* If you have defined USE_MOTIF in the lwlib Imakefile, then you must define
   LWLIB_USES_MOTIF here.  Similarly, if you have defined USE_OLIT in the
   lwlib Imakefile, you must define LWLIB_USES_OLIT here.  This is because
   emacs must be linked with the Motif or OpenLook libraries if lwlib has
   been configured to use them.  (Note: you cannot define both.)
 */
/* #define LWLIB_USES_MOTIF */
/* #define LWLIB_USES_OLIT */


/* Define LD_SWITCH_SITE to contain any special flags your loader may
   need.  For instance, if you've defined HAVE_X_WINDOWS above and your
   X libraries aren't in a place that your loader can find on its own,
   you might want to add "-L/..." or something similar.  */

/* #define LD_SWITCH_SITE -L/x11r4/usr.`arch`/lib */
#define LD_SWITCH_SITE -L/usr/local/lib/X11R4

/* Define C_SWITCH_SITE to contain any special flags your compiler may
   need.  For instance, if you've defined HAVE_X_WINDOWS above and your
   X include files aren't in a place that your compiler can find on its
   own, you might want to add "-I/..." or something similar.  */

/* #define C_SWITCH_SITE -I/cadillacgnu/gcc-include -I/x11r4/usr/include */
#define C_SWITCH_SITE -I/usr/local/lib/X11R4

#ifdef USE_GCC
/* Depending on how GCC is installed, you may need to add the gcc library
   here.  This could also go in LD_SWITCH_SITE.  If you get errors about
   __fixunsdfsi or__main being undefined, you probably need to do this. */

/* #define LIB_GCC /cadillacgnu/lib/sun4/gcc-gnulib */
#define LIB_GCC /usr/local/lib/gcc-lib/pmax/2.2.2/libgcc.a -ldnet

#endif /* USE_GCC */

/* Supply missing routines */

/* If you are using SunOS 4.1.1 and X11r5, then you need this patch.
   There is a stupid bug in the SunOS libc.a: two functions which X11r5
   uses, mbstowcs() and wcstombs(), are unusable when programs are
   statically linked (as Emacs must be) because the static version of
   libc.a contains the *dynamic* versions of these functions.  These
   functions don't seem to be called when Emacs is running, so it's 
   enough to define stubs for them.

   This appears to be fixed in SunOS 4.1.2.
 */
#ifdef sparc
#define OBJECTS_SYSTEM sunOS-fix.o
#endif

#endif /* THIS_IS_YMAKEFILE */

From help-lucid-emacs-request@lucid.com  Wed Jul  8 04:19:40 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA08230; Wed, 8 Jul 92 04:19:40 PDT
Received: by heavens-gate.lucid.com id AA07096g; Wed, 8 Jul 92 04:10:25 PDT
Received: from sun2.nsfnet-relay.ac.uk by heavens-gate.lucid.com id AA07092g; Wed, 8 Jul 92 04:10:08 PDT
Via: uk.ac.city.cs; Wed, 8 Jul 1992 12:18:36 +0100
Received: from Messages.8.5.N.CUILIB.3.45.SNAP.NOT.LINKED.barney.cs.city.ac.uk.sun4.40 
          via MS.5.6.barney.cs.city.ac.uk.sun4_40;
          Wed, 8 Jul 1992 12:21:26 +0100 (BST)
Message-Id: <AeKgyqC__5g89Bj1kT@cs.city.ac.uk>
Date: Wed, 8 Jul 1992 12:21:26 +0100 (BST)
From: Andy Whitcroft <andy@cs.city.ac.uk>
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
To: help-lucid-emacs@lucid.com
Subject: EVI Mode.

A number of our users use the EVI mode as a VI emulation within lemacs. 
Although this is a reasonable emulation it seems to be a real *major*
mode.  Hence evi precludes proper use of any other emacs mode (TeX, C
etc).  I belive that other emulators for vi, such as vip, donot preclude
the use of other major modes.  Has anyone got one of these working or
has a good suggestion as to how one makes use of major modes under evi
etc.

Thanks in Advance.

Andy.
Andy Whitcroft				E-mail: andy@cs.city.ac.uk (MIME & ATK)
Systems Architecture Research Centre,	Tel: +44 71 477 8000 x8551
City University, London, UK.		Fax: +44 71 477 8587

From help-lucid-emacs-request@lucid.com  Wed Jul  8 05:55:49 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA08481; Wed, 8 Jul 92 05:55:49 PDT
Received: by heavens-gate.lucid.com id AA07228g; Wed, 8 Jul 92 05:46:05 PDT
Received: from dmi.ens.fr by heavens-gate.lucid.com id AA07224g; Wed, 8 Jul 92 05:45:41 PDT
Received: from ella.ens.fr (ella-gw.ens.fr) by dmi.ens.fr (5.65c8/ULM-1.0)
Date: Wed, 8 Jul 92 14:43:56 +0200
From: polcher%lmd.ens.fr@lucid.com (POLCHER Jan)
Message-Id: <9207081243.AA25011@ella.ens.fr>
To: help-lucid-emacs@lucid.com
Subject: adding me to you mailing list


Could you please add me to your mailing lists

add
subscribe

Jan Polcher
Laboratoire de meteorologie Dynamique
24 rue Lhomond
75231 Paris cedex 05
FRANCE

From help-lucid-emacs-request@lucid.com  Wed Jul  8 06:51:12 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA08638; Wed, 8 Jul 92 06:51:12 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA07344g; Wed, 8 Jul 92 06:42:14 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA28740; Wed, 8 Jul 92 07:51:13 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA28734; Wed, 8 Jul 92 07:51:11 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA09075; Wed, 8 Jul 92 07:51:41 -0400
Path: uunet!dtix!darwin.sura.net!Sirius.dfn.de!chx400!sicsun!slhp1.epfl.ch!lecom
From: lecom%slhp1.epfl.ch@lucid.com (Claude Lecommandeur)
Newsgroups: alt.lucid-emacs.help
Subject: lucid-emacs on HP
Message-Id: <3315@sicsun.epfl.ch>
Date: 8 Jul 92 10:35:54 GMT
Organization: Ecole Polytechnique Federale de Lausanne
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


   Does anybody had the guts to port lucid-emacs on hpux.
I tried to do it but gave up.


-- 


                    Claude Lecommandeur
                    Service Informatique Central
                    Ecole Polytechnique Federale de Lausanne
                    1015 LAUSANNE (SWITZERLAND)
                    E-Mail : lecom@sic.epfl.ch
                    Tel : (41 21) 693-22-97

From help-lucid-emacs-request@lucid.com  Wed Jul  8 06:54:35 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA08655; Wed, 8 Jul 92 06:54:35 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA07349g; Wed, 8 Jul 92 06:44:57 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA04772; Wed, 8 Jul 92 09:54:04 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA04766; Wed, 8 Jul 92 09:54:03 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA11035; Wed, 8 Jul 92 09:54:33 -0400
Path: uunet!think.com!spool.mu.edu!umn.edu!noc.msc.net!uc.msc.edu!shamash!bjdunlop
From: bjdunlop@shamash.cdc.com (Bruce Dunlop)
Newsgroups: alt.lucid-emacs.help
Subject: Binding keys
Message-Id: <44749@shamash.cdc.com>
Date: 8 Jul 92 13:29:39 GMT
Distribution: usa
Organization: Control Data, Arden Hills, MN
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


I have a Sun Sparc 2, and am having some trouble binding some function keys.

1.  I successfully bound f1-f10, but then sh-f1 to sh-f10 got bound to the
    same function.  (probably true of other function keys too)

2.  I can't bind anything to M-f1 to M-f10 (meta), or C-f1 to C-f10 (ctrl),
    or Sym-f1 to Sym-f10 (alt).  (probably true of other function keys too)

3.  I would like to have a function key defined to repeat my last search
    command.  How do I do this?

4.  The Help key doesn't seem to do anything, so I can't bind anything to it.
    But sh-help does the help-for-help command (I didn't bind this, though).
    Is there a way to bind to unshifted help key?

My .emacs commands for binding keys look like this example:
	(global-set-key 'M-f1 'list-buffers)

If replying by email, I prefer the addr below.

Jim Dahlberg
jad@verdin.gsd.cdc.com

From help-lucid-emacs-request@lucid.com  Wed Jul  8 13:27:03 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA09886; Wed, 8 Jul 92 13:27:03 PDT
Received: by heavens-gate.lucid.com id AA08642g; Wed, 8 Jul 92 13:16:05 PDT
Received: from rcvax.gmr.com (gmr.com) by heavens-gate.lucid.com id AA08628g; Wed, 8 Jul 92 13:13:46 PDT
Received: from kocrsv01.delcoelect.com by gmr.com with PMDF#10372; Wed, 8 Jul
 1992 16:19 EST
Received: from kocrsw12.delcoelect.com by kocrsv01.delcoelect.com with SMTP id
 AA25342 (5.65c/IDA-1.4.4/CORE for <help-lucid-emacs@lucid.com>); Wed, 8 Jul
 1992 15:22:34 -0500
Received: by kocrsw12.delcoelect.com (4.1/SMI-4.1) id AA02976; Wed, 8 Jul 92
 15:22:33 EST
Date: Wed, 8 Jul 92 15:22:33 EST
From: Mike Scheidler <c23mts@kocrsv01.delcoelect.com>
Subject: lhilit.el
To: help-lucid-emacs@lucid.com
Message-Id: <9207082022.AA02976@kocrsw12.delcoelect.com>

Hi all,

I have been watching activity on this list for a while, but have seen very
little code posted that takes advantage of lemacs' ability to display various
colors and fonts on the same screen.  To this end, I have adapted the epoch
hilit.el package for use with lemacs.  For those of you who are familiar with
hilit, it should perform just like the epoch version.  For those who are not,
load it and then visit a C file.  It will really open your eyes.  I really
haven't experimented with fonts yet, but the same sort of thing applies.  See
the 'Customization' section for more info.

I hope you enjoy using this code as much as I do.

 Mike Scheidler                 INTERNET:  c23mts@kocrsv01.delcoelect.com
 Software Technology            UUCP:      deaes!c23mts
 Delco Electronics Corporation  PHONE:     (317) 451-0642
 Kokomo, IN 46904
------------------------------ cut here -----------------------------------
;;;  lhilit v1.0 - Text highlighting package for Lucid emacs.
;;;
;;;  Copyright (C) 1992 by Mike Scheidler (c23mts@kocrsv01.delcoelect.com)
;;;
;;;  This package is adapted from the hilit.el package for epoch, Copyright
;;;  (C) 1991 by Paul Nakada (pnakada@oracle.com).
;;;
;;;  GNU Emacs is distributed in the hope that it will be useful,
;;;  but WITHOUT ANY WARRANTY.  No author or distributor
;;;  accepts responsibility to anyone for the consequences of using it
;;;  or for whether it serves any particular purpose or works at all,
;;;  unless he says so in writing.  Refer to the GNU Emacs General Public
;;;  License for full details.

;;;  Everyone is granted permission to copy, modify and redistribute
;;;  GNU Emacs, but only under the conditions described in the
;;;  GNU Emacs General Public License.   A copy of this license is
;;;  supposed to have been given to you along with GNU Emacs so you
;;;  can know your rights and responsibilities.  It should be in a
;;;  file named COPYING.  Among other things, the copyright notice
;;;  and this notice must be preserved on all copies.

;;;  How it works
;;;  ------------
;;;  Highlights regions of a file (known as 'extents') specific to a mode.
;;;  Uses variable hilit::mode-list to determine what to highlight for each
;;;  mode.  Each element of the list has the form
;;;    ("modename" ("pstart" "pend" face)
;;;                ("pstart" "pend" face)... )
;;;  pstart and pend are regular expressions denoting the starting and ending
;;;  of a portion of the buffer to be highlighted according to face.  If pend
;;;  is nil the end of line terminates the region hilited.  (See examples in
;;;  the initialization section below).
;;;
;;;  Default key bindings
;;;  --------------------
;;;  \C-c \C-h    - rehighlight the current buffer
;;;  \C-c \C-t    - toggle highlighting off/on
;;;
;;;  Customization
;;;  -------------
;;;  Note that any customizations must be done AFTER lhilit has been loaded.
;;;  To override the default color assignments, put something similar to
;;;            (set-face-foreground 'hilit0 "yellow")
;;;  in your .emacs file for each color that you want to change or,
;;;  interactively, do M-x set-face-foreground and follow the prompts.
;;;  The colors (faces) used by lhilit are named hilit0 ... hilit9 (see init
;;;  code below).  Fonts can be customized in a similar manner, e.g.
;;;            (set-face-font 'hilit0 "8x13")
;;;
;;;  To add a new mode, put something like this in your .emacs file:
;;;            (setq ada-mode-hilit
;;;               '(("--.*" nil hilit0)
;;;                 ("^[ \t]*function.*" nil hilit2)
;;;                 ("^[ \t]*procedure.*" nil hilit2)))
;;;            (hilit::mode-list-update "Ada" ada-mode-hilit)
;;;  Note that the mode name (e.g. "Ada") must exactly match the name of the
;;;  emacs mode name in order for highlighting to be performed.
;;;

;;------------------------------------------
;; Load required Common Lisp extensions.
;;------------------------------------------
(require 'cl)

(defvar hilit::init-done nil
  "Flag signifying that hilit subsystem has been initialized.")

(defvar hilit::saving nil
  "'semaphore' set while in process of saving a file.")

(defvar hilit::read-hooks nil
  "List of hooks to call after visiting a file.")

(defvar hilit::write-hooks nil
  "List of hooks to call before writing a file.")

(defvar hilit::mode-list nil
  "A-list of mode names and regexps/styles to use.")

(defvar hilit::do-hiliting t
  "T if we should highlight buffers as we find them.  Nil otherwise.")

(defvar hilit::buffer-hilited nil
  "Non-nil if the current buffer is highlighted.")

;;------------------------------------------
;; Quick access to regexp patterns.
;;------------------------------------------
(defmacro pattern-start (p) (` (nth 0 (, p))))
(defmacro pattern-end   (p) (` (nth 1 (, p))))
(defmacro pattern-attr  (p) (` (nth 2 (, p))))

;;------------------------------------------
;; Install a new set of mode regexps.
;;------------------------------------------
(defun hilit::mode-list-update (mode-name mlist)
  "Adds or updates the hiliting instructions for MODE-NAME in MLIST to the
hiliting mode list."
  (if (assoc mode-name hilit::mode-list)
      (setq hilit::mode-list
	    (delq (assoc mode-name hilit::mode-list)
		  hilit::mode-list)))
  (setq hilit::mode-list (cons (cons mode-name mlist) hilit::mode-list)))

;;------------------------------------------
;; Highlight the current buffer.
;;------------------------------------------
(defun hilit::hilit-buffer ()
  "Highlights regions of a buffer specific to the buffer's mode."
  (interactive)
  (if hilit::mode-list
      (let ((modes hilit::mode-list))
        (while (setq m (car modes))
          (setq mode (car m))
          (setq patterns (cdr m))
          (while (setq p (car patterns))
            (let ((pstart (pattern-start p))
                  (pend (pattern-end p))
                  (pattr (pattern-attr p)))
              (if (string= mode mode-name)
                  (save-excursion
                    (goto-char 0)
                    (if pend
                        (while (re-search-forward pstart nil t nil)
                          (setq hilit::buffer-hilited t)
                          (goto-char (setq start (match-beginning 0)))
                          (re-search-forward pend nil t nil)
			  (set-extent-face
			   (make-extent start (match-end 0))
			   pattr))
                      (while (re-search-forward pstart nil t nil)
                        (setq hilit::buffer-hilited t)
			(set-extent-face
			 (make-extent (match-beginning 0) (match-end 0))
			 pattr)
			(goto-char (match-end 0)))
		      )))
	      (setq patterns (cdr patterns))))
	  (setq modes (cdr modes))))))

;;------------------------------------------
;; Unhighlight the current buffer.
;;------------------------------------------
(defun hilit::unhilit-buffer ()
  (interactive)
  (save-excursion
    (map-extents (function (lambda (x y) (delete-extent x)))
		 (current-buffer) (point-min) (point-max) nil)))

;;------------------------------------------
;; Reprocess the current buffer.
;;------------------------------------------
(defun re-hilit (arg)
  "Re-hilit the current buffer.  With arg, unhilit the current buffer."
  (interactive "P")
  (hilit::unhilit-buffer)
  (setq hilit::buffer-hilited nil)
  (if (not arg)
      (hilit::hilit-buffer)))

(global-set-key "\C-c\C-h" 're-hilit)

;;------------------------------------------
;; Reverse state of current highlighting.
;;------------------------------------------
(defun toggle-hilit (arg)
  "Globally toggle hiliting of this and future files read.  With arg,
forces hiliting off."
  (interactive "P")
  (if arg
      (progn
        (setq hilit::buffer-hilited nil)
        (setq hilit::do-hiliting t))
    (setq hilit::buffer-hilited (not hilit::buffer-hilited))
    )
  (setq hilit::do-hiliting hilit::buffer-hilited)
  (hilit::unhilit-buffer)
  (if hilit::do-hiliting
      (hilit::hilit-buffer))
  (message (format "Hiliting is %s"
                   (if hilit::buffer-hilited
                       "on" "off"))))

(global-set-key "\C-c\C-t" 'toggle-hilit)

;;------------------------------------------
;; Find/write file hooks.  They cause automatic hiliting/rehiliting when
;; files are read/written.
;;------------------------------------------
(defun hilit::unhilit-before-save ()
  "Write a hilited buffer to a file.  Useful as a write-file hook."
  (if hilit::do-hiliting
      (if hilit::saving
          nil
        (hilit::unhilit-buffer)
        (setq hilit::saving t)
        (save-buffer)
        (setq hilit::saving nil)
        (hilit::hilit-buffer)
        (set-buffer-modified-p nil)
        t)))

(defun hilit::hilit-after-find ()
  "Hilit the current buffer, without modifying it.  Useful as a find-file hook."
  (if hilit::do-hiliting
      (progn
        (hilit::hilit-buffer)
        (set-buffer-modified-p nil))))

;;------------------------------------------
;; Initialization.
;;------------------------------------------
(defun create-face-if-needed (name-of-face fg)
  "Create a new face named NAME-OF-FACE, if it does not already exist.  The
face foreground color is set to color FG."
  (if (not (assoc name-of-face global-face-data))
      (make-face name-of-face))
  (set-face-foreground name-of-face fg))

(if (not hilit::init-done)
    (progn
      (setq hilit::init-done t)

      ;;------------------------------------------
      ;; Install read/write hooks.
      ;;------------------------------------------
      (push 'hilit::hilit-after-find find-file-hooks)
      (push 'hilit::unhilit-before-save write-file-hooks)

      ;;------------------------------------------
      ;; Create several different-colored faces.
      ;;------------------------------------------
      (create-face-if-needed 'hilit0 "red")
      (create-face-if-needed 'hilit1 "magenta")
      (create-face-if-needed 'hilit2 "blue")
      (create-face-if-needed 'hilit3 "purple")
      (create-face-if-needed 'hilit4 "royalblue")
      (create-face-if-needed 'hilit5 "darkgoldenrod")
      (create-face-if-needed 'hilit6 "firebrick")
      (create-face-if-needed 'hilit7 "darkorange")
      (create-face-if-needed 'hilit8 "deeppink")
      (create-face-if-needed 'hilit9 "forestgreen")

      ;;------------------------------------------
      ;; Mode definitions.
      ;;------------------------------------------
      (setq c-mode-hilit
	    '(("/\\*" "\\*/" hilit0)
	      ("^[_a-zA-Z][^=\n]*(\\(.*;\\|[^{]*\\)" nil hilit1) ;; fn decls
	      ("^#.*" nil hilit2)
	      ("^typedef.*" nil hilit3)
	      ("^struct.*" nil hilit4)
	      ("^enum.*" nil hilit5)))
      (hilit::mode-list-update "C" c-mode-hilit)

      (setq c++-mode-hilit
	    '(("/\\*" "\\*/" hilit0)
	      ("^[_a-zA-Z][^=\n]*(\\(.*;\\|[^{]*\\)" nil hilit2) ;; fn decls
	      ("//.*" nil hilit0)
	      ("^/.*" nil hilit0)
	      ("^#.*" nil hilit9)
	      ("^typedef.*" nil hilit1)
	      ("^struct.*" nil hilit1)
	      ("^class.*" nil hilit1)
	      ("^enum.*" nil hilit1)))
      (hilit::mode-list-update "C++" c++-mode-hilit)

      (setq text-mode-hilit
	    '(("^#.*" nil hilit0)
	      ("[^$]#.*" nil hilit0)))
      (hilit::mode-list-update "Text" text-mode-hilit)

      (setq fundamental-mode-hilit
	    '(("^#.*" nil hilit0)
	      ("[^$]#.*" nil hilit0)))
      (hilit::mode-list-update "Fundamental" fundamental-mode-hilit)

      (setq compilation-mode-hilit
	    '(("^[^ \t]*:[0-9]+:.*$" nil hilit0)
	      ("^[^ \t]*:[0-9]+: warning:.*$" nil hilit2)))
      (hilit::mode-list-update "Compilation" compilation-mode-hilit)
      (hilit::mode-list-update "grep" compilation-mode-hilit)

      (setq makefile-mode-hilit
	    '(("^#.*" nil hilit0)                  ; comments
	      ("[^$]#.*" nil hilit0)               ; comments
	      ("^%.*" nil hilit1)                  ; rules
	      ("^[.][a-zA-Z][a-zA-Z]?\..*" nil hilit1) ; rules
	      ("^[_a-zA-Z0-9]+ *\+?=" nil hilit2)  ; variable definition
	      ("\$[_a-zA-Z0-9]" nil hilit2)        ; variable reference
	      ("\${[_a-zA-Z0-9]+}" nil hilit2)     ; variable reference
	      ("\$\([_a-zA-Z0-9]+\)" nil hilit2)   ; variable reference
	      ("\\( \\|:=\\)[_a-zA-Z0-9]+ *\\+=" nil hilit2) ; variable definition
	      ("^include " nil hilit9)))           ; include
      (hilit::mode-list-update "Makefile" makefile-mode-hilit)

      (setq emacs-lisp-mode-hilit
	    '(("^;.*" nil hilit0)
	      (";;.*" nil hilit0)
	      ("\(defun.*" nil hilit2)
	      ("\(defmacro.*" nil hilit7)
	      ("\(defvar.*" nil hilit1)
	      ("\(defconst.*" nil hilit5)
	      ("\(provide.*" nil hilit9)
	      ("\(require.*" nil hilit9)))
      (hilit::mode-list-update "Emacs-Lisp" emacs-lisp-mode-hilit)))

(provide 'lhilit)


From help-lucid-emacs-request@lucid.com  Wed Jul  8 20:23:25 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA10795; Wed, 8 Jul 92 20:23:25 PDT
Received: by heavens-gate.lucid.com id AA00921g; Wed, 8 Jul 92 20:13:25 PDT
Received: from lynx (lynx.csis.dit.csiro.au) by heavens-gate.lucid.com id AA00914g; Wed, 8 Jul 92 20:13:09 PDT
Received: from argo.csis.dit.csiro.au by lynx (4.1/1.0)
	id AA08744; Thu, 9 Jul 92 11:35:01 EST
Received: by argo.csis.dit.csiro.au (4.1/1.0)
	id AA18120; Thu, 9 Jul 92 11:34:59 EST
From: stuarth%csis.dit.csiro.au@lucid.com
Message-Id: <9207090134.AA18120@argo.csis.dit.csiro.au>
Subject: Re: lhilit.el
To: c23mts@kocrsv01.delcoelect.com (Mike Scheidler)
Date: Thu, 9 Jul 92 11:34:58 EST
Cc: help-lucid-emacs@lucid.com
In-Reply-To: <9207082022.AA02976@kocrsw12.delcoelect.com>; from "Mike Scheidler" at Jul 8, 92 3:22 pm
X-Mailer: ELM [version 2.3 PL11]

According to Mike Scheidler:
> 
> Hi all,
> 
> I have been watching activity on this list for a while, but have seen very
> little code posted that takes advantage of lemacs' ability to display various
> colors and fonts on the same screen.  To this end, I have adapted the epoch
> hilit.el package for use with lemacs.  For those of you who are familiar with
> hilit, it should perform just like the epoch version.  For those who are not,
> load it and then visit a C file.  It will really open your eyes.  I really
> haven't experimented with fonts yet, but the same sort of thing applies.  See
> the 'Customization' section for more info.

   This is very neat stuff -- does anyone have a better set of regular
   expressions for C++ mode? (ie that understand references, templates,
   static class members, consts, etc etc)
   
Stu

/-----------------------------------------------------------------------------\
| Stuart Hungerford | Internet : stuarth@csis.dit.csiro.au                    |
| CSIRO DIT         | Voice    : +61-6-2750941                                |
| Australia         | Fax      : +61-6-2571052                                |
\-----------------------------------------------------------------------------/
  "Being a 7 foot robot means never having to say you're sorry" --
   REX-1 to Teenage Mutant Ninja Turtles

From help-lucid-emacs-request@lucid.com  Thu Jul  9 04:05:46 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA12359; Thu, 9 Jul 92 04:05:46 PDT
Received: by heavens-gate.lucid.com id AA02964g; Thu, 9 Jul 92 03:25:27 PDT
Received: from sun2.nsfnet-relay.ac.uk by heavens-gate.lucid.com id AA02956g; Thu, 9 Jul 92 03:24:04 PDT
Via: uk.ac.city.cs; Thu, 9 Jul 1992 11:32:18 +0100
Received: from Messages.8.5.N.CUILIB.3.45.SNAP.NOT.LINKED.barney.cs.city.ac.uk.sun4.40 
          via MS.5.6.barney.cs.city.ac.uk.sun4_40;
          Thu, 9 Jul 1992 11:34:59 +0100 (BST)
Message-Id: <UeL1NHy__5g8979kcQ@cs.city.ac.uk>
Date: Thu, 9 Jul 1992 11:34:59 +0100 (BST)
From: Andy Whitcroft <andy@cs.city.ac.uk>
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
To: help-lucid-emacs@lucid.com
Subject: Tree Dired.

I am having trouble with tree dired.  If I attempt to use the
hide/unhide functions of this mode then all I get is a long line
displayed with loads of ^M's through it.  Looking at the lisp it seems
to (setq selective-display t) in order to prevent this, however, this
does not seem to work?

Has anyone seen made this work?

Andy.
Andy Whitcroft				E-mail: andy@cs.city.ac.uk (MIME & ATK)
Systems Architecture Research Centre,	Tel: +44 71 477 8000 x8551
City University, London, UK.		Fax: +44 71 477 8587

From help-lucid-emacs-request@lucid.com  Thu Jul  9 06:46:20 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA12737; Thu, 9 Jul 92 06:46:20 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA03648g; Thu, 9 Jul 92 06:18:16 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA28011; Thu, 9 Jul 92 09:27:26 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA28005; Thu, 9 Jul 92 09:27:25 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA21602; Thu, 9 Jul 92 09:28:07 -0400
Path: uunet!spool.mu.edu!umn.edu!noc.msc.net!uc.msc.edu!shamash!bjdunlop
From: bjdunlop@shamash.cdc.com (Bruce Dunlop)
Newsgroups: comp.emacs,alt.lucid-emacs.help
Subject: Repeat last command
Message-Id: <44798@shamash.cdc.com>
Date: 9 Jul 92 12:41:37 GMT
Followup-To: comp.emacs
Distribution: usa
Organization: Control Data, Arden Hills, MN
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


I would like to have a 1-keystroke repeat command for gnu
or lucid emacs.  How do I get a key bound to the sequence:
	1.  repeat-complex-command
	2.  newline

I'm a new user of lucid, and don't understand how to write
lisp code yet.

Jim Dahlberg
jad@verdin.gsd.cdc.com

From help-lucid-emacs-request@lucid.com  Thu Jul  9 07:15:00 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA12796; Thu, 9 Jul 92 07:15:00 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA03672g; Thu, 9 Jul 92 06:24:28 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA28254; Thu, 9 Jul 92 09:33:38 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA28247; Thu, 9 Jul 92 09:33:33 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA21649; Thu, 9 Jul 92 09:34:14 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!decwrl!pa.dec.com!nntpd2.cxo.dec.com!nntpd.lkg.dec.com!estacy.two.dec.com!chenis
From: chenis@estacy.two.dec.com (Kenneth J. Chenis)
Subject: Re: lemacs on DEC 5000/200
Message-Id: <1992Jul9.131023.10931@nntpd.lkg.dec.com>
Reply-To: chenis@estacy.two.dec.com (Kenneth J. Chenis)
Organization: Digital Equipment Corporation
References:  <9207080731.AA29917@Sunburn.Stanford.EDU>
Date: Thu, 9 Jul 1992 13:10:23 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


We've got it to compile, but we are having problems with the invocation
- somthing around the termcap code.  (debugging now) - we can get one
of 2 errors ...

emacs: Terminal type invisible is not defined.

or

emacs: Cannot open termcap database file.

we tried putting a basic entry in termcap for invisible just to get by
the error, and we result in a core dump during an x-realize-widget  type
call ...  I'll post a followup if we get it working - also, if anyone
has inputs on the "invisible" terminal problem - i'd be happy to listen.

--
-------------------------------------------------------------------------------
Ken Chenis					      Surfing On The Portable C
chenis@estacy.two.dec.com

From help-lucid-emacs-request@lucid.com  Thu Jul  9 07:55:26 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA12849; Thu, 9 Jul 92 07:55:26 PDT
Received: by heavens-gate.lucid.com id AA03867g; Thu, 9 Jul 92 07:28:43 PDT
Received: from linus.mitre.org by heavens-gate.lucid.com id AA03860g; Thu, 9 Jul 92 07:27:50 PDT
Return-Path: <guttman@linus.mitre.org>
Received: from circe.mitre.org by linus.mitre.org (5.61/RCF-4S)
	id AA28255; Thu, 9 Jul 92 10:37:07 -0400
Posted-Date: Thu, 09 Jul 92 10:38:45 -0400
Received: by circe.mitre.org (5.61/RCF-4C)
	id AA05182; Thu, 9 Jul 92 10:38:45 -0400
Message-Id: <9207091438.AA05182@circe.mitre.org>
To: bjdunlop@shamash.cdc.com (Bruce Dunlop)
Cc: help-lucid-emacs@lucid.com, guttman@linus.mitre.org
Subject: Re: Repeat last command 
In-Reply-To: Your message of "09 Jul 92 12:41:37 GMT."
             <44798@shamash.cdc.com> 
X-Postal-Address: MITRE, Mail Stop A156 \\ 202 Burlington Rd. \\ Bedford, MA 01730
Date: Thu, 09 Jul 92 10:38:45 -0400
From: guttman@linus.mitre.org

Try 

(global-set-key '(meta control X) 'repeat-complex-command)

This means that repeat-complex-command will be executed when you press meta,
control, shift, and x.  

(global-set-key '(shift f1) 'repeat-complex-command)

will invoke it when you press shift and the F1 function key (at least it works
on my sun keyboard).  To try these out, place your cursor after the close-paren
and type ^x^e.  To make them permanent, put one or the other in ~/.emacs.  

	Josh

From help-lucid-emacs-request@lucid.com  Thu Jul  9 09:08:29 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA13094; Thu, 9 Jul 92 09:08:29 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA04029g; Thu, 9 Jul 92 08:41:15 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA04999; Thu, 9 Jul 92 11:50:26 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA04993; Thu, 9 Jul 92 11:50:25 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA22573; Thu, 9 Jul 92 11:51:08 -0400
Path: uunet!paladin.american.edu!darwin.sura.net!Sirius.dfn.de!chx400!sicsun!disuns2!disuns2.epfl.ch!simon
From: simon%lia.di.epfl.ch@lucid.com (Simon Leinen)
Newsgroups: alt.lucid-emacs.help
Subject: Re: lemacs on DEC 5000/200
Message-Id: <SIMON.92Jul9164515@liasg1.epfl.ch>
Date: 9 Jul 92 14:45:15 GMT
References: <9207080731.AA29917@Sunburn.Stanford.EDU>
	<1992Jul9.131023.10931@nntpd.lkg.dec.com>
Organization: DI-LIA -- Ecole Polytechnique Federale de Lausanne
In-Reply-To: chenis@estacy.two.dec.com's message of 9 Jul 92 13:10:23 GMT
X-Md4-Signature: eb68590776466bde4f47ad359c84b2b3
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <1992Jul9.131023.10931@nntpd.lkg.dec.com>
chenis@estacy.two.dec.com (Kenneth J. Chenis) writes:

   emacs: Terminal type invisible is not defined.

   [...] if anyone has inputs on the "invisible" terminal problem -
   i'd be happy to listen.

I had the same problem on IRIX.  Background: the "invisible" termcap
entry is generated by Lemacs as a TERMCAP environment variable.
"Normal" termcap systems (like on SunOS) find it, but other systems
may not; IRIX for example simulates only a subset of termcap
functionality using terminfo.

If you are on a terminfo system, adding "termcap.o" to the definition
of "termcapobj" in [xy]makefile may solve the problem -- for me it
did.  But I think the whole INVISIBLE_TERMINAL_KLUDGE could be made
more portable (perhaps infinitely so by removal? :-).
-- 
Simon.

From help-lucid-emacs-request@lucid.com  Thu Jul  9 09:51:05 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA13147; Thu, 9 Jul 92 09:51:05 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA04030g; Thu, 9 Jul 92 08:41:38 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA05019; Thu, 9 Jul 92 11:50:49 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA05013; Thu, 9 Jul 92 11:50:47 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA22579; Thu, 9 Jul 92 11:51:30 -0400
Path: uunet!paladin.american.edu!darwin.sura.net!Sirius.dfn.de!chx400!sicsun!disuns2!disuns2.epfl.ch!simon
From: simon%lia.di.epfl.ch@lucid.com (Simon Leinen)
Newsgroups: alt.lucid-emacs.help
Subject: Re: lucid-emacs on HP
Message-Id: <SIMON.92Jul9165630@liasg1.epfl.ch>
Date: 9 Jul 92 14:56:30 GMT
References: <3315@sicsun.epfl.ch>
Organization: DI-LIA -- Ecole Polytechnique Federale de Lausanne
In-Reply-To: lecom@slhp1.epfl.ch's message of 8 Jul 92 10:35:54 GMT
X-Md4-Signature: bff6d0cd69c83ff7e7860f5f9a5a9faa
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <3315@sicsun.epfl.ch> lecom@slhp1.epfl.ch (Claude
Lecommandeur) writes:

      Does anybody had the guts to port lucid-emacs on hpux.
   I tried to do it but gave up.

Claude, I assume you mean HP-UX *8*.  The main problem on HP-UX 8 is
that you have to avoid the dynamic linker; That's why GNU Emacs 18.58
split the s-hpux.h file into s-hpux7.h and s-hpux8.h -- you may want
to take these over to Lemacs and retry.

Bonne chance,
-- 
Simon.

From help-lucid-emacs-request@lucid.com  Thu Jul  9 09:51:05 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA13148; Thu, 9 Jul 92 09:51:05 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA04026g; Thu, 9 Jul 92 08:39:35 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA04886; Thu, 9 Jul 92 11:48:45 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA04877; Thu, 9 Jul 92 11:48:42 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA22550; Thu, 9 Jul 92 11:49:23 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!mcsun!sun4nl!dutrun!donau!liberator!arnofr
From: arnofr%liberator.et.tudelft.nl@lucid.com (Arno F. Roelofs)
Subject: Cursor keys and electric-buffer-list?
Message-Id: <1992Jul09.130424.26783@donau.et.tudelft.nl>
Reply-To: arnofr%liberator.et.tudelft.nl@lucid.com (Arno F. Roelofs)
Organization: Delft University of Technology, Dept. of Electrical Engineering
Date: Thu, 09 Jul 1992 13:04:24 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


I have just switched from emacs v18.58 to Lucid emacs 19.2.  
There is a problem that I can't solve. I want to be able to use the
cursor-keys in electric-buffer-list and in electric-command-history.
This worked automatically with the last version of GNUemacs. Lucid
emacs gives the following error when I type CursorDown, after calling
electric-buffer-list:
Wrong type argument: integerp, nil 

Among other things, I have tried simply adding the cursor keys to the
keymap but failed.

Does anyone know how to fix this problem?

I am using the binaries from lemacs-19.2-sun4.tar.Z and the lisp files
from lemacs-19.2.tar.Z (which I ftp'ed from labrea.Stanford.EDU
(36.8.0.47)) 
I have tried it on Sparc 1+, SLC and IPC running X11R4 and X11R5
with the same result.

Thanks in advance,

Arno Roelofs  -- email: arnofr@duteca.et.tudelft.nl


From help-lucid-emacs-request@lucid.com  Thu Jul  9 09:51:16 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA13155; Thu, 9 Jul 92 09:51:16 PDT
Received: by heavens-gate.lucid.com id AA03897g; Thu, 9 Jul 92 07:37:46 PDT
Received: from cmcl2.NYU.EDU (NYU.EDU) by heavens-gate.lucid.com id AA03888g; Thu, 9 Jul 92 07:36:20 PDT
Received: from WOTAN.CNS.NYU.EDU by cmcl2.NYU.EDU (5.61/1.34)
	id AA10435; Thu, 9 Jul 92 10:45:30 -0400
Received: from wanderer.cns.nyu.edu by wotan.cns.nyu.edu (4.1/SMI-4.0)
	id AA08028; Thu, 9 Jul 92 10:44:38 EDT
Date: Thu, 9 Jul 92 10:44:38 EDT
From: okeefe@cns.nyu.edu (Larry O'Keefe)
Message-Id: <9207091444.AA08028@wotan.cns.nyu.edu>
To: help-lucid-emacs@lucid.com
Subject: Compile problems

Wonder if you could help with a problem in building lemacs...

Sun Sparcs, SunOS 4.1.1, Openwin3, X11R4

Here is the message I get when running build install:

ld   -e __start -Bstatic  -L/usr/openwin3/lib  -L. -L./lwlib -o temacs crt0.o dispnew
.o screen.o scroll.o xdisp.o window.o  events.o event-alloc.o event-stream.o  term.o
cm.o xterm.o xfns.o xselect.o xutils.o event-Xt.o menubar.o play.o libsst.o  emacs.o
keyboard.o macros.o keymap.o sysdep.o  buffer.o filelock.o insdel.o marker.o  minibuf
.o fileio.o dired.o filemode.o  cmds.o casetab.o casefiddle.o indent.o search.o regex
.o undo.o  alloc.o data.o doc.o editfns.o callint.o  eval.o floatfns.o fns.o print.o
lread.o  abbrev.o syntax.o unexec.o mocklisp.o bytecode.o  process.o callproc.o envir
on.o  doprnt.o extents.o faces.o elhash.o hash.o tparam.o lastfile.o gmalloc.o vm-lim
it.o ScreenWidget.o ColumnWidget.o EmacsShell.o sunOS-fix.o  -L/usr/demo/SOUND -laudi
o    -llw -lXol -lXaw -lXext -lXt -lXmu -lX11   -ltermcap  -lg /usr/local/lib/gcc-gnu
lib -lm -lc
Undefined
_resource_string
*** Error code 2
make: Fatal error: Command failed for target `temacs'
Current working directory /u/u1/okeefe/lucid/lemacs-19.2/src
*** Error code 1
make: Fatal error: Command failed for target `doall'
exit 1

Any ideas?

Thanks,

Lawrence P. O'Keefe, Ph.D.
Center for Neural Science
New York University
6 Washington Place, 8th Floor
New York, NY  10003
okeefe@cns.nyu.edu
(212) 998-7898

From help-lucid-emacs-request@lucid.com  Thu Jul  9 10:11:47 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA13230; Thu, 9 Jul 92 10:11:47 PDT
Received: by heavens-gate.lucid.com id AA04216g; Thu, 9 Jul 92 10:01:26 PDT
Received: from moebius.loria.fr by heavens-gate.lucid.com id AA04200g; Thu, 9 Jul 92 09:57:19 PDT
Received: by moebius.loria.fr id AA18487
  (5.65c+/IDA-1.4.3 for help-lucid-emacs@lucid.com); Thu, 9 Jul 92 19:05:04 +0200
Date: Thu, 9 Jul 92 19:05:04 +0200
From: Guido Bosch <Guido.Bosch%loria.fr@lucid.com>
Message-Id: <9207091705.AA18487@moebius.loria.fr>
To: help-lucid-emacs@lucid.com
Subject: select-button package for ILISP
Reply-To: Guido BOSCH <bosch%loria.fr@lucid.com>

Hi,

Here is an additional package for ILISP. It allows the plotting of
selectable buttons in an inferior lisp buffer. A Lisp form (of the
inferior Lisp) can be attached to each button, such that selecting
it will execute the form in the inferior Lisp.

Very useful to write hypertext like object browsers.

---------------------- ilisp-select-buttons.el ----------------------
;;   -*- Syntax: Emacs-Lisp; Mode: emacs-lisp -*-
;;
;; This file is not yet part of GNU Emacs.
;;
;; GNU Emacas is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation; either version 2, or (at your option)
;; any later version.
;;
;; GNU Emacs is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
;; GNU General Public License for more details.
;;
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING.  If not, write to
;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
;; Please send bugs and comments to the above address
;;
;;
;; <DISCLAIMER>
;; This program is still under development.  Neither the author nor
;; CRIN-INRIA accepts responsibility to anyone for the consequences of
;; using it or for whether it serves any particular purpose or works
;; at all.

;;
;; Select button package for ILISP (for Lucid Emacs 19 only)
;;
;; Copyright (c) 1992 by Guido Bosch <bosch@loria.fr>
;;
;; Installation: (in the .emacs)
;;
;; (autoload 'ilisp-install-select-buttons "ilisp-select-buttons" nil t) 
;;
;; (add-hook '<my-lisp>-hook
;;	  '(lambda ()
;;	     (add-hook 'ilisp-init-hook
;;		       'ilisp-install-select-buttons)))
;;
;;
;; To install manually, compile and load this file, start ILISP and
;; type M-x ilisp-install-select-buttons in the inferior lisp buffer.

;; Usage: 
;; The inferior lisp can plot selection buttons in the inferior lisp buffer
;; using the following  special format: 
;;
;;        ^[2"<button label>" '(sexpr to eval on middle mouse click)^]
;;
;; while "^[" and "^]" mean "\C-[" and "\C-]" (in elisp
;; representation).  <button label> will be the selectable text
;; inserted into the inferior lisp buffer, and '(sexpr to eval on middle
;; mouse click) is the form that will be evaluated in the inferior
;; lisp when you click with the middle mouse button on the select button. 
;; 
;; Here is a Common Lisp function that may be used to print select buttons:
;; 
;;    (defun print-select-button (label form)
;;      (format t "2~s~s" label form)
;;      label)
;; 
;; 
;; Use M-x remove-bridge to remove the select button handler.
;; The package bridge.el.


; Change history:
;
; $Log: ilisp-select-buttons.el,v $
; Revision 1.2  1992/07/08  15:42:10  bosch
; Installation hints added. selection buttons are now printed in bold
; face. Default middle mouse button handler added (needs enhancement).
;
; Revision 1.1  1992/07/08  12:10:38  bosch
; Additional ILISP package that defines  selectable buttons for an
; inferior Lisp.
;

;; Old binding for middle mouse button

(defvar ilisp-old-button2-binding nil)

(defvar bridge-handlers)

(add-hook 'bridge-hook
	  '(lambda ()
	     (setq bridge-source-insert nil
		   bridge-destination-insert nil)))
 

(make-variable-buffer-local 'ilisp-select-button-extents)
(defvar ilisp-select-button-extents nil)

(defun ilisp-install-select-buttons ()
  "Install the bridge handler that enables the inferior Lisp to
plot selection buttons."
  (interactive)
; Dosn't work, can't figure out why ... 
;  ;; keep old binding to be used as default
;  (setq  ilisp-old-button2-binding
;         (or ilisp-old-button2-binding
;             (lookup-key ilisp-mode-map 'button2)))
  (define-key ilisp-mode-map 'button2 'ilisp-mouse-select)
  (require 'bridge)
  (install-bridge)
  (setq bridge-handlers
	(cons '("2" . ilisp-select-button-handler) bridge-handlers)))


(defun ilisp-select-button-handler (process input)
  (if input
      (let ((item (read-from-string (substring input 1)))
	    (start (point)) extent)
	(insert (car item))
	(set-marker (process-mark process) (point))
	(setq extent (make-extent start (point)))
	(set-extent-attribute extent 'highlight)
	(set-extent-face extent ilisp-mouse-select-face)
	(setq ilisp-select-button-extents
	      (cons (cons extent (substring input (1+ (cdr item))))
		    ilisp-select-button-extents )))))


(defvar ilisp-mouse-select-face 
  (or (find-face 'ilisp-bold)
      (face-differs-from-default-p (make-face 'ilisp-bold))
      (copy-face 'bold 'ilisp-bold)))


(defun ilisp-mouse-select (event)
  "When executed on a select button, the button action is sent
to the inferior lisp process. Otherwise, the default action for button2 
is run. Should be bound to button2. Takes one Argument: EVENT"

  (interactive "@e") 
  (let* ((point (event-point event))
	 (extent (and point (extent-at point)))
	 link-ref)
    (if  extent
	(progn 
	  (setq link-ref
		(and extent (cdr (assq extent ilisp-select-button-extents))))
	  (if link-ref (ilisp-send link-ref "Button execution:" "select-button" t)
	    (message "No link found.")))
      ;; (funcall ilisp-old-button2-binding event)
      (x-set-point-and-insert-selection event))))










From help-lucid-emacs-request@lucid.com  Thu Jul  9 11:43:41 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA13452; Thu, 9 Jul 92 11:43:41 PDT
Received: by heavens-gate.lucid.com id AA04566g; Thu, 9 Jul 92 11:32:49 PDT
Received: from sun2.nsfnet-relay.ac.uk by heavens-gate.lucid.com id AA04560g; Thu, 9 Jul 92 11:30:29 PDT
Via: uk.ac.edinburgh.cogsci; Thu, 9 Jul 1992 19:39:08 +0100
From: rjc@cogsci.edinburgh.ac.uk
Date: Thu, 9 Jul 92 19:33:12 BST
Message-Id: <13046.9207091833@daiches.cogsci.ed.ac.uk>
Subject: One character extent bug?
To: Lucid emacs help <help-lucid-emacs@lucid.com>
X-Dragon: Oolong

If I understand extents right the following little function should
create an extent containing just point.

	(defun f (p)

	  (interactive "d")

	  (let ((extent (make-extent p (1+ p))))
	    (set-extent-face extent 'highlight))
	  )

So, doing M-x f and typing, say, "fred" should cause fred to be
highlighted. However this doesn't always work. A good way to get it not
to is to do

	C-e RET SPACE SPACE C-B M-x f fred

I'm not sure what the exact circumstances which determine whether or not
it works are, but that sequence, in my *scratch* buffer fails
consistantly.

So, Am I suffering from a terrible misconception?

What I want to do is to set things up so that typed commands will be
inserted in a given face.

      ^_^
     (O O) 
     \_/@@\
      \\~~/ 
        ~~
		- RJC

From help-lucid-emacs-request@lucid.com  Thu Jul  9 12:14:28 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA13608; Thu, 9 Jul 92 12:14:28 PDT
Received: by heavens-gate.lucid.com id AA04695g; Thu, 9 Jul 92 12:06:32 PDT
Received: from watergate.lucid ([192.31.212.117]) by heavens-gate.lucid.com id AA04685g; Thu, 9 Jul 92 12:04:26 PDT
Received: by watergate.lucid (4.1/SMI-4.1)
	id AA00507; Thu, 9 Jul 92 12:12:14 PDT
Date: Thu, 9 Jul 92 12:12:14 PDT
From: eb%watergate@lucid.com (Eric Benson)
Message-Id: <9207091912.AA00507@watergate.lucid>
To: simon%lia.di.epfl.ch@lucid.com (Simon Leinen)
Cc: help-lucid-emacs@lucid.com
Subject: Re: lemacs on DEC 5000/200
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Simon Leinen's message of  9-Jul-92 14:45:15 GMT <SIMON.92Jul9164515@liasg1.epfl.ch>
References: <1992Jul9.131023.10931@nntpd.lkg.dec.com>
	<9207080731.AA29917@Sunburn.Stanford.EDU>
	<SIMON.92Jul9164515@liasg1.epfl.ch>
Reply-To: eb@lucid.com

In message <SIMON.92Jul9164515@liasg1.epfl.ch> Simon Leinen wrote:
> If you are on a terminfo system, adding "termcap.o" to the
> definition of "termcapobj" in [xy]makefile may solve the problem --
> for me it did.  But I think the whole INVISIBLE_TERMINAL_KLUDGE
> could be made more portable (perhaps infinitely so by removal? :-).

Yes, that's a good idea.  At one time, about a year ago, Lemacs was
using the terminal on which it was started as its "initial screen".
This made it impossible to start from a menu or from and Emacs shell
buffer.  Rather than fix the real problem, I made the terminal type
"invisible" with enough termcap capabilities to display an Emacs
window (of course it doesn't actually display anything).  I never
meant for it to last this long.  The real fix is probably quite
simple.

From help-lucid-emacs-request@lucid.com  Thu Jul  9 12:19:51 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA13627; Thu, 9 Jul 92 12:19:51 PDT
Received: by heavens-gate.lucid.com id AA04713g; Thu, 9 Jul 92 12:11:58 PDT
Received: from linus.mitre.org by heavens-gate.lucid.com id AA04702g; Thu, 9 Jul 92 12:08:06 PDT
Return-Path: <guttman@linus.mitre.org>
Received: from circe.mitre.org by linus.mitre.org (5.61/RCF-4S)
	id AA06423; Thu, 9 Jul 92 15:17:16 -0400
Posted-Date: Thu, 09 Jul 92 15:18:56 -0400
Received: by circe.mitre.org (5.61/RCF-4C)
	id AA05537; Thu, 9 Jul 92 15:18:56 -0400
Message-Id: <9207091918.AA05537@circe.mitre.org>
To: help-lucid-emacs@lucid.com
Subject: Different fonts for different modes?  
X-Postal-Address: MITRE, Mail Stop A156 \\ 202 Burlington Rd. \\ Bedford, MA 01730
Date: Thu, 09 Jul 92 15:18:56 -0400
From: guttman@linus.mitre.org

Is there some straightforward way to specify that I want e.g. a particular fixed width
font for lisp mode, but a proportional width font for text mode?  

The highlighting package that Mike Scheidler sent out is nice, but it seems odd
to use extents within buffers when what you really want to do is to make the
whole of a buffer have some face (or all of it, *excluding* some special
extents).

Thanks.  

	Josh


From help-lucid-emacs-request@lucid.com  Thu Jul  9 13:18:38 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA13793; Thu, 9 Jul 92 13:18:38 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA04854g; Thu, 9 Jul 92 13:07:32 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA18699; Thu, 9 Jul 92 16:16:33 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA18693; Thu, 9 Jul 92 16:16:31 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA24588; Thu, 9 Jul 92 16:17:15 -0400
Path: uunet!dtix!darwin.sura.net!udel!louie!udel.edu!neal
From: neal@neal.ctd.comsat.com (Neal Becker)
Newsgroups: alt.lucid-emacs.help
Subject: Re: lucid-emacs on HP
Message-Id: <NEAL.92Jul9160936@neal.ctd.comsat.com>
Date: 9 Jul 92 21:09:36 GMT
References: <3315@sicsun.epfl.ch> <SIMON.92Jul9165630@liasg1.epfl.ch>
Organization: COMSAT Labs
In-Reply-To: simon@lia.di.epfl.ch's message of 9 Jul 92 14:56:30 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

>>>>> On 9 Jul 92 14:56:30 GMT, simon@lia.di.epfl.ch (Simon Leinen) said:

	Claude>       Does anybody had the guts to port lucid-emacs on hpux.
	Claude>    I tried to do it but gave up.

	Simon> Claude, I assume you mean HP-UX *8*.  The main problem on HP-UX 8 is
	Simon> that you have to avoid the dynamic linker; That's why GNU Emacs 18.58
	Simon> split the s-hpux.h file into s-hpux7.h and s-hpux8.h -- you may want
	Simon> to take these over to Lemacs and retry.

I tried it too.  It's not so easy!  There are lots of pitfalls.  Here
are some diffs.  This is only the beginning!  Here are some questions:

1.  Use X11R4 or X11R5?

2.  Use Motif1.1 or Motif1.2?

Notes:  As far as I can tell, X11R5 won't work with Motif1.1  I don't
have Motif1.2.  Do you?  So you don't really have a choice, do you?
You *have* to use X11R4/Motif1.1.  Don't bother unless you get
libXaw.a and libXmu.a for X11R4 first (not provided by HP)

Note:  If you've got the standard HP /usr/include/X11R4 stuff you need
to modify X11/Xos.h.  Emacs depends on -DUSG.  But in X11/Xos.h -DUSG
gives you a bogus definition of timeval!  I added #ifndef __hpux to
fix this.

*** data.c~	Thu Jun 11 22:22:03 1992
--- data.c	Thu Jul  9 12:53:10 1992
***************
*** 21,26 ****
--- 21,27 ----
  #include <stdio.h>		/* For sprintf */
  #include <signal.h>
  
+ #include "puresize.h"
  #include "config.h"
  #include "lisp.h"

*** dispnew.c~	Mon Jun 15 04:31:06 1992
--- dispnew.c	Thu Jul  9 12:15:47 1992
***************
*** 67,74 ****
--- 67,76 ----
  #endif
  
  
+ #ifndef __hpux
  void bzero ();
  void bcopy ();
+ #endif
  
  #include "termchar.h"
  #include "termopts.h"


THIS IS NOT JUST FOR HPUX!  THIS IS A BUG!

*** events.c~	Mon Jun 15 04:29:49 1992
--- events.c	Thu Jul  9 12:35:27 1992
***************
*** 680,686 ****
        return Qnil;
      return Qt;
    case magic_event:
!     return (bcmp (XEVENT (o1)->event.magic, XEVENT (o2)->event.magic,
  		  sizeof (struct magic_data))
  	    ? Qnil : Qt);
  
--- 680,686 ----
        return Qnil;
      return Qt;
    case magic_event:
!     return (bcmp ((char*)&(XEVENT (o1)->event.magic), (char*)&(XEVENT (o2)->event.magic),
  		  sizeof (struct magic_data))
  	    ? Qnil : Qt);
  
*** fileio.c~	Tue Jun  9 00:24:56 1992
--- fileio.c	Thu Jul  9 12:47:00 1992
***************
*** 57,63 ****
  #endif /* HAVE_TIMEVAL */
  #endif /* not NEED_TIME_H */
  
! #ifdef HPUX
  #include <netio.h>
  #include <errnet.h>
  #endif
--- 57,63 ----
  #endif /* HAVE_TIMEVAL */
  #endif /* not NEED_TIME_H */
  
! #ifdef HPUX_NET
  #include <netio.h>
  #include <errnet.h>
  #endif

*** floatfns.c~	Mon Jun 15 00:35:46 1992
--- floatfns.c	Thu Jul  9 12:55:21 1992
***************
*** 469,475 ****
    return num;
  }
  
! #if defined (BSD) || defined (IRIX)
  static void
  float_error (signo)
       int signo;
--- 469,475 ----
    return num;
  }
  
! #if defined (BSD) || defined (IRIX) || defined (__hpux)
  static void
  float_error (signo)
       int signo;

THIS IS NOT JUST HP!  THIS IS A BUG TOO!

*** menubar.c~	Fri Jun 12 23:20:17 1992
--- menubar.c	Thu Jul  9 12:44:10 1992
***************
*** 579,585 ****
       (menu_desc)
       Lisp_Object menu_desc;
  {
!   static menu_id;
  
    struct screen *s = selected_screen;
    char *name = " unnamed popup ";
--- 579,585 ----
       (menu_desc)
       Lisp_Object menu_desc;
  {
!   static int menu_id;
  
    struct screen *s = selected_screen;
    char *name = " unnamed popup ";

*** sysdep.c~	Tue Jun 16 04:34:35 1992
--- sysdep.c	Thu Jul  9 13:53:32 1992
***************
*** 1908,1913 ****
--- 1908,1914 ----
  
  #ifndef NCR486  /* OBE -- defined in libX11.a */
  
+ #ifndef __hpux
  /*
   *	The BSD random(3) returns numbers in the range of
   *	0 to 2e31 - 1.  The USG rand(3C) returns numbers in the
***************
*** 1928,1933 ****
--- 1929,1936 ----
    srand (arg);
  }
  
+ #endif /* __hpux */
+ 
  #endif /* ! NCR486 */
  
  #endif /* USG */
***************
*** 2226,2233 ****
   */
  
  rename (from, to)
!      char *from;
!      char *to;
  {
    if (access (from, 0) == 0)
      {
--- 2229,2236 ----
   */
  
  rename (from, to)
!      const char *from;
!      const char *to;
  {
    if (access (from, 0) == 0)
      {

From help-lucid-emacs-request@lucid.com  Thu Jul  9 13:37:13 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA13918; Thu, 9 Jul 92 13:37:13 PDT
Received: by heavens-gate.lucid.com id AA04916g; Thu, 9 Jul 92 13:29:13 PDT
Received: from watergate.lucid ([192.31.212.117]) by heavens-gate.lucid.com id AA04903g; Thu, 9 Jul 92 13:25:19 PDT
Received: by watergate.lucid (4.1/SMI-4.1)
	id AA00618; Thu, 9 Jul 92 13:33:05 PDT
Date: Thu, 9 Jul 92 13:33:05 PDT
From: eb%watergate@lucid.com (Eric Benson)
Message-Id: <9207092033.AA00618@watergate.lucid>
To: neal@neal.ctd.comsat.com (Neal Becker)
Cc: help-lucid-emacs@lucid.com
Subject: Re: lucid-emacs on HP
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Neal Becker's message of  9-Jul-92 21:09:36 GMT <NEAL.92Jul9160936@neal.ctd.comsat.com>
References: <3315@sicsun.epfl.ch>
	<NEAL.92Jul9160936@neal.ctd.comsat.com>
	<SIMON.92Jul9165630@liasg1.epfl.ch>
Reply-To: eb@lucid.com

Remember, you don't *have* to use Motif at all.  You can undefine both
LWLIB_USES_MOTIF and LWLIB_USES_OLIT, and Lucid's own widgets will be
used.

(Unless that doesn't work on HP, in which case I'm all wet and you
should tell me so.)

From help-lucid-emacs-request@lucid.com  Thu Jul  9 13:42:31 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA13951; Thu, 9 Jul 92 13:42:31 PDT
Received: by heavens-gate.lucid.com id AA04949g; Thu, 9 Jul 92 13:34:16 PDT
Received: from watergate.lucid ([192.31.212.117]) by heavens-gate.lucid.com id AA04931g; Thu, 9 Jul 92 13:31:25 PDT
Received: by watergate.lucid (4.1/SMI-4.1)
	id AA00628; Thu, 9 Jul 92 13:40:41 PDT
Date: Thu, 9 Jul 92 13:40:41 PDT
From: eb%watergate@lucid.com (Eric Benson)
Message-Id: <9207092040.AA00628@watergate.lucid>
To: help-lucid-emacs@lucid.com, neal@neal.ctd.comsat.com (Neal Becker)
Subject: Re: lucid-emacs on HP
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Eric Benson's message of Thu 9-Jul-92 13:33:05 PDT <9207092033.AA00618@watergate.lucid>
References: <3315@sicsun.epfl.ch>
	<9207092033.AA00618@watergate.lucid>
	<NEAL.92Jul9160936@neal.ctd.comsat.com>
	<SIMON.92Jul9165630@liasg1.epfl.ch>
Reply-To: eb@lucid.com

In message <9207092033.AA00618@watergate.lucid> Eric Benson wrote:
>
> Remember, you don't *have* to use Motif at all.  You can undefine
> both LWLIB_USES_MOTIF and LWLIB_USES_OLIT, and Lucid's own widgets
> will be used.
And of course you need to define USE_LUCID (and not define USE_MOTIF
or USE_OLIT) in lwlib.

From help-lucid-emacs-request@lucid.com  Thu Jul  9 13:44:47 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA13962; Thu, 9 Jul 92 13:44:47 PDT
Received: by heavens-gate.lucid.com id AA04964g; Thu, 9 Jul 92 13:37:03 PDT
Received: from neal.ctd.comsat.com by heavens-gate.lucid.com id AA04951g; Thu, 9 Jul 92 13:34:47 PDT
Received: by neal.ctd.comsat.com (/\==/\ Smail3.1.25.1 #25.17)
	id <m0m65LG-0003WmC@neal.ctd.comsat.com>; Thu, 9 Jul 92 16:43 EDT
Message-Id: <m0m65LG-0003WmC@neal.ctd.comsat.com>
Date: Thu, 9 Jul 92 16:43 EDT
From: neal@ctd.comsat.com (Neal Becker)
To: eb@lucid.com
Cc: help-lucid-emacs@lucid.com
In-Reply-To: Eric Benson's message of Thu, 9 Jul 92 13:33:05 PDT <9207092033.AA00618@watergate.lucid>
Subject: lucid-emacs on HP

>>>>> On Thu, 9 Jul 92 13:33:05 PDT, eb%watergate@lucid.com (Eric Benson) said:

	Eric> Remember, you don't *have* to use Motif at all.  You can undefine both
	Eric> LWLIB_USES_MOTIF and LWLIB_USES_OLIT, and Lucid's own widgets will be
	Eric> used.

	Eric> (Unless that doesn't work on HP, in which case I'm all wet and you
	Eric> should tell me so.)

I haven't tried this yet.  There's still more problems though.  I got
everything to compile, but not link yet.  BTW, I used gcc-2.2.2.  If
this works I might try cc.

------------------------------------------
ld   -a archive -L/usr/lib/X11R4  -a archive -L/usr/lib/X11R4 -L/usr/lib/Motif1.1 -L. -L./lwlib   -o temacs pre-crt0.o /lib/crt0.o dispnew.o screen.o scroll.o xdisp.o window.o events.o event-alloc.o event-stream.o term.o cm.o xterm.o xfns.o xselect.o xutils.o event-Xt.o menubar.o emacs.o keyboard.o macros.o keymap.o sysdep.o buffer.o filelock.o insdel.o marker.o minibuf.o fileio.o dired.o filemode.o cmds.o casetab.o casefiddle.o indent.o search.o regex.o undo.o alloc.o data.o doc.o editfns.o callint.o eval.o floatfns.o fns.o print.o lread.o abbrev.o syntax.o unexhp9k800.o mocklisp.o bytecode.o process.o callproc.o environ.o doprnt.o extents.o faces.o elhash.o hash.o realpath.o terminfo.o lastfile.o gmalloc.o vm-limit.o alloca.o ScreenWidget.o ColumnWidget.o EmacsShell.o   /usr/local/lib/gcc-lib/hppa1.1-hpux/2.2.2/libgcc.a -llw -lXm  -lXaw -lXext -lXt -lXmu -lX11     -lcurses -lm -lc
ld: Unsatisfied symbols:
   logb (code)
   asinh (code)
   acosh (code)
   __main (code)
   rint (code)
   cbrt (code)
   expm1 (code)
   getpagesize (code)
   remainder (code)
   atanh (code)
   log1p (code)

---------------------------------------

I haven't found a way to convince gmalloc.c not to use getpagesize
yet.  I'm not sure what to do about logb, asinh, ...  I know what to
do about __main, need /usr/local/lib/...../libgcc.a.

Getting there...

From help-lucid-emacs-request@lucid.com  Thu Jul  9 14:00:42 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA13988; Thu, 9 Jul 92 14:00:42 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA05027g; Thu, 9 Jul 92 13:52:54 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA23210; Thu, 9 Jul 92 17:02:05 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA23203; Thu, 9 Jul 92 17:02:03 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA24901; Thu, 9 Jul 92 17:02:49 -0400
Path: uunet!decwrl!infopiz!lupine!mellon
Newsgroups: alt.lucid-emacs.help
Subject: Re: lemacs on DEC 5000/200
Message-Id: <MELLON.92Jul9104914@pepper.ncd.com>
From: mellon@ncd.com (Ted Lemon)
Date: 9 Jul 92 17:49:14 GMT
References: <9207080731.AA29917@Sunburn.Stanford.EDU>
Organization: Network Computing Devices, Inc.
In-Reply-To: me@Sunburn.Stanford.EDU's message of 8 Jul 92 07:31:05 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


I was able to get 19.1 running on a DECstation without too much ado.
The process stuff doesn't work, though - I haven't tried to debug it
yet.   The big problem is that lemacs apparently depends on something
called ``true names'', which involve a SunOS system call that's not
available on DECstations, so all that code has to be removed in order
for emacs to build, and once it's built, certain things don't work,
because they depend on true names.   Since I don't know exactly what
true names are, I haven't tried to solve this problem either.

			       _MelloN_
--
mellon@ncd.com
Member, League for Programming Freedom | To learn how software patents could
cost you your right to program, contact the LPF - league@prep.ai.mit.edu

From help-lucid-emacs-request@lucid.com  Thu Jul  9 14:09:21 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA14018; Thu, 9 Jul 92 14:09:21 PDT
Received: by heavens-gate.lucid.com id AA05061g; Thu, 9 Jul 92 14:01:26 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA05041g; Thu, 9 Jul 92 13:57:33 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA01388; Thu, 9 Jul 92 14:06:51 PDT
Date: Thu, 9 Jul 92 14:06:51 PDT
Message-Id: <9207092106.AA01388@thalidomide.lucid>
X-Windows: Putting new limits on productivity.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: mellon@ncd.com (Ted Lemon)
Cc: help-lucid-emacs@lucid.com
Subject: Re: lemacs on DEC 5000/200
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Ted Lemon's message of  9-Jul-92 17:49:14 GMT <MELLON.92Jul9104914@pepper.ncd.com>
References: <9207080731.AA29917@Sunburn.Stanford.EDU>
	<MELLON.92Jul9104914@pepper.ncd.com>

In message <MELLON.92Jul9104914@pepper.ncd.com> Ted Lemon wrote:
>
> The big problem is that lemacs apparently depends on something
> called ``true names'', which involve a SunOS system call that's not
> available on DECstations

This is fixed in 19.2.  If you are trying to build 19.1, stop, and get 19.2
from labrea.stanford.edu instead.  Several annoying portability problems were
fixed.
	-- Jamie

From help-lucid-emacs-request@lucid.com  Fri Jul 10 01:43:04 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA15612; Fri, 10 Jul 92 01:43:04 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA06633g; Fri, 10 Jul 92 01:31:31 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA19420; Fri, 10 Jul 92 04:40:38 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA19396; Fri, 10 Jul 92 04:40:31 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA29814; Fri, 10 Jul 92 04:41:15 -0400
Path: uunet!think.com!sdd.hp.com!nigel.msen.com!yale.edu!jvnc.net!darwin.sura.net!Sirius.dfn.de!chx400!sicsun!slhp1.epfl.ch!lecom
From: lecom%slhp1.epfl.ch@lucid.com (Claude Lecommandeur)
Newsgroups: alt.lucid-emacs.help
Subject: Re: lucid-emacs on HP
Message-Id: <3323@sicsun.epfl.ch>
Date: 10 Jul 92 07:20:38 GMT
References: <3315@sicsun.epfl.ch> <SIMON.92Jul9165630@liasg1.epfl.ch> <NEAL.92Jul9160936@neal.ctd.comsat.com>
Organization: Ecole Polytechnique Federale de Lausanne
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <NEAL.92Jul9160936@neal.ctd.comsat.com>, neal@neal.ctd.comsat.com (Neal Becker) writes:
|> >>>>> On 9 Jul 92 14:56:30 GMT, simon@lia.di.epfl.ch (Simon Leinen) said:
|> 
|> 	Claude>       Does anybody had the guts to port lucid-emacs on hpux.
|> 	Claude>    I tried to do it but gave up.
|> 
|> 	Simon> Claude, I assume you mean HP-UX *8*.  The main problem on HP-UX 8 is
|> 	Simon> that you have to avoid the dynamic linker; That's why GNU Emacs 18.58
|> 	Simon> split the s-hpux.h file into s-hpux7.h and s-hpux8.h -- you may want
|> 	Simon> to take these over to Lemacs and retry.
|> 
|> I tried it too.  It's not so easy!  There are lots of pitfalls.  Here
|> are some diffs.  This is only the beginning!  Here are some questions:
|> 
|> 1.  Use X11R4 or X11R5?
|> 
|> 2.  Use Motif1.1 or Motif1.2?
|> 
|> Notes:  As far as I can tell, X11R5 won't work with Motif1.1  I don't
|> have Motif1.2.  Do you?  So you don't really have a choice, do you?
|> You *have* to use X11R4/Motif1.1.  Don't bother unless you get
|> libXaw.a and libXmu.a for X11R4 first (not provided by HP)
|> 
|> Note:  If you've got the standard HP /usr/include/X11R4 stuff you need
|> to modify X11/Xos.h.  Emacs depends on -DUSG.  But in X11/Xos.h -DUSG
|> gives you a bogus definition of timeval!  I added #ifndef __hpux to
|> fix this.
.....

   Yes, i already answered to Simon that it was not that easy. Everything
looks like the developpement of lucid-emacs started from a portable source
but all further developpement was made on SUN ignoring completely any other
architecture.

   I used the only available configuration on HP : X11R4 + Motif1.1, i have
not yet Motif1.2 so X11R5 is not usable.

    Thanks for the diffs, if complete the port, i would be very glad to know
the outcome.

-- 


                    Claude Lecommandeur
                    Service Informatique Central
                    Ecole Polytechnique Federale de Lausanne
                    1015 LAUSANNE (SWITZERLAND)
                    E-Mail : lecom@sic.epfl.ch
                    Tel : (41 21) 693-22-97

From help-lucid-emacs-request@lucid.com  Fri Jul 10 03:47:36 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA16339; Fri, 10 Jul 92 03:47:36 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA06834g; Fri, 10 Jul 92 03:39:43 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA12700; Fri, 10 Jul 92 06:48:57 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA12694; Fri, 10 Jul 92 06:48:55 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA00822; Fri, 10 Jul 92 06:49:46 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!cs.utexas.edu!sdd.hp.com!caen!destroyer!ubc-cs!fornax!bremner
From: bremner%cs.sfu.ca@lucid.com (David Bremner)
Subject: Region activated after fill-paragraph
Message-Id: <1992Jul9.204331.728@cs.sfu.ca>
Summary: I hate it.
Reply-To: bremner%cs.sfu.ca@lucid.com (David Bremner)
Organization: Simon Fraser University
Date: Thu, 9 Jul 1992 20:43:31 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I suppose this could be considered a feature, but it's driving me nuts:
with zmacs regions on (which are great!), every time I fill a paragraph, the
region gets activated.  

Can I fix this without redumping emacs?  I'm using the binaries from
labrea, so redumping might be problematic.

	
-- 
bremner@cs.sfu.ca 				          ubc-cs!fornax!bremner

From help-lucid-emacs-request@lucid.com  Fri Jul 10 03:59:40 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA16448; Fri, 10 Jul 92 03:59:40 PDT
Received: by heavens-gate.lucid.com id AA06861g; Fri, 10 Jul 92 03:51:52 PDT
Received: from sun2.nsfnet-relay.ac.uk by heavens-gate.lucid.com id AA06857g; Fri, 10 Jul 92 03:51:16 PDT
Via: uk.ac.city.cs; Fri, 10 Jul 1992 12:00:05 +0100
Received: from Messages.8.5.N.CUILIB.3.45.SNAP.NOT.LINKED.barney.cs.city.ac.uk.sun4.40 
          via MS.5.6.barney.cs.city.ac.uk.sun4_40;
          Fri, 10 Jul 1992 12:02:43 +0100 (BST)
Message-Id: <EeLKtHq__5g8QNvZ4N@cs.city.ac.uk>
Date: Fri, 10 Jul 1992 12:02:43 +0100 (BST)
From: Nick Williams <njw@cs.city.ac.uk>
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
To: help-lucid-emacs@lucid.com
Subject: Variable width fonts

Since Lucid has all this nice Xwindow support, I decided to give
variable width fonts a go.

Lucid appears to be able to cope with variable fonts... almost.

There seem to be two problems:
1)  the redrawing strategy of emacs when it decides to draw the new
screen image by removing the previous characters (algorithm only works
for fixed width fonts).  I believe this happens now and again, as I keep
seeing "old text" on the screen.

2) Occasionally, when moving around/selecting an area, a piece of text
further up/down the screen, which is nowhere near where the cursor
currently is working, starts shifting around.  It's very weird to
explain, but in effect, random lines seem to shift around their position
(as though tabs are toggling between 1character wide and 4characters
wide or something).

Hohum

Any ideas?

Should I just forget the idea of variable fonts?

Nick
Nick Williams                                   E-mail: njw@cs.city.ac.uk
Systems Architecture Research Centre,	        (MIME and ATK accepted)
City University, London, UK.		        Tel: +44 71 477 8551,
						Fax: +44 71 477 8587

From help-lucid-emacs-request@lucid.com  Fri Jul 10 08:05:41 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA17056; Fri, 10 Jul 92 08:05:41 PDT
Received: by heavens-gate.lucid.com id AA07303g; Fri, 10 Jul 92 07:57:16 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA07299g; Fri, 10 Jul 92 07:56:29 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA02431; Fri, 10 Jul 92 08:05:45 PDT
Date: Fri, 10 Jul 92 08:05:45 PDT
Message-Id: <9207101505.AA02431@thalidomide.lucid>
X-Windows: It could happen to you.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: Nick Williams <njw@cs.city.ac.uk>
Cc: help-lucid-emacs@lucid.com
Subject: Re: Variable width fonts
In-Reply-To: Nick Williams's message of Fri 10-Jul-92 12:02:43 +0100 <EeLKtHq__5g8QNvZ4N@cs.city.ac.uk>
References: <EeLKtHq__5g8QNvZ4N@cs.city.ac.uk>

In message <EeLKtHq__5g8QNvZ4N@cs.city.ac.uk> Nick Williams wrote:
>
> Should I just forget the idea of variable fonts?

Probably a good plan for now.  I'm doing some redisplay hacking now, so this
will be improving.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Fri Jul 10 20:59:29 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA19120; Fri, 10 Jul 92 20:59:29 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA09457g; Fri, 10 Jul 92 20:48:17 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA19376; Fri, 10 Jul 92 23:57:32 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA19370; Fri, 10 Jul 92 23:57:31 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA16817; Fri, 10 Jul 92 23:58:30 -0400
Path: uunet!cs.utexas.edu!rutgers!micro-heart-of-gold.mit.edu!bu.edu!nntp-read!jbw
From: jbw@bigbird.bu.edu (Joe Wells)
Newsgroups: alt.lucid-emacs.help
Subject: Re: lemacs on DEC 5000/200
Message-Id: <JBW.92Jul10235147@bigbird.bu.edu>
Date: 11 Jul 92 04:51:47 GMT
References: <1992Jul9.131023.10931@nntpd.lkg.dec.com>
 <9207080731.AA29917@Sunburn.Stanford.EDU> <SIMON.92Jul9164515@liasg1.epfl.ch>
 <9207091912.AA00507@watergate.lucid>
Organization: Boston University Computer Science Department
In-Reply-To: eb%watergate@lucid.com's message of 9 Jul 92 19:12:14 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <9207091912.AA00507@watergate.lucid> eb%watergate@lucid.com (Eric Benson) writes:

   At one time, about a year ago, Lemacs was using the terminal on which
   it was started as its "initial screen".

Cool!  Can you add other ttys as screens too?  I'd love to be able to dial
in from home and send Emacs a message saying "attach a screen to ttyp8".

-- 
Joe Wells <jbw@cs.bu.edu>

Member of the League for Programming Freedom --- send e-mail for details

From help-lucid-emacs-request@lucid.com  Sat Jul 11 01:48:29 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA19723; Sat, 11 Jul 92 01:48:29 PDT
Received: by heavens-gate.lucid.com id AA09912g; Sat, 11 Jul 92 01:37:29 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA09908g; Sat, 11 Jul 92 01:37:21 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA03696; Sat, 11 Jul 92 01:43:48 PDT
Date: Sat, 11 Jul 92 01:43:48 PDT
Message-Id: <9207110843.AA03696@thalidomide.lucid>
X-Windows: Let it get in YOUR way.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: jbw@bigbird.bu.edu (Joe Wells)
Cc: help-lucid-emacs@lucid.com
Subject: Re: lemacs on DEC 5000/200
In-Reply-To: Joe Wells's message of  11-Jul-92 04:51:47 GMT <JBW.92Jul10235147@bigbird.bu.edu>
References: <1992Jul9.131023.10931@nntpd.lkg.dec.com>
	<9207080731.AA29917@Sunburn.Stanford.EDU>
	<9207091912.AA00507@watergate.lucid>
	<JBW.92Jul10235147@bigbird.bu.edu>
	<SIMON.92Jul9164515@liasg1.epfl.ch>

In message <JBW.92Jul10235147@bigbird.bu.edu> Joe Wells wrote:
>
> In article <9207091912.AA00507@watergate.lucid> eb%watergate@lucid.com (Eric
> Benson) writes:
> 
>    At one time, about a year ago, Lemacs was using the terminal on which
>    it was started as its "initial screen".
> 
> Cool!  Can you add other ttys as screens too?  I'd love to be able to dial
> in from home and send Emacs a message saying "attach a screen to ttyp8".

Actually it wasn't cool at all, in that it didn't let you do anything useful.
It made the controlling terminal be a screen, echo area and all, and then
closed that screen and opened an X window.  You couldn't use both at once.
But we eventually hope to make it possible for one emacs process to open
"screens" on different displays and/or ttys.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Sat Jul 11 19:09:23 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA21938; Sat, 11 Jul 92 19:09:23 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA10865g; Sat, 11 Jul 92 18:58:25 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA04850; Sat, 11 Jul 92 22:07:41 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA04844; Sat, 11 Jul 92 22:07:40 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA26560; Sat, 11 Jul 92 22:08:50 -0400
Path: uunet!spool.mu.edu!agate!stanford.edu!leland.Stanford.EDU!news
From: youngl@Networking.Stanford.EDU (Young S. Lee)
Newsgroups: alt.lucid-emacs.help
Subject: FAQ
Message-Id: <1992Jul12.020641.7926@leland.Stanford.EDU>
Date: 12 Jul 92 02:06:41 GMT
Reply-To: youngl@Networking.Stanford.EDU
Organization: DSO, Stanford University
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Hi,

   Is there an FAQ for this group?  If so, where can I get it?

- Young

From help-lucid-emacs-request@lucid.com  Sat Jul 11 19:15:56 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA21948; Sat, 11 Jul 92 19:15:56 PDT
Received: by heavens-gate.lucid.com id AA10878g; Sat, 11 Jul 92 19:08:11 PDT
Received: from mwunix.mitre.org by heavens-gate.lucid.com id AA10874g; Sat, 11 Jul 92 19:08:01 PDT
Return-Path: <bcotton@sergei.mitre.org>
Received: from [128.29.111.220] by mwunix.mitre.org (5.61/SMI-2.2)
	id AA07276; Sat, 11 Jul 92 22:15:00 -0400
Received: by sergei.mitre.org (4.1/SMI-4.1)
	id AA00923; Sat, 11 Jul 92 22:16:46 EDT
Date: Sat, 11 Jul 92 22:16:46 EDT
From: bcotton@sergei.mitre.org (Robert T. Cotton)
Message-Id: <9207120216.AA00923@sergei.mitre.org>
To: help-lucid-emacs@lucid.com
Subject: Trying to write x-find-file.


Well I have been following the progress of lemacs since the day it came
out, and being an avid epoch addict I was excited to see (hopefully)
something better come along.  But the only thing that was really holding
me back from switching was source code hilightining.  Thanks to Mike Scheidler
for his hilit package I have now made the transition.  

I am a novice elisp hacker at best, and am trying to figure out how to
write two functions, x-find-file, and x-find-buffer.  Doing the
obivous, find file/buffer in another screen (creating if necessary).
Poking around the NEWS file and the elisp code I cannot figure out
what needs to be done.  I have looked at display-buffer,
get-screen-for-buffer, and x-create-screen but to no avail.
Could someone point me in the right direction?

Thanks for your time,
Bob Cotton
bcotton@cyclone.mitre.org

P.S.  (Guys at Lucid, I like what I see!!)

From help-lucid-emacs-request@lucid.com  Mon Jul 13 13:52:31 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA27807; Mon, 13 Jul 92 13:52:31 PDT
Received: by heavens-gate.lucid.com id AA14568g; Mon, 13 Jul 92 13:37:08 PDT
Received: from mwunix.mitre.org by heavens-gate.lucid.com id AA14557g; Mon, 13 Jul 92 13:34:44 PDT
Return-Path: <bcotton@sergei.mitre.org>
Received: from sergei.mitre.org by mwunix.mitre.org (5.61/SMI-2.2)
	id AA27947; Mon, 13 Jul 92 16:41:20 -0400
Received: by sergei.mitre.org (4.1/SMI-4.1)
	id AA01080; Mon, 13 Jul 92 16:43:06 EDT
Date: Mon, 13 Jul 92 16:43:06 EDT
From: bcotton@sergei.mitre.org (Robert T. Cotton)
Message-Id: <9207132043.AA01080@sergei.mitre.org>
To: Hans.Muller@Eng.Sun.COM (Hans Muller)
Cc: bcotton@sergei.mitre.org, help-lucid-emacs@lucid.com
Subject: Re: Switched from Epoch to Lucid Emacs?
In-Reply-To: <9207131607.AA17671@cumulus.Eng.Sun.COM>
References: <9207131607.AA17671@cumulus.Eng.Sun.COM>

Hans Muller writes:
 > 
 > We're considering making a committment to Epoch or Lucid emacs and I
 > was curious about why you decided to make the switch - beyond the fact
 > that the hilit package makes the two comparable.  Are there things
 > about Lucid emacs you prefer over Epoch?  Any thoughts you have on the
 > subject would be appreciated.
 > 
 > Thanks,
 > Hans Muller

Hans,

I made the switch from emacs 18.57 to epoch 3.2 a while back, the
biggest reason being the multiple screens from one process.  Having
the ability to edit multiple buffers of text, and have more than one
on the display at once was very important.  One other consideration in
making the switch was region hilighting via a mouse drag.  As more
people started writing code for epoch, features like displaying a
filename at the point in another screen, man pages in another screen
with hyper-text like See Also sections, a nifty info-mode and so on
became part of my .emacs.  Epoch gave the the x-support that seemed
intuitive to have in this environment.  One the source code hilighting
came out, I was hooked.  I cannot live without it.  It is the one
thing that kept me from moving to lemacs sooner.  The reason I wanted
to stop using Epoch was it has some intermittent bugs, like spontaneous
quitting, killing random xterms when it did quit, and just an overall
level of unstableness, not unusable, just annoying.

Lemacs probably has a similar level of annoyance, but it also has some
very nice features.  I like the menubar (alot).  I was using the bam
package (I forgot by whom) when I was using epoch. It gave me the same
functionality the the menu bar in lemacs does.  The hilighting package
in several time faster under lemacs than under epoch (although they
are different packages, hilit vs brightlight, I get the same
functionality at 1/4 the cost) The interface into x with lemacs is
much cleaner, I get, out of the box, functionality that one would
expect in an x-based editor that would take several packages under
epoch.  Things like double and triple clicks for word and line
hilighting and the menubar.  Although I am not an elisp programmer,
the overall interface to lemacs is much cleaner than with epoch.  It
makes (sorry guys) epoch look like a hack.

Just my $.02.

Hope this helps,
Bob 

From help-lucid-emacs-request@lucid.com  Tue Jul 14 07:49:28 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA00507; Tue, 14 Jul 92 07:49:28 PDT
Received: by heavens-gate.lucid.com id AA16867g; Tue, 14 Jul 92 07:35:29 PDT
Received: from amil.co.il by heavens-gate.lucid.com id AA16860g; Tue, 14 Jul 92 07:34:28 PDT
Received: from ipc8.AMIL ([192.86.90.18]) by amil.co.il (4.1/AMIL-M2)
	id AA02018; Tue, 14 Jul 92 17:43:12 IDT
Date: Tue, 14 Jul 92 17:43:12 IDT
From: danny@amil.co.il (Danny Bar-Dov)
Message-Id: <9207141443.AA02018@amil.co.il>
Received: by ipc8.AMIL (4.1/SMI-4.1)
	id AA00264; Tue, 14 Jul 92 17:43:02 IDT
To: help-lucid-emacs@lucid.com
Subject: shell mode

I am in a great need for bourne-shell & c-shell modes.

Does anybody have such mode ?

could someone propagate this question to some other emacs
mailing lists ? (or give me some mail addresses I could ask )

Thanks
Danny.

--

---------------------
Dan Bar Dov

Applied Materials (Israel)

Email:        danny@amil.co.il
Phone: office 972-3-499573
       home   972-3-5469625
TimeZone:     GMT+2

From help-lucid-emacs-request@lucid.com  Tue Jul 14 09:04:11 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA00744; Tue, 14 Jul 92 09:04:11 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA17101g; Tue, 14 Jul 92 08:56:17 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA20152; Tue, 14 Jul 92 12:05:32 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA20146; Tue, 14 Jul 92 12:05:27 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA24130; Tue, 14 Jul 92 12:05:45 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!cs.utexas.edu!torn!cunews!cunews!knight
From: knight%mrco.carleton.ca@lucid.com (Alan Knight)
Subject: lemacs on SGI?
Message-Id: <knight.711129846@cunews>
Keywords: sgi, silicon graphics, lemacs, lucid
Reply-To: knight%mrco.carleton.ca@lucid.com (Alan Knight)
Organization: Carleton University
Date: Tue, 14 Jul 1992 16:04:06 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


First of all, thanks to the people at Lucid for producing lemacs. I'm
very impressed, and am working on getting the people not already
committed to an editor to standardize on it. This would be easier if
it also ran on SGI's. 

Does anyone have lemacs up and running on SGI machines (IRIX 4.??). 

Thanks, 
-- 
 Alan Knight  knight@mrco.carleton.ca  +1 613 788 2600x5783   Join
 Dept. of Mechanical and Aerospace Engineering                the
 Carleton University, Ottawa, Ontario, Canada, K1S 5B6        LPF


From help-lucid-emacs-request@lucid.com  Tue Jul 14 09:22:42 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA00802; Tue, 14 Jul 92 09:22:42 PDT
Received: by heavens-gate.lucid.com id AA17148g; Tue, 14 Jul 92 09:11:23 PDT
Message-Id: <9207141611.AA17148@lucid.com>
Received: from att.att.com (att-out.att.com) by heavens-gate.lucid.com id AA17144g; Tue, 14 Jul 92 09:11:09 PDT
From: gfe@cbfpa.att.com
Date: Tue, 14 Jul 92 11:44 EDT
To: cblpf!att!lucid.com!help-lucid-emacs-request (Danny Bar-Dov), gfe@cblpf,
        help-lucid-emacs@lucid.com
Subject: Re: shell mode

Yes.

I have created a sh-mode. I posted a prototype to gnu.emacs.sources
some time in June. Since that time I have received loads of feedback
and have made considerable enhancements to it. IMHO sh-mode could be
modified to support csh control constructs. It is simply a matter of
mucking with some regular expressions.

Now for the rub. I have been working with my company esquire to have AT&T
release ownership to me so that I can _legally_ give it away.

If you want, contact me directly for further information.


+----------------------------------+---------------------------------------+
| Gary Ellison, AT&T Bell Labs.,   | "Thats a my partner. He no speak.     |  
|  gfe@cbfpa.att.com,614/860-2378, |  He dumber than a dog." Chico Marx    |
+----------------------------------+---------------------------------------+




From help-lucid-emacs-request@lucid.com  Tue Jul 14 10:42:12 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01032; Tue, 14 Jul 92 10:42:12 PDT
Received: by heavens-gate.lucid.com id AA17467g; Tue, 14 Jul 92 10:33:53 PDT
Received: from data.ctd.comsat.com by heavens-gate.lucid.com id AA17459g; Tue, 14 Jul 92 10:32:58 PDT
Received: by data.ctd.comsat.com (/\==/\ Smail3.1.25.1 #25.16)
	id <m0m7qtF-0008yqC@data.ctd.comsat.com>; Tue, 14 Jul 92 13:42 EDT
Message-Id: <m0m7qtF-0008yqC@data.ctd.comsat.com>
Date: Tue, 14 Jul 92 13:42 EDT
From: neal@ctd.comsat.com (Neal Becker)
To: help-lucid-emacs@lucid.com
Subject: compatible .emacs file? 

I hope this isn't a FAQ, but how can I make a function (in .emacs)
conditional on lemacs or emacs version >= 19?  I'm a rank novice with
emacs lisp.

Thanks

From help-lucid-emacs-request@lucid.com  Tue Jul 14 12:15:59 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01337; Tue, 14 Jul 92 12:15:59 PDT
Received: by heavens-gate.lucid.com id AA17850g; Tue, 14 Jul 92 12:07:38 PDT
Message-Id: <9207141907.AA17850@lucid.com>
Received: from att.att.com (att-out.att.com) by heavens-gate.lucid.com id AA17846g; Tue, 14 Jul 92 12:07:28 PDT
From: gfe@cbfpa.att.com
Date: Tue, 14 Jul 92 14:12 EDT
To: cblpf!att!lucid.com!help-lucid-emacs-request (Neal Becker),
        help-lucid-emacs@lucid.com
Subject: Re: compatible .emacs file?
Received: from cbfpa by att.att.com; Tue, 14 Jul 1992 15:16 EDT
Content-Type: text
Content-Length: 2212

Here is a piece of my .emacs file.

(if (string-match "^18\\." emacs-version)
    (progn
      (global-unset-key "\e[")
      (define-key global-map "\e[214z" 'beginning-of-buffer) ;;; R7 Home    1
      (define-key global-map "\e[220z" 'end-of-buffer)       ;;; R13 End
      (define-key global-map "\e[216z" 'scroll-down)         ;;; R9 PgUp
      (define-key global-map "\e[222z" 'scroll-up)           ;;; R15 PgDn
      (define-key global-map "\e[195z" 'undo)                ;;; L4 Undo
      (define-key global-map "\e[197z" 'copy-region-as-kill) ;;; L6 Copy
      (define-key global-map "\e[199z" 'yank)                ;;; L8 Paste
      (define-key global-map "\e[201z" 'kill-region)         ;;; L10 Cut
      (define-key global-map "\e[-1z" 'help-command)         ;;; Help
      (define-key global-map "\e[200z" 'isearch-forward)     ;;; Find
      ) ;; progn
  (progn  ; Assume lemacs 19
    (define-key global-map 'f27 'beginning-of-buffer)       ;;; Home
    (define-key global-map 'r13 'end-of-buffer)             ;;; End
    (define-key global-map 'f35 'scroll-up)                 ;;; PgDn
    (define-key global-map 'f29 'scroll-down)               ;;; PgUp
    (define-key global-map 'f14 'undo)                      ;;; Undo
    (define-key global-map 'f16 'kill-ring-save)            ;;; Copy
    (define-key global-map 'f18 'yank)                      ;;; Paste
    (define-key global-map 'f20 'kill-region)               ;;; Cut
    (define-key global-map 'help 'help-command)             ;;; Help
    (define-key global-map 'f19 'isearch-forward)           ;;; Find
    (define-key global-map '(control right) 'forward-word)  ;;; \C-right
    (define-key global-map '(control left) 'backward-word)  ;;; \C-right
    (define-key global-map '(control down) 'other-window)   ;;; \C-down
    (define-key global-map '(control f35) 'scroll-other-window)  ;;; \C-right
    ) ;; progn
  )

+----------------------------------+---------------------------------------+
| Gary Ellison, AT&T Bell Labs.,   | "Love flies out the door when money   |  
|  gfe@cbfpa.att.com,614/860-2378, |  comes innuendo"   Groucho Marx       |
+----------------------------------+---------------------------------------+

From help-lucid-emacs-request@lucid.com  Tue Jul 14 12:18:49 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01355; Tue, 14 Jul 92 12:18:49 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA17863g; Tue, 14 Jul 92 12:10:50 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA04496; Tue, 14 Jul 92 15:20:11 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA04488; Tue, 14 Jul 92 15:20:10 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA24871; Tue, 14 Jul 92 15:20:31 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!zaphod.mps.ohio-state.edu!cs.utexas.edu!torn!cunews!cunews!knight
From: knight%mrco.carleton.ca@lucid.com (Alan Knight)
Subject: Search for next match
Message-Id: <knight.711141428@cunews>
Reply-To: knight%mrco.carleton.ca@lucid.com (Alan Knight)
Organization: Carleton University
Date: Tue, 14 Jul 1992 19:17:08 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I'd like to be able to have an lemacs menu with "find" and "find next"
entries. I'd also like to be able to have the "find" key on the sun
keyboard act like Ctrl-S.  The first part, is easy, I just bind 
one or both of these to isearch-forward. Finding the next occurence
does not seem so simple.  From my reading, it appears that Ctrl-S is
treated specially during an i-search, and although I could replace it
with another key, I can't find a way of setting up multiple ways of
invoking it. 

Thanks, 
-- 
 Alan Knight  knight@mrco.carleton.ca  +1 613 788 2600x5783   Join
 Dept. of Mechanical and Aerospace Engineering                the
 Carleton University, Ottawa, Ontario, Canada, K1S 5B6        LPF


From help-lucid-emacs-request@lucid.com  Tue Jul 14 12:28:29 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01417; Tue, 14 Jul 92 12:28:29 PDT
Received: by heavens-gate.lucid.com id AA17902g; Tue, 14 Jul 92 12:20:28 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA17897g; Tue, 14 Jul 92 12:20:17 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA06209; Tue, 14 Jul 92 12:29:44 PDT
Date: Tue, 14 Jul 92 12:29:44 PDT
Message-Id: <9207141929.AA06209@thalidomide.lucid>
X-Windows: Complex nonsolutions to simple nonproblems.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: knight%mrco.carleton.ca@lucid.com (Alan Knight)
Cc: help-lucid-emacs@lucid.com
Subject: Re: Search for next match
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Alan Knight's message of Tue 14-Jul-92 19:17:08 GMT <knight.711141428@cunews>
References: <knight.711141428@cunews>

In message <knight.711141428@cunews> Alan Knight wrote:
>
> From my reading, it appears that Ctrl-S is treated specially during
> an i-search, and although I could replace it with another key, I 
> can't find a way of setting up multiple ways of invoking it. 

Right, isearch is a mess.  The best solution is probably to get 
Dan LaLiberte's isearch-mode working in lemacs.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Tue Jul 14 12:53:43 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01511; Tue, 14 Jul 92 12:53:43 PDT
Received: by heavens-gate.lucid.com id AA17992g; Tue, 14 Jul 92 12:45:33 PDT
Received: from newton.ncsa.uiuc.edu by heavens-gate.lucid.com id AA17983g; Tue, 14 Jul 92 12:45:13 PDT
Received: from wintermute.ncsa.uiuc.edu by newton.ncsa.uiuc.edu with SMTP id AA23076
  (5.65a/IDA-1.4.2 for help-lucid-emacs@lucid.com); Tue, 14 Jul 92 14:54:19 -0500
Received: by wintermute.ncsa.uiuc.edu (920110.SGI/911001.SGI)
	for @newton.ncsa.uiuc.edu:Hans.Muller@Eng.Sun.COM id AA15650; Tue, 14 Jul 92 14:55:45 -0700
Date: Tue, 14 Jul 92 14:55:45 -0700
From: marcus@ncsa.uiuc.edu (Marc Andreessen (aux acct))
Message-Id: <9207142155.AA15650@wintermute.ncsa.uiuc.edu>
To: bcotton@sergei.mitre.org
Cc: Hans.Muller@eng.sun.com, bcotton@sergei.mitre.org,
        help-lucid-emacs@lucid.com
In-Reply-To: Robert T. Cotton's message of Mon, 13 Jul 92 16:43:06 EDT <9207132043.AA01080@sergei.mitre.org>
Subject: Switched from Epoch to Lucid Emacs?

   I made the switch from emacs 18.57 to epoch 3.2 a while back ...
   The reason I wanted to stop using Epoch was it has some
   intermittent bugs, like spontaneous quitting, killing random xterms
   when it did quit, and just an overall level of unstableness, not
   unusable, just annoying.

Umm, folks, Epoch 4.0 has been out for quite a while now and is quite
a bit more stable than 3.2 was.  Spontaneous quitting, killing random
xterms, et al certainly ought to all be fixed in 4.0 (if they're not,
PLEASE let me know).

Thanks,

Marc

-- 
Marc ``Epoch is my Middle Name'' Andreessen 
marca@ncsa.uiuc.edu


From help-lucid-emacs-request@lucid.com  Tue Jul 14 12:56:34 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01517; Tue, 14 Jul 92 12:56:34 PDT
Received: by heavens-gate.lucid.com id AA18009g; Tue, 14 Jul 92 12:48:29 PDT
Received: from mwunix.mitre.org by heavens-gate.lucid.com id AA18005g; Tue, 14 Jul 92 12:48:15 PDT
Return-Path: <bcotton@sergei.mitre.org>
Received: from sergei.mitre.org by mwunix.mitre.org (5.61/SMI-2.2)
	id AA11068; Tue, 14 Jul 92 15:55:22 -0400
Received: by sergei.mitre.org (4.1/SMI-4.1)
	id AA01360; Tue, 14 Jul 92 15:57:07 EDT
Date: Tue, 14 Jul 92 15:57:07 EDT
From: bcotton@sergei.mitre.org (Robert T. Cotton)
Message-Id: <9207141957.AA01360@sergei.mitre.org>
To: marcus@ncsa.uiuc.edu (Marc Andreessen (aux acct))
Cc: Hans.Muller@eng.sun.com, bcotton@sergei.mitre.org,
        help-lucid-emacs@lucid.com
Subject: Re: Switched from Epoch to Lucid Emacs?
In-Reply-To: <9207142155.AA15650@wintermute.ncsa.uiuc.edu>
References: <9207132043.AA01080@sergei.mitre.org>
	<9207142155.AA15650@wintermute.ncsa.uiuc.edu>

aux acct writes:
 >    I made the switch from emacs 18.57 to epoch 3.2 a while back ...
 >    The reason I wanted to stop using Epoch was it has some
 >    intermittent bugs, like spontaneous quitting, killing random xterms
 >    when it did quit, and just an overall level of unstableness, not
 >    unusable, just annoying.
 > 
 > Umm, folks, Epoch 4.0 has been out for quite a while now and is quite
 > a bit more stable than 3.2 was.  Spontaneous quitting, killing random
 > xterms, et al certainly ought to all be fixed in 4.0 (if they're not,
 > PLEASE let me know).
 > 

Oops,  Sorry, forgot to mention that I AM (was) running Epoch 4.0p2.

Bob

From help-lucid-emacs-request@lucid.com  Tue Jul 14 22:49:07 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA02839; Tue, 14 Jul 92 22:49:07 PDT
Received: by heavens-gate.lucid.com id AA19631g; Tue, 14 Jul 92 22:38:11 PDT
Received: from amil.co.il by heavens-gate.lucid.com id AA19627g; Tue, 14 Jul 92 22:37:46 PDT
Received: from ipc8.AMIL ([192.86.90.18]) by amil.co.il (4.1/AMIL-M2)
	id AA25057; Wed, 15 Jul 92 08:46:13 IDT
Date: Wed, 15 Jul 92 08:46:13 IDT
From: danny@amil.co.il (Danny Bar-Dov)
Message-Id: <9207150546.AA25057@amil.co.il>
Received: by ipc8.AMIL (4.1/SMI-4.1)
	id AA01661; Wed, 15 Jul 92 08:46:10 IDT
To: neal@ctd.comsat.com (Neal Becker)
Cc: help-lucid-emacs@lucid.com
Subject: compatible .emacs file? 
In-Reply-To: <m0m7qtF-0008yqC@data.ctd.comsat.com>
References: <m0m7qtF-0008yqC@data.ctd.comsat.com>

Here is my .emacs version dependent code:

;;; load emacs-version dependent libraries
(if (equal emacs-version "19.1 Lucid")
    (progn
      (load "~danny/emacs/emacs19")
      (load "~danny/emacs/emacs19-sunkeys")
      (load "~danny/emacs/laser19")
      )
  (progn
    (x-flip-color)
    (load "~danny/emacs/sun-keys")
    )
  )

Hope it helps,
Danny.

--

---------------------
Dan Bar Dov

Applied Materials (Israel)

Email:        danny@amil.co.il
Phone: office 972-3-499573
       home   972-3-5469625
TimeZone:     GMT+2

From help-lucid-emacs-request@lucid.com  Wed Jul 15 06:28:12 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA04363; Wed, 15 Jul 92 06:28:12 PDT
Received: by heavens-gate.lucid.com id AA20219g; Wed, 15 Jul 92 06:17:12 PDT
Received: from neal.ctd.comsat.com by heavens-gate.lucid.com id AA20212g; Wed, 15 Jul 92 06:16:55 PDT
Received: by neal.ctd.comsat.com (/\==/\ Smail3.1.25.1 #25.17)
	id <m0m89Mz-0003TdC@neal.ctd.comsat.com>; Wed, 15 Jul 92 09:26 EDT
Message-Id: <m0m89Mz-0003TdC@neal.ctd.comsat.com>
Date: Wed, 15 Jul 92 09:26 EDT
From: neal@ctd.comsat.com (Neal Becker)
To: help-lucid-emacs@lucid.com
Subject: BS key?

I am one of those unfortunate few stuck with an HP keyboard.  The key
in the upper right corner is "BackSpace".  I want to use it for "del".
When I say, 

(global-set-key 'BS 'backward-delete-char)

I see that BS has 2 bindings, first the old one, and then the new one.

Even if I say 

(global-unset-key 'BS)

this doesn't help.  What's wrong?

From help-lucid-emacs-request@lucid.com  Wed Jul 15 06:37:46 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA04394; Wed, 15 Jul 92 06:37:46 PDT
Received: by heavens-gate.lucid.com id AA20238g; Wed, 15 Jul 92 06:29:38 PDT
Received: from linus.mitre.org by heavens-gate.lucid.com id AA20234g; Wed, 15 Jul 92 06:29:28 PDT
Return-Path: <guttman@linus.mitre.org>
Received: from circe.mitre.org by linus.mitre.org (5.61/RCF-4S)
	id AA23576; Wed, 15 Jul 92 09:38:49 -0400
Posted-Date: Wed, 15 Jul 92 09:38:47 -0400
Received: by circe.mitre.org (5.61/RCF-4C)
	id AA02086; Wed, 15 Jul 92 09:38:48 -0400
Message-Id: <9207151338.AA02086@circe.mitre.org>
To: neal@ctd.comsat.com (Neal Becker)
Cc: help-lucid-emacs@lucid.com, guttman@linus.mitre.org
Subject: Re: compatible .emacs file? 
In-Reply-To: Your message of "Tue, 14 Jul 92 13:42:00 EDT."
             <m0m7qtF-0008yqC@data.ctd.comsat.com> 
X-Postal-Address: MITRE, Mail Stop A156 \\ 202 Burlington Rd. \\ Bedford, MA 01730
Date: Wed, 15 Jul 92 09:38:47 -0400
From: guttman@linus.mitre.org

What I do in my .emacs file is a little more flexible than simply testing
whether the string emacs-version is "19.xx Lucid".  That approach made trouble
when our site lemacs juggled from 19.2 to 19.2.2.  So I put:

(defconst major-version (read (substring emacs-version  0 2))
  "Number of major version of this incarnation of emacs, either 18 or 19")

Now major-version's value is an integer, either 18 or 19, and you can use = and
< freely as you please.  

Would it make sense to have emacs or lemacs incorporate something like this, so
that the user can always rely on having a variable with this sort of integer
value?

	Josh

From help-lucid-emacs-request@lucid.com  Wed Jul 15 09:28:39 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA05049; Wed, 15 Jul 92 09:28:39 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA20589g; Wed, 15 Jul 92 09:15:56 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA26496; Wed, 15 Jul 92 12:25:18 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA26490; Wed, 15 Jul 92 12:25:17 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA03606; Wed, 15 Jul 92 12:25:49 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!darwin.sura.net!mips!zaphod.mps.ohio-state.edu!magnus.acs.ohio-state.edu!usenet.ins.cwru.edu!agate!linus!linus.mitre.org!linus!jsingh
From: jsingh@tarun.mitre.org (Jasbir Singh)
Subject: Where is the ftp site for Lucid
Message-Id: <JSINGH.92Jul15105100@tarun.mitre.org>
Organization: The Mitre Corp., McLean, VA
Distribution: alt
Date: Wed, 15 Jul 1992 15:51:00 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

The subject says it all.

From help-lucid-emacs-request@lucid.com  Wed Jul 15 10:28:31 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA05287; Wed, 15 Jul 92 10:28:31 PDT
Received: by heavens-gate.lucid.com id AA20797g; Wed, 15 Jul 92 10:20:09 PDT
Received: from watergate.lucid ([192.31.212.117]) by heavens-gate.lucid.com id AA20793g; Wed, 15 Jul 92 10:19:58 PDT
Received: by watergate.lucid (4.1/SMI-4.1)
	id AA03352; Wed, 15 Jul 92 10:26:23 PDT
Date: Wed, 15 Jul 92 10:26:23 PDT
From: eb%watergate@lucid.com (Eric Benson)
Message-Id: <9207151726.AA03352@watergate.lucid>
To: jsingh@tarun.mitre.org (Jasbir Singh)
Cc: help-lucid-emacs@lucid.com
Subject: Re: Where is the ftp site for Lucid
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Jasbir Singh's message of Wed 15-Jul-92 15:51:00 GMT <JSINGH.92Jul15105100@tarun.mitre.org>
References: <JSINGH.92Jul15105100@tarun.mitre.org>
Reply-To: eb@lucid.com

labrea.stanford.edu

From help-lucid-emacs-request@lucid.com  Wed Jul 15 10:31:33 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA05314; Wed, 15 Jul 92 10:31:33 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA20814g; Wed, 15 Jul 92 10:23:40 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA00427; Wed, 15 Jul 92 13:33:03 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA00421; Wed, 15 Jul 92 13:33:02 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA04078; Wed, 15 Jul 92 13:33:33 -0400
Path: uunet!dtix!darwin.sura.net!mips!sdd.hp.com!ux1.cso.uiuc.edu!m.cs.uiuc.edu!m.cs.uiuc.edu!liberte
From: liberte@cs.uiuc.edu (Daniel LaLiberte)
Newsgroups: alt.lucid-emacs.help
Subject: Re: Search for next match
Message-Id: <LIBERTE.92Jul15120054@birch.cs.uiuc.edu>
Date: 15 Jul 92 18:00:54 GMT
References: <knight.711141428@cunews> <9207141929.AA06209@thalidomide.lucid>
Organization: University of Illinois, Urbana-Champaign, Dept CS
In-Reply-To: Jamie Zawinski's message of Tue, 14 Jul 92 12:29:44 PDT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


  Right, isearch is a mess.  The best solution is probably to get 
  Dan LaLiberte's isearch-mode working in lemacs.

Anyone who wants to work on this should get the latest version from me.
But you'll need to talk with Jamie about what kinds of changes will be 
needed.

Dan LaLiberte
liberte@cs.uiuc.edu
(Join the League for Programming Freedom: league@prep.ai.mit.edu)

From help-lucid-emacs-request@lucid.com  Wed Jul 15 10:40:47 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA05360; Wed, 15 Jul 92 10:40:47 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA20854g; Wed, 15 Jul 92 10:32:53 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA00925; Wed, 15 Jul 92 13:42:03 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA00918; Wed, 15 Jul 92 13:42:02 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA04132; Wed, 15 Jul 92 13:42:23 -0400
Path: uunet!dtix!darwin.sura.net!mips!swrinde!zaphod.mps.ohio-state.edu!magnus.acs.ohio-state.edu!usenet.ins.cwru.edu!agate!apple!bionet!raven.alaska.edu!news.u.washington.edu!uw-beaver!cornell!murthy
From: murthy@cs.cornell.edu (Chet Murthy)
Newsgroups: alt.lucid-emacs.help
Subject: Install failed?
Message-Id: <1992Jul15.165534.5350@cs.cornell.edu>
Date: 15 Jul 92 16:55:34 GMT
Organization: Cornell Univ. CS Dept, Ithaca NY 14853
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I'm using Lucid 19.2, and I can't seem to install it.
I ftp'd the stuff, and get lots of errors, using either
of Sunos 4.1.1 cc, or gcc 2.1.  I turned on gcc's
the traditional and ansi flags, but this doesn't seem tohelp.

I get errors in parsing the X11 include files,
and also in parsing crt0.c (with gcc:)

gcc -traditional -ansi -g     -Demacs  -I./lwlib  -c  crt0.c
crt0.c:517: parse error before string constant

I believe these are the "asm" lines.

Could somebody who has succeded in installing it
on a vanilla Sun please let me konwwhat the did?  We are using
X11r4, up to the current patchlevel.

Also, when I tried out the provided binary, I got
an error with "please check that your displ variable is set".
But I checked and my display variable was indeed set.
It was of the form:  "prao.ens.fr:0.0", if that makes any difference.

Thanks,
--chet--

From help-lucid-emacs-request@lucid.com  Wed Jul 15 11:14:21 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA05517; Wed, 15 Jul 92 11:14:21 PDT
Received: by heavens-gate.lucid.com id AA21002g; Wed, 15 Jul 92 11:05:52 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA20989g; Wed, 15 Jul 92 11:04:31 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA07376; Wed, 15 Jul 92 11:12:29 PDT
Date: Wed, 15 Jul 92 11:12:29 PDT
Message-Id: <9207151812.AA07376@thalidomide.lucid>
X-Windows: It could happen to you.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: neal@ctd.comsat.com (Neal Becker)
Cc: help-lucid-emacs@lucid.com
Subject: Re: BS key?
In-Reply-To: Neal Becker's message of Wed 15-Jul-92 09:26 EDT <m0m89Mz-0003TdC@neal.ctd.comsat.com>
References: <m0m89Mz-0003TdC@neal.ctd.comsat.com>

In message <m0m89Mz-0003TdC@neal.ctd.comsat.com> Neal Becker wrote:
>
> I am one of those unfortunate few stuck with an HP keyboard.  The key
> in the upper right corner is "BackSpace".  I want to use it for "del".
> When I say, 
> 
> (global-set-key 'BS 'backward-delete-char)
> 
> I see that BS has 2 bindings, first the old one, and then the new one.

This is because `BS' is not the name of the keysym.  `backspace' is.
BS is an abbreviation that emacs uses when printing ASCII codes, but
it's not the "real" name of the key.  So you should do either:

	(global-set-key 'backspace 'backward-delete-char)

or, if you want to define both backspace and control-H:

	(global-set-key "\^H" 'backward-delete-char)

However, this isn't going to work as well as you'd like, because various
other packages, like isearch, make assumptions about what backspace and
delete mean.  With isearch you can probably fix this by tweaking some
variables, but other packages might have similar problems.  The best
solution to this problem is to use xmodmap to turn the backspace key
into a delete key like this:

	xmodmap -e 'keycode BackSpace = Delete'

In order to make your shells use delete instead of backspace, you also
may need to add this to your .cshrc:

	stty erase ^?

When running lemacs under X, you can't use the keyboard-translate-table
to do this, because that's an ASCII-only mechanism.  It doesn't let you
distinguish between C-h and Backspace.  (And besides, xmodmap works just
as well.)

	-- Jamie

From help-lucid-emacs-request@lucid.com  Wed Jul 15 11:30:08 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA05559; Wed, 15 Jul 92 11:30:08 PDT
Received: by heavens-gate.lucid.com id AA21086g; Wed, 15 Jul 92 11:21:47 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA21080g; Wed, 15 Jul 92 11:21:35 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA07400; Wed, 15 Jul 92 11:28:03 PDT
Date: Wed, 15 Jul 92 11:28:03 PDT
Message-Id: <9207151828.AA07400@thalidomide.lucid>
X-Windows: More than enough rope.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: guttman@linus.mitre.org
Cc: help-lucid-emacs@lucid.com, neal@ctd.comsat.com (Neal Becker)
Subject: Re: compatible .emacs file? 
In-Reply-To: guttman@linus.mitre.org's message of Wed 15-Jul-92 09:38:47 -0400 <9207151338.AA02086@circe.mitre.org>
References: <9207151338.AA02086@circe.mitre.org>
	<m0m7qtF-0008yqC@data.ctd.comsat.com>

I think the easiest way to do this is

	(cond ((not (string-lessp emacs-version "19"))
	       ;; for any 19-vintage emacs
	       )

	      ((not (string-lessp emacs-version "19.2"))
	       ;; for versions of emacs at 19.2 or above
	       )

	      ((string-match "Lucid" emacs-version)
	       ;; for any Lucid Emacs
	       )

	      ((and (string-match "Lucid" emacs-version)
		    (not (string-lessp emacs-version "19.2")))
	       ;; for lemacs 19.2 or greater, but not FSF's 19.2
	       ))

But having a set of integer variables would be nice as well.  But the problem
with that is that Emacs 18 didn't have it, and FSF's 19 might not have it,
which means you'd have to use the above code or something like it anyway.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Wed Jul 15 11:53:45 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA05668; Wed, 15 Jul 92 11:53:45 PDT
Received: by heavens-gate.lucid.com id AA21241g; Wed, 15 Jul 92 11:45:58 PDT
Received: from neal.ctd.comsat.com by heavens-gate.lucid.com id AA21237g; Wed, 15 Jul 92 11:45:49 PDT
Received: by neal.ctd.comsat.com (/\==/\ Smail3.1.25.1 #25.17)
	id <m0m8EVN-0003TdC@neal.ctd.comsat.com>; Wed, 15 Jul 92 14:55 EDT
Message-Id: <m0m8EVN-0003TdC@neal.ctd.comsat.com>
Date: Wed, 15 Jul 92 14:55 EDT
From: neal@ctd.comsat.com (Neal Becker)
To: help-lucid-emacs@lucid.com
Subject: sc-2.2/lemacs-19.2

I tried supercite (sc-2.2) with lemacs-19.2.  Doesn't work.  Has
anyone got it working?

From help-lucid-emacs-request@lucid.com  Wed Jul 15 13:09:22 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA06224; Wed, 15 Jul 92 13:09:22 PDT
Received: by heavens-gate.lucid.com id AA21548g; Wed, 15 Jul 92 12:58:12 PDT
Received: from bcars520 (x400gate.bnr.ca) by heavens-gate.lucid.com id AA21541g; Wed, 15 Jul 92 12:57:52 PDT
X400-Received: by mta bcars520 in /PRMD=BNR/ADMD=TELECOM.CANADA/C=CA/; Relayed; 
               Wed, 15 Jul 1992 16:04:20 -0400 
X400-Received: by /PRMD=BNR/ADMD=TELECOM.CANADA/C=CA/; Relayed; 
               Wed, 15 Jul 1992 16:05:23 -0400 
X400-Received: by /PRMD=BNR/ADMD=TELECOM.CANADA/C=CA/; Relayed; 
               Wed, 15 Jul 1992 12:04:00 -0400 
Date: Wed, 15 Jul 1992 16:04:00 +0000 
X400-Originator: /DD.ID=1581776/G=Jeffrey/I=JD/S=Sparkes/@bnr.ca 
X400-Mts-Identifier: [/PRMD=BNR/ADMD=TELECOM.CANADA/C=CA/;bcars520.b.990:15.06.92.20.05.23] 
Original-Encoded-Information-Types: ia5, undefined 
X400-Content-Type: P2-1984 (2) 
Content-Identifier: getting the f... 
From: "Jeffrey (J.D.w\Nw\H) Sparkes" <jsparkes%x400gate.bnr.ca@lucid.com>
Message-Id: <"20997 Wed Jul 15 16:05:36 1992"@bnr.ca> 
To: help-lucid-emacs@lucid.com
Subject: getting the face of an extent? 

Is there a way to get the face associated with an extent?  Trolling
the source didn't give me any clues..
--
Jeff Sparkes
jsparkes@bnr.ca    Bell-Northern Research, Ottawa, Ontario, Canada

From help-lucid-emacs-request@lucid.com  Wed Jul 15 13:30:59 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA06266; Wed, 15 Jul 92 13:30:59 PDT
Received: by heavens-gate.lucid.com id AA21614g; Wed, 15 Jul 92 13:23:10 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA21610g; Wed, 15 Jul 92 13:22:58 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA07591; Wed, 15 Jul 92 13:32:27 PDT
Date: Wed, 15 Jul 92 13:32:27 PDT
Message-Id: <9207152032.AA07591@thalidomide.lucid>
X-Windows: Don't get frustrated without it.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: "Jeffrey (J.D.w\Nw\H) Sparkes" <jsparkes%x400gate.bnr.ca@lucid.com>
Cc: help-lucid-emacs@lucid.com
Subject: Re: getting the face of an extent? 
In-Reply-To: "Jeffrey (J.D.w\Nw\H) Sparkes"'s message of Wed 15-Jul-19 16:04:00 +0000 <"20997 Wed Jul 15 16:05:36 1992"@bnr.ca> 
References: <"20997 Wed Jul 15 16:05:36 1992"@bnr.ca>

In message <"20997 Wed Jul 15 16:05:36 1992"@bnr.ca>  "Jeffrey (J.D.w\Nw\H) Sparkes" wrote:
>
> Is there a way to get the face associated with an extent?  Trolling
> the source didn't give me any clues..

I noticed that oversight a while ago; there isn't in 19.2, but there
will be in 19.3.  Here's the code if you want it right away:

;; from faces.el
(defun extent-face (extent)
  "Returns the name of the face in which EXTENT is displayed."
  (let ((id (extent-attributes extent t))
	(rest global-face-data)
	face)
    (if (= id -1) (setq id 0))
    (while rest
      (if (= id (face-id (cdr (car rest))))
	  (setq face (car (car rest)) rest nil))
      (setq rest (cdr rest)))
    (or face (error "unknown face??"))))

/* from extents.c */
DEFUN ("extent-attributes", Fextent_attributes, Sextent_attributes, 1, 2, 0,
 "Return a list of attributes of EXTENT.\n\
This list may contain any or none of the following symbols:\n\
\n\
    highlight		highlight when the mouse moves over it\n\
    write-protected	text within this extent will be unmodifyable\n\
    invisible		don't display the text in this region\n\
")
  (extent_obj, raw_p)
   Lisp_Object extent_obj, raw_p;
{
  Lisp_Object result = Qnil;
  EXTENT extent = XEXTENT (extent_obj);
  CHECK_EXTENT (extent_obj, 0);

  if (!NILP (raw_p))
    return make_number (extent->attr_index);

  if (EXTENT_FLAG_P (extent, EF_HIGHLIGHT))
    result = Fcons (intern ("highlight"), result);
  if (EXTENT_FLAG_P (extent, EF_WRITE_PROTECT))
    result = Fcons (intern ("write-protected"), result);
  if (EXTENT_FLAG_P (extent, EF_INVISIBLE))
    result = Fcons (intern ("invisible"), result);
  if (EXTENT_FLAG_P (extent, EF_START_GLYPH))
    result = Fcons (intern ("start-glyph"), result);
  if (EXTENT_FLAG_P (extent, EF_END_GLYPH))
    result = Fcons (intern ("end-glyph"), result);
  if (EXTENT_FLAG_P (extent, EF_MENU))
    result = Fcons (intern ("menu"), result);
  if (EXTENT_FLAG_P (extent, EF_START_OPEN))
    result = Fcons (intern ("start-open"), result);
  if (EXTENT_FLAG_P (extent, EF_END_OPEN))
    result = Fcons (intern ("end-open"), result);
  if (EXTENT_FLAG_P (extent, EF_COLUMN))
    result = Fcons (intern ("column"), result);
  if (EXTENT_FLAG_P (extent, EF_DETACHED))
    result = Fcons (intern ("detached"), result);
  if (EXTENT_FLAG_P (extent, EF_WARN_MODIFY))
    result = Fcons (intern ("warn-modify"), result);
  if (!EXTENT_FLAG_P (extent, EF_DUPLICABLE))
    result = Fcons (intern ("non-duplicable"), result);
  return result;
}

From help-lucid-emacs-request@lucid.com  Wed Jul 15 13:58:53 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA06332; Wed, 15 Jul 92 13:58:53 PDT
Received: by heavens-gate.lucid.com id AA21719g; Wed, 15 Jul 92 13:50:56 PDT
Received: from watergate.lucid ([192.31.212.117]) by heavens-gate.lucid.com id AA21715g; Wed, 15 Jul 92 13:50:46 PDT
Received: by watergate.lucid (4.1/SMI-4.1)
	id AA03953; Wed, 15 Jul 92 14:00:16 PDT
Date: Wed, 15 Jul 92 14:00:16 PDT
From: eb%watergate@lucid.com (Eric Benson)
Message-Id: <9207152100.AA03953@watergate.lucid>
To: murthy@cs.cornell.edu (Chet Murthy)
Cc: help-lucid-emacs@lucid.com
Subject: Re: Install failed?
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Chet Murthy's message of  15-Jul-92 16:55:34 GMT <1992Jul15.165534.5350@cs.cornell.edu>
References: <1992Jul15.165534.5350@cs.cornell.edu>
Reply-To: eb@lucid.com

The "display variable not set" message sometimes occurs when the real
problem is that lemacs is loading Emacs 18 .elc files instead of the
correct ones.  Check that EMACSLOADPATH is not set, and read the
description of how to set up the lisp library directories in relation
to the executable in the NEWS file.

From help-lucid-emacs-request@lucid.com  Wed Jul 15 14:04:04 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA06353; Wed, 15 Jul 92 14:04:04 PDT
Received: by heavens-gate.lucid.com id AA21747g; Wed, 15 Jul 92 13:55:59 PDT
Received: from linus.mitre.org by heavens-gate.lucid.com id AA21743g; Wed, 15 Jul 92 13:55:49 PDT
Return-Path: <guttman@linus.mitre.org>
Received: from circe.mitre.org by linus.mitre.org (5.61/RCF-4S)
	id AA09482; Wed, 15 Jul 92 17:05:20 -0400
Posted-Date: Wed, 15 Jul 92 17:05:19 -0400
Received: by circe.mitre.org (5.61/RCF-4C)
	id AA02342; Wed, 15 Jul 92 17:05:19 -0400
Message-Id: <9207152105.AA02342@circe.mitre.org>
To: help-lucid-emacs@lucid.com
Cc: guttman@linus.mitre.org
Subject: Funny complaint about xmodmap
X-Postal-Address: MITRE, Mail Stop A156 \\ 202 Burlington Rd. \\ Bedford, MA 01730
Date: Wed, 15 Jul 92 17:05:19 -0400
From: guttman@linus.mitre.org

Each time I start up lemacs, I get the funny complaint:

emacs:  Caps_Lock (0x7e) generates ModControl, which is nonsensical.

        The semantics of the modifier bits ModShift, ModLock, and ModControl
        are predefined.  It does not make sense to assign ModControl to any
        keysym other than Control_L or Control_R, or to assign any modifier
        bits to the "control" keysyms other than ModControl.  You can't
        turn a "control" key into a "meta" key (or vice versa) by simply
        assigning the key a different modifier bit.  You must also make that
        key generate an appropriate keysym (Control_L, Meta_L, etc).

        The meanings of the modifier bits Mod1 through Mod5 are determined
        by the keysyms used to control those bits.  Mod1 does NOT always
        mean Meta, although some non-ICCCM-compliant programs assume that.

I have an xmodmap file with the commands: 

remove Lock = Caps_Lock
add Control = Caps_Lock

Now I put in the first line because I NEVER intend to use caps lock, and my
clumsy fingers often strike it.  I put in the second line because I figured
that key may as well do something useful.  

Oddly, in spite of the complaint, this works.  When I hold the caps lock key
and press `b' it does backward-char.  And so forth.  

So why the complaint?  Am I really doing something nonsensical?  

	Josh


From help-lucid-emacs-request@lucid.com  Wed Jul 15 14:06:32 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA06357; Wed, 15 Jul 92 14:06:32 PDT
Received: by heavens-gate.lucid.com id AA21770g; Wed, 15 Jul 92 13:58:18 PDT
Received: from cmcl2.NYU.EDU (NYU.EDU) by heavens-gate.lucid.com id AA21757g; Wed, 15 Jul 92 13:57:42 PDT
Received: from WOTAN.CNS.NYU.EDU by cmcl2.NYU.EDU (5.61/1.34)
	id AA29667; Wed, 15 Jul 92 17:06:45 -0400
Received: from hagen.cns.nyu.edu by wotan.cns.nyu.edu (4.1/SMI-4.0)
	id AA18263; Wed, 15 Jul 92 17:05:19 EDT
Date: Wed, 15 Jul 92 17:05:19 EDT
From: okeefe@cns.nyu.edu (Larry O'Keefe)
Message-Id: <9207152105.AA18263@wotan.cns.nyu.edu>
To: help-lucid-emacs@lucid.com
Subject: remove me
Cc: bug-lucid-emacs@lucid.com

Please remove me from the mailing list.  I am now able to get
the lucid groups on internet.  

Thanks,

Lawrence P. O'Keefe, Ph.D.
Center for Neural Science
New York University
6 Washington Place, 8th Floor
New York, NY  10003
okeefe@cns.nyu.edu
(212) 998-7898

From help-lucid-emacs-request@lucid.com  Wed Jul 15 15:11:08 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA06540; Wed, 15 Jul 92 15:11:08 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA22017g; Wed, 15 Jul 92 15:00:10 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA00709; Wed, 15 Jul 92 18:09:32 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA00676; Wed, 15 Jul 92 18:09:27 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA01588; Wed, 15 Jul 92 18:09:27 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!morrow.stanford.edu!CSD-NewsHost.Stanford.EDU!Xenon.Stanford.EDU!hoelzle
From: hoelzle@Xenon.Stanford.EDU (Urs Hoelzle)
Subject: #<keypress-event control-tab>
Message-Id: <hoelzle.711236427@Xenon.Stanford.EDU>
Organization: CS Department, Stanford University, California, USA
Distribution: alt
Date: 15 Jul 92 21:40:27 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I'd like to redefine control-tab to behave just like tab, so I did

      (fset 'ctrl-tab "		 ")
      (define-key global-map [(control tab)] 'ctrl-tab)

This works fine until I do C-q C-TAB (to insert some tabs, it's faster
to keep the control key pressed...) and lemacs complains that "key
read has no ascii equivalent".  Can this be fixed?

-Urs

----------------------------------------------------------------------------
Urs Hoelzle                                              urs@cs.stanford.EDU
Computer Systems Laboratory, CIS 57, Stanford University, Stanford, CA 94305


From help-lucid-emacs-request@lucid.com  Wed Jul 15 16:16:04 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA06803; Wed, 15 Jul 92 16:16:04 PDT
Received: by heavens-gate.lucid.com id AA22233g; Wed, 15 Jul 92 16:05:03 PDT
Received: from uswat.advtech.uswest.com by heavens-gate.lucid.com id AA22226g; Wed, 15 Jul 92 16:04:33 PDT
Received: from alder.advtech.uswest.com by uswat.advtech.uswest.com with SMTP id AA10322
  (5.65c/IDA-1.4.4 for <help-lucid-emacs@lucid.com>); Wed, 15 Jul 1992 17:13:57 -0600
Received: by alder.advtech.uswest.com (advtech.uswest.com)
   id AA00329 (4.1/at-generic.11Feb92); Wed, 15 Jul 92 17:13:57 MDT
Date: Wed, 15 Jul 92 17:13:57 MDT
From: Chris McClenaghan <mcclen@advtech.uswest.com>
Message-Id: <9207152313.AA00329@alder.advtech.uswest.com>
To: Lucid Emacs 19 Help <help-lucid-emacs@lucid.com>
Subject: menu bar

I'm still using 19.1, which doesn't contain alot of support code
for menubar manipulation. Specifically, I'd like to insert a menu
before ``Help''. Is this possible in the newer versions, or does
any one have some sample code?

Chris McClenaghan    mcclen@uswest.com


From help-lucid-emacs-request@lucid.com  Wed Jul 15 16:47:07 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA06865; Wed, 15 Jul 92 16:47:07 PDT
Received: by heavens-gate.lucid.com id AA22371g; Wed, 15 Jul 92 16:39:04 PDT
Received: from CAMIS.Stanford.EDU by heavens-gate.lucid.com id AA22367g; Wed, 15 Jul 92 16:38:53 PDT
Received: from mcs-ipc-4.Stanford.EDU by CAMIS.Stanford.EDU (4.1/inc-1.0)
	id AA06271; Wed, 15 Jul 92 16:48:16 PDT
Date: Wed, 15 Jul 1992 16:18:03 -0700 (PDT)
From: Kevin Brock <Brock@sumex-aim.stanford.edu>
Sender: Brock@sumex-aim.stanford.edu
Reply-To: Brock@sumex-aim.stanford.edu
Subject: GNUS port
To: help-lucid-emacs@lucid.com
Message-Id: <Ximap.711244096.7590.brock@MCS-IPC-4>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

I recently did some hacking on GNUS 3.14.1 to get it to work with 
Lucid Emacs 19.2.  Everything seems to work fine.  The problem is
that I'm A GNUS novice, and I probably don't exercise the parts of
GNUS which would break; I know that it's probably not as 
straightforward as it seemed, since some other people have posted
about unsuccessful attempts.  Could someone get in touch with me
about the most likely failure points for GNUS wrt Lucid Emacs? 

I specifically did *not* do much with mhspool.el and nnspool.el.

------------------

Kevin Brock
brock@sumex-aim.stanford.edu


From help-lucid-emacs-request@lucid.com  Wed Jul 15 21:25:53 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA07460; Wed, 15 Jul 92 21:25:53 PDT
Received: by heavens-gate.lucid.com id AA22933g; Wed, 15 Jul 92 21:15:13 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA22919g; Wed, 15 Jul 92 21:14:18 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA07777; Wed, 15 Jul 92 21:20:52 PDT
Date: Wed, 15 Jul 92 21:20:52 PDT
Message-Id: <9207160420.AA07777@thalidomide.lucid>
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: okeefe@cns.nyu.edu (Larry O'Keefe)
Cc: bug-lucid-emacs@lucid.com, help-lucid-emacs@lucid.com
Subject: Re: remove me
In-Reply-To: Larry O'Keefe's message of Wed 15-Jul-92 17:05:19 EDT <9207152105.AA18263@wotan.cns.nyu.edu>
References: <9207152105.AA18263@wotan.cns.nyu.edu>

okeefe@cns.nyu.edu has been removed from help-lucid-emacs@lucid.com and
bug-lucid-emacs@lucid.com.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Wed Jul 15 21:34:47 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA07471; Wed, 15 Jul 92 21:34:47 PDT
Received: by heavens-gate.lucid.com id AA22959g; Wed, 15 Jul 92 21:27:02 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA22955g; Wed, 15 Jul 92 21:26:53 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA07817; Wed, 15 Jul 92 21:34:56 PDT
Date: Wed, 15 Jul 92 21:34:56 PDT
Message-Id: <9207160434.AA07817@thalidomide.lucid>
X-Windows: The art of incompetence.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: hoelzle@Xenon.Stanford.EDU (Urs Hoelzle)
Cc: help-lucid-emacs@lucid.com
Subject: Re: #<keypress-event control-tab>
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Urs Hoelzle's message of  15-Jul-92 21:40:27 GMT <hoelzle.711236427@Xenon.Stanford.EDU>
References: <hoelzle.711236427@Xenon.Stanford.EDU>

In message <hoelzle.711236427@Xenon.Stanford.EDU> Urs Hoelzle wrote:
>
> This works fine until I do C-q C-TAB (to insert some tabs, it's faster
> to keep the control key pressed...) and lemacs complains that "key
> read has no ascii equivalent".  Can this be fixed?

Control-TAB has no ASCII equivalent.  C-q calls `read-char', and the semantics
of `read-char' is "read a keypress from the user, and return an ASCII code
which I can insert into a buffer."  If the keypress has no ASCII equivalent,
it signals an error.  I pretty much think this is the right thing; comments?

	-- Jamie

From help-lucid-emacs-request@lucid.com  Wed Jul 15 21:41:27 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA07491; Wed, 15 Jul 92 21:41:27 PDT
Received: by heavens-gate.lucid.com id AA22979g; Wed, 15 Jul 92 21:33:21 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA22975g; Wed, 15 Jul 92 21:33:10 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA07830; Wed, 15 Jul 92 21:41:14 PDT
Date: Wed, 15 Jul 92 21:41:14 PDT
Message-Id: <9207160441.AA07830@thalidomide.lucid>
X-Windows: Warn your friends about it.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: guttman@linus.mitre.org
Cc: help-lucid-emacs@lucid.com
Subject: Re: Funny complaint about xmodmap
In-Reply-To: guttman@linus.mitre.org's message of Wed 15-Jul-92 17:05:19 -0400 <9207152105.AA02342@circe.mitre.org>
References: <9207152105.AA02342@circe.mitre.org>

In message <9207152105.AA02342@circe.mitre.org> guttman@linus.mitre.org wrote:
>
> I have an xmodmap file with the commands: 
> 
> remove Lock = Caps_Lock
> add Control = Caps_Lock
> 
> So why the complaint?  Am I really doing something nonsensical?  

Gee, I thought the message was pretty clear...  The "Control" modifier has
predefined semantics.  The "Caps_Lock" keysym has predefined semantics.  
The two are incompatible.  You can't meaningfully attach them both to the
same keycode.

If you want to turn the key which is physically labeled "Caps Lock" into a
control key, then you have to do two things: make it generate the "Control"
modifier, and make it generate either the "Control_L" or "Control_R" keysym.
Any other keysym would be wrong.

Lemacs is the only X program that prints an error message when such a
situation is detected.  This is a feature: other programs just silently
do something random.

> Oddly, in spite of the complaint, this works.

This is because X is just really goofy.  In identical situations involving 
modifers other than Control, Shift, or Lock, it would not work.

	-- Jamie

> emacs:  Caps_Lock (0x7e) generates ModControl, which is nonsensical.
> 
>         The semantics of the modifier bits ModShift, ModLock, and ModControl
>         are predefined.  It does not make sense to assign ModControl to any
>         keysym other than Control_L or Control_R, or to assign any modifier
>         bits to the "control" keysyms other than ModControl.  You can't
>         turn a "control" key into a "meta" key (or vice versa) by simply
>         assigning the key a different modifier bit.  You must also make that
>         key generate an appropriate keysym (Control_L, Meta_L, etc).
> 
>         The meanings of the modifier bits Mod1 through Mod5 are determined
>         by the keysyms used to control those bits.  Mod1 does NOT always
>         mean Meta, although some non-ICCCM-compliant programs assume that.

From help-lucid-emacs-request@lucid.com  Wed Jul 15 21:43:14 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA07500; Wed, 15 Jul 92 21:43:14 PDT
Received: by heavens-gate.lucid.com id AA22989g; Wed, 15 Jul 92 21:35:25 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA22985g; Wed, 15 Jul 92 21:35:16 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA07834; Wed, 15 Jul 92 21:43:20 PDT
Date: Wed, 15 Jul 92 21:43:20 PDT
Message-Id: <9207160443.AA07834@thalidomide.lucid>
X-Windows: Form follows malfunction.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: Chris McClenaghan <mcclen@advtech.uswest.com>
Cc: Lucid Emacs 19 Help <help-lucid-emacs@lucid.com>
Subject: Re: menu bar
In-Reply-To: Chris McClenaghan's message of Wed 15-Jul-92 17:13:57 MDT <9207152313.AA00329@alder.advtech.uswest.com>
References: <9207152313.AA00329@alder.advtech.uswest.com>

In message <9207152313.AA00329@alder.advtech.uswest.com> Chris McClenaghan wrote:
>
> I'm still using 19.1, which doesn't contain alot of support code
> for menubar manipulation. Specifically, I'd like to insert a menu
> before ``Help''. Is this possible in the newer versions, or does
> any one have some sample code?

No, the menubar interface hasn't changed in 19.2, but it's all fairly simple
code (it's all in lisp.)  Contributions of code are, of course, welcome...

	-- Jamie

From help-lucid-emacs-request@lucid.com  Wed Jul 15 23:29:06 1992
Received: from lucid.com ([192.31.212.72]) by labrea.Stanford.EDU (4.1/1.34)
	id AA07630; Wed, 15 Jul 92 23:29:06 PDT
Received: by heavens-gate.lucid.com id AA23182g; Wed, 15 Jul 92 23:16:39 PDT
Received: from chx400.switch.ch by heavens-gate.lucid.com id AA23178g; Wed, 15 Jul 92 23:16:28 PDT
X400-Received: by mta chx400.switch.ch in /PRMD=switch/ADMD=arcom/C=CH/;
               Relayed; Thu, 16 Jul 1992 08:25:46 +0200
X400-Received: by /PRMD=SWITCH/ADMD=ARCOM/C=CH/; Relayed;
               Thu, 16 Jul 1992 08:25:15 +0200
Date: Thu, 16 Jul 1992 08:25:15 +0200
X400-Originator: metz@iam.unibe.ch
X400-Recipients: help-lucid-emacs@lucid.com
X400-Mts-Identifier: [/PRMD=SWITCH/ADMD=ARCOM/C=CH/;920716082516]
X400-Content-Type: P2-1984 (2)
From: Igor Metz <metz%iam.unibe.ch@lucid.com>
Message-Id: <9207160625.AA08825@iam.unibe.ch>
To: help-lucid-emacs@lucid.com
Subject: Re: compatible .emacs file?

We run several version of emacs with quite different setups. I 
wrote this piece of code to distinguish the versions:

(defvar iam-emacs-version nil
  "Describes the type of emacs which is running.
'emacs-ascii - GNU emacs 18.x on ascii terminal or xterm
'emacs-vt    - GNU emacs 18.x on VTxxx terminal
'emacs-sun   - GNU emacs 18.x in shelltool or commandtool
'lucid       - Lucid Emacs 19.x
'emacstool   - GNU 18.x for suntools
'epoch       - some epoch version
'xemacs      - GNU 18.x for X11 ")

(setq iam-emacs-version
      (cond
       ;; Epoch ?
       ( (boundp 'epoch::version)
	 'epoch
	 )
       ;; Lucid emacs ?
       ( (and (eq window-system 'x)
	      (not (eq (string-match "^19.[0-9]+ Lucid" emacs-version) nil)))
	'lucid
	)
       ;; emacs-vt ?
       ( (and (eq window-system nil)
	      (eq (string-match "^vt.*" (getenv "TERM")) 0))
	'emacs-vt
	)
       ;; emacs-ascii ?
       ( (and (eq window-system nil)
	      (not(eq (getenv "WINDOW_TTYPARMS") nil))
	      (not (string-match "^sun.*" (getenv "TERM"))))
	'emacs-ascii
	)
       ;; emacs-sun ?
       ( (and (eq window-system nil)
	      (string= (getenv "WINDOW_TTYPARMS") "")
	      (not (eq (string-match "^sun.*" (getenv "TERM")) nil)))
	 'emacs-sun
	 )
       ;; emacstool started from suntools?
       ( (and (not(eq window-system 'x))
	      (equal (getenv "WINDOW_TTYPARMS") nil)
	      (string= (getenv "TERM") "sun"))
	 'emacstool
	 )
       ;; xemacs ?
       ( (and (eq window-system 'x)
	      (not (boundp 'epoch::version)))
	 'xemacs
	 )
       ;; if all else fails, it's probably a emacs-sun
       ( t
	 'emacs-sun
	 )
       )
      )

Igor Metz <metz@iam.unibe.ch>
Institut fuer Informatik und angew. Mathematik, Universitaet Bern, Switzerland.
Phone: (0041) 31 65 49 90  Fax: (0041) 31 65 39 65

From help-lucid-emacs-request@lucid.com  Thu Jul 16 06:40:35 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA09208; Thu, 16 Jul 92 06:40:35 PDT
Received: by heavens-gate.lucid.com id AA23616g; Thu, 16 Jul 92 06:29:30 PDT
Received: from corton.inria.fr by heavens-gate.lucid.com id AA23612g; Thu, 16 Jul 92 06:29:14 PDT
Received: from esemetz.ese-metz.fr ([192.70.65.1]) by corton.inria.fr (5.65c8d/92.02.29)
	via Fnet-EUnet id AA20835; Thu, 16 Jul 1992 15:37:34 +0200 (MET)
Received: from clara.ese-metz.fr by esemetz.ese-metz.fr, Thu, 16 Jul 92 15:20:07 +0100
Received: by clara.ese-metz.fr, Thu, 16 Jul 92 15:24:38 +0100
Date: Thu, 16 Jul 92 15:24:38 +0100
From: popineau%ese-metz.fr@lucid.com
Message-Id: <9207161424.AA23109@clara.ese-metz.fr>
To: help-lucid-emacs@lucid.com
Subject: SuperCite 2.2


I didn't manage to get SuperCite 2.2 running with VM(5.32).
I replaced all th (mark) commands with (mark t) but
I got something like :

	listp : <byte-code ...>
	Wrong type argument

As I didn't compile SuperCite, I suspect VM !

Could anybody help me ?

Thanks,

F. Popineau

--
----------------------------------------------|-------------------------------|
|e-mail: popineau@loria.fr		      | "God is real ...              |
|        popineau@ese-metz.fr                 |         ... unless integer ?" |
|voice-mail: (+33) 87-74-99-38                |                               |
|surface-mail: 	Ecole Superieure d'Electricite|                               |
|	      	2 rue Edouard Belin           | "If you haven't been caught   |
|		57078 Metz Cedex 3	      |      did you really do it ? " |
----------------------------------------------|-------------------------------|

From help-lucid-emacs-request@lucid.com  Thu Jul 16 07:57:57 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA09512; Thu, 16 Jul 92 07:57:57 PDT
Received: by heavens-gate.lucid.com id AA23758g; Thu, 16 Jul 92 07:46:53 PDT
Received: from alpha.xerox.com by heavens-gate.lucid.com id AA23754g; Thu, 16 Jul 92 07:46:34 PDT
Received: from ColdDuck.wbst129ul.xerox.xns by alpha.xerox.com via XNS id <11554>; Thu, 16 Jul 1992 07:55:57 PDT
X-Ns-Transport-Id: 08003701035C37872E25
Date: 	Thu, 16 Jul 1992 07:55:42 PDT
From: Marc_Rocas.Wbst129@xerox.com
Subject: Remove me
To: "help-lucid-emacs@lucid".com@unspecified.xerox.com
Reply-To: Marc_Rocas.Wbst129@xerox.com
Message-Id: <"16-Jul-92 10:55:31".*.Marc_Rocas.WBST129@Xerox.com>

Please remove me from the mailing list.
Thanks in advance.
--Marc.

From help-lucid-emacs-request@lucid.com  Thu Jul 16 08:24:00 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA09575; Thu, 16 Jul 92 08:24:00 PDT
Received: by heavens-gate.lucid.com id AA23819g; Thu, 16 Jul 92 08:13:10 PDT
Received: from amil.co.il by heavens-gate.lucid.com id AA23815g; Thu, 16 Jul 92 08:12:43 PDT
Received: from ipc8.AMIL ([192.86.90.18]) by amil.co.il (4.1/AMIL-M2)
	id AA22042; Thu, 16 Jul 92 18:21:19 IDT
Date: Thu, 16 Jul 92 18:21:19 IDT
From: danny@amil.co.il (Danny Bar-Dov)
Message-Id: <9207161521.AA22042@amil.co.il>
Received: by ipc8.AMIL (4.1/SMI-4.1)
	id AA06110; Thu, 16 Jul 92 18:21:15 IDT
To: help-lucid-emacs@lucid.com
Subject: zmacs regions & button 3

I have in my button-3 menu an eval-region command,

The problem is that after I highlight a region using
zmacs-regions, when I click on button-3 to get the menu,
I lose the highlight, and the eval-region evals nothing.

Does someone have an idea ?

(to generalize: how do I operate on a zmacs active region
using menu selection ?)

Danny.

--

---------------------
Dan Bar Dov

Applied Materials (Israel)

Email:        danny@amil.co.il
Phone: office 972-3-499573
       home   972-3-5469625
TimeZone:     GMT+2

From help-lucid-emacs-request@lucid.com  Thu Jul 16 08:42:58 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA09661; Thu, 16 Jul 92 08:42:58 PDT
Received: by heavens-gate.lucid.com id AA23857g; Thu, 16 Jul 92 08:32:07 PDT
Received: from CAMIS.Stanford.EDU by heavens-gate.lucid.com id AA23853g; Thu, 16 Jul 92 08:31:57 PDT
Received: from mcs-ipc-3.Stanford.EDU by CAMIS.Stanford.EDU (4.1/inc-1.0)
	id AA22242; Thu, 16 Jul 92 08:41:16 PDT
Date: Thu, 16 Jul 1992 08:34:38 -0700 (PDT)
From: Kevin Brock <Brock@sumex-aim.stanford.edu>
Sender: Brock@sumex-aim.stanford.edu
Reply-To: Brock@sumex-aim.stanford.edu
Subject: Popup menu behaviour
To: help-lucid-emacs@lucid.com
Message-Id: <Ximap.711301288.1575.brock@MCS-IPC-3>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

I've defined some mode-dependent popup menus which seem to be 
behaving strangely.  For Emacs Lisp Mode I have:

(define-key emacs-lisp-mode-map 'button3 'pop-lisp-menu)

which pops up a menu with some miscellaneous functions.  The
problem is that if I press mouse button3, move the mouse
outside of the popped up menu, and release button3, the menu
remains up.  It doesn't go back down until I move the mouse
to some point inside the menu and click button3. 

Is there any way to alter this behaviour?  I would just like the 
menu to pop down when button3 is released...

-----------
Kevin Brock
brock@sumex-aim.stanford.edu


From help-lucid-emacs-request@lucid.com  Thu Jul 16 12:38:31 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA10604; Thu, 16 Jul 92 12:38:31 PDT
Received: by heavens-gate.lucid.com id AA24648g; Thu, 16 Jul 92 12:28:40 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA24644g; Thu, 16 Jul 92 12:28:27 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA08356; Thu, 16 Jul 92 12:36:29 PDT
Date: Thu, 16 Jul 92 12:36:29 PDT
Message-Id: <9207161936.AA08356@thalidomide.lucid>
X-Windows: The art of incompetence.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: popineau%ese-metz.fr@lucid.com
Cc: help-lucid-emacs@lucid.com
Subject: Re: SuperCite 2.2
In-Reply-To: popineau%ese-metz.fr@lucid.com's message of Thu 16-Jul-92 15:24:38 +0100 <9207161424.AA23109@clara.ese-metz.fr>
References: <9207161424.AA23109@clara.ese-metz.fr>

In message <9207161424.AA23109@clara.ese-metz.fr> popineau%ese-metz.fr@lucid.com wrote:
>
> I didn't manage to get SuperCite 2.2 running with VM(5.32).
> I replaced all th (mark) commands with (mark t) but

It would probably be better to use 

	(let ((zmacs-regions nil)) (mark))

so that the code will continue to work in v18.

> I got something like :
> 
> 	listp : <byte-code ...>
> 	Wrong type argument

SuperCite is trying to take apart and hack on exising function objects, and
doesn't understand the new compiled-function objects in lemacs (and FSF's v19).
Ange-ftp does this successfully, look there.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Thu Jul 16 12:44:21 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA10641; Thu, 16 Jul 92 12:44:21 PDT
Received: by heavens-gate.lucid.com id AA24682g; Thu, 16 Jul 92 12:36:20 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA24678g; Thu, 16 Jul 92 12:36:00 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA08371; Thu, 16 Jul 92 12:43:55 PDT
Date: Thu, 16 Jul 92 12:43:55 PDT
Message-Id: <9207161943.AA08371@thalidomide.lucid>
X-Windows: Power tools for power losers.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: danny@amil.co.il (Danny Bar-Dov)
Cc: help-lucid-emacs@lucid.com
Subject: Re: zmacs regions & button 3
In-Reply-To: Danny Bar-Dov's message of Thu 16-Jul-92 18:21:19 IDT <9207161521.AA22042@amil.co.il>
References: <9207161521.AA22042@amil.co.il>

In message <9207161521.AA22042@amil.co.il> Danny Bar-Dov wrote:
>
> (to generalize: how do I operate on a zmacs active region
> using menu selection ?)

	(setq foo '("foo" ["eval region" eval-region t]))

	(defun foo () 
	  (interactive)
	  (setq zmacs-region-stays t)
	  (popup-menu 'foo))

	(local-set-key 'button3 'foo)

The reason this is necessary is that there are two commands involved: first
the user presses button3, and the command that it invokes is executed.  The
command, foo, puts a menu on the screen, and returns.  If zmacs-region-stays
hadn't been set, then at this point, the region would have been cleared.

Then, emacs is back in the normal event loop executing commands.  The user
selects something from the menu, which executes the next command, eval-region.
The region is active when this is called, and when it completes, the region is
cleared because it didn't set zmacs-region-stays.

Possibly `popup-menu' should set zmacs-region-stays, but there could be a
reason to not do that in some cases, though I can't think of any right now.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Thu Jul 16 15:11:43 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA11012; Thu, 16 Jul 92 15:11:43 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA25202g; Thu, 16 Jul 92 15:03:55 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA20084; Thu, 16 Jul 92 18:13:19 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA20076; Thu, 16 Jul 92 18:13:17 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA11371; Thu, 16 Jul 92 18:13:27 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!stanford.edu!rock!fletcher!mcmahan
From: mcmahan@cs.unca.edu (Scott McMahan -- Genesis mailing list owner)
Subject: DEC station ...
Message-Id: <1992Jul16.215534.27910@cs.unca.edu>
Organization: University of North Carolina at Asheville
X-Newsreader: Tin 1.1 PL3
Date: Thu, 16 Jul 1992 21:55:34 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Has someone compiled lemacs on a DEC station?

(this group seems too new to have a FAQ, if I'm wrong I'll be
eager to read it. If I'm right, maybe I can contribute what I learn about
compiling on a DEC station to it :))

Scott


From help-lucid-emacs-request@lucid.com  Thu Jul 16 15:25:22 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA11049; Thu, 16 Jul 92 15:25:22 PDT
Received: by heavens-gate.lucid.com id AA25249g; Thu, 16 Jul 92 15:17:07 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA25244g; Thu, 16 Jul 92 15:16:55 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA08646; Thu, 16 Jul 92 15:24:59 PDT
Date: Thu, 16 Jul 92 15:24:59 PDT
Message-Id: <9207162224.AA08646@thalidomide.lucid>
X-Windows: No hardware is safe.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: mcmahan@cs.unca.edu (Scott McMahan -- Genesis mailing list owner)
Cc: help-lucid-emacs@lucid.com
Subject: Re: DEC station ...
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Scott McMahan -- Genesis mailing list owner's message of Thu 16-Jul-19 21:55:34 GMT <1992Jul16.215534.27910@cs.unca.edu>
References: <1992Jul16.215534.27910@cs.unca.edu>

In message <1992Jul16.215534.27910@cs.unca.edu> Scott McMahan -- Genesis mailing list owner wrote:
>
> Has someone compiled lemacs on a DEC station?

I believe people have.  Make sure you're using 19.2, not 19.1.

> (this group seems too new to have a FAQ, if I'm wrong I'll be
> eager to read it. If I'm right, maybe I can contribute what I learn
> about compiling on a DEC station to it :))

The newsgroups and mailing lists are archived on labrea.stanford.edu:
/pub/gnu/lucid/, which is also the primary distribution point for lemacs.
There is no FAQ posting, but if someone would like to maintain one, let
me know.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Fri Jul 17 09:20:59 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA13904; Fri, 17 Jul 92 09:20:59 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA27228g; Fri, 17 Jul 92 09:12:59 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA27843; Fri, 17 Jul 92 12:22:27 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA27837; Fri, 17 Jul 92 12:22:25 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA17475; Fri, 17 Jul 92 12:22:43 -0400
Path: uunet!darwin.sura.net!mips!swrinde!cs.utexas.edu!torn!cunews!cunews!knight
From: knight%mrco.carleton.ca@lucid.com (Alan Knight)
Newsgroups: alt.lucid-emacs.help
Subject: VM Isearch under lemacs 19.2
Summary: It doesn't work.
Message-Id: <knight.711389795@cunews>
Date: 17 Jul 92 16:16:35 GMT
Reply-To: knight%mrco.carleton.ca@lucid.com (Alan Knight)
Organization: Carleton University
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


I'm using the VM 5.32.L (beta) which comes with lemacs 19.2. I notice
that the vm-isearch-forward function (M-s) doesn't work. I get 
Symbol's value as variable is void: unread-command-char.

This does not happen if I use the same code under regular emacs
18.57.1. I suppose, although I know very little of elisp, that this is
due to a function having changed in lemacs.

Is there a known fix for this?
-- 
 Alan Knight  knight@mrco.carleton.ca  +1 613 788 2600x5783   Join
 Dept. of Mechanical and Aerospace Engineering                the
 Carleton University, Ottawa, Ontario, Canada, K1S 5B6        LPF

From help-lucid-emacs-request@lucid.com  Sun Jul 19 11:37:27 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA20318; Sun, 19 Jul 92 11:37:27 PDT
Received: by heavens-gate.lucid.com id AA01148g; Sun, 19 Jul 92 11:25:18 PDT
Received: from linus.mitre.org by heavens-gate.lucid.com id AA01144g; Sun, 19 Jul 92 11:25:09 PDT
Return-Path: <guttman@linus.mitre.org>
Received: from circe.mitre.org by linus.mitre.org (5.61/RCF-4S)
	id AA22932; Sun, 19 Jul 92 14:34:48 -0400
Posted-Date: Sun, 19 Jul 92 14:34:46 -0400
Received: by circe.mitre.org (5.61/RCF-4C)
	id AA04955; Sun, 19 Jul 92 14:34:46 -0400
Message-Id: <9207191834.AA04955@circe.mitre.org>
To: help-lucid-emacs@lucid.com
Cc: guttman@linus.mitre.org
Subject: conditionalize on buffer visible?
X-Postal-Address: MITRE, Mail Stop A156 \\ 202 Burlington Rd. \\ Bedford, MA 01730
Date: Sun, 19 Jul 92 14:34:46 -0400
From: guttman@linus.mitre.org

Is there a nice way to conditionalize on whether a buffer is visble in any
screen?  

For instance, I used to use pop-to-buffer in the procedure I used to send shell
commands to the *shell* process.  Now I would rather not screw around with the
emacs windows if *shell* is visible in any screen.

Thanks.  

	Josh


From help-lucid-emacs-request@lucid.com  Mon Jul 20 00:53:37 1992
Received: from lucid.com ([192.31.212.72]) by labrea.Stanford.EDU (4.1/1.34)
	id AA21490; Mon, 20 Jul 92 00:53:37 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA01698g; Mon, 20 Jul 92 00:40:56 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA12695; Mon, 20 Jul 92 03:50:28 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA12689; Mon, 20 Jul 92 03:50:26 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA07880; Mon, 20 Jul 92 03:50:32 -0400
Path: uunet!mcsun!uknet!mucs!uts.mcc.ac.uk!ssurhode
From: ssurhode@rdg.ac.uk (Paul Rhodes)
Newsgroups: alt.lucid-emacs.help
Subject: Newbie questions
Message-Id: <SSURHODE.92Jul17095733@suma1.rdg.ac.uk>
Date: 17 Jul 92 08:57:33 GMT
Distribution: alt
Organization: Reading University, England
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Hi. After many seperate attempts I've finally got lemacs running. From
the looks of things it was worth the wait. But I have a few problems :

  a. Is it possible to define the cut copy and paste keys on a sparc
station so they use the normal x windows cut buffer (ie so I can cut
and paste between applications)

  b. Does anyone have a nice emacs icon that they could post ?

I think of some more at another time.

Paul

From help-lucid-emacs-request@lucid.com  Tue Jul 21 00:44:45 1992
Received: from lucid.com ([192.31.212.72]) by labrea.Stanford.EDU (4.1/1.34)
	id AA25095; Tue, 21 Jul 92 00:44:45 PDT
Received: by heavens-gate.lucid.com id AA05004g; Tue, 21 Jul 92 00:31:12 PDT
Received: from chx400.switch.ch by heavens-gate.lucid.com id AA05000g; Tue, 21 Jul 92 00:30:57 PDT
X400-Received: by mta chx400.switch.ch in /PRMD=switch/ADMD=arcom/C=CH/;
               Relayed; Tue, 21 Jul 1992 09:40:35 +0200
X400-Received: by /PRMD=SWITCH/ADMD=ARCOM/C=CH/; Relayed;
               Tue, 21 Jul 1992 09:39:52 +0200
Date: Tue, 21 Jul 1992 09:39:52 +0200
X400-Originator: metz@iam.unibe.ch
X400-Recipients: help-lucid-emacs@lucid.com
X400-Mts-Identifier: [/PRMD=SWITCH/ADMD=ARCOM/C=CH/;920721093953]
X400-Content-Type: P2-1984 (2)
From: Igor Metz <metz%iam.unibe.ch@lucid.com>
Message-Id: <9207210739.AA09608@iam.unibe.ch>
To: help-lucid-emacs@lucid.com
Subject: positioning the cursor

My config: Sun Sparc, SunOS 4.1.1, OW 3.0, Lucid 19.2 (the binary found on
labrea)

Is there ANY deterministic behaviour in the way the cursor is positioned in
v19.2?  

I have lots of problems with it when I use the mouse to paste (with 
the middle button) a highlighted text. 

I normally have 3 different situations:
1. the text is pasted to the right of the mouse position. Great! Exactly what
   I wanted.
2. the text is pasted at the end of the line above the cursor position. Not
   what I wanted!
3. some text on the left of the mouse position is highlighted and I have
   to highlight my text again. Not what I wanted!

Anybody else having this problem?

Igor Metz <metz@iam.unibe.ch>
Institut fuer Informatik und angew. Mathematik, Universitaet Bern, Switzerland.
Phone: (0041) 31 65 49 90  Fax: (0041) 31 65 39 65

From help-lucid-emacs-request@lucid.com  Tue Jul 21 04:39:31 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA25494; Tue, 21 Jul 92 04:39:31 PDT
Received: by heavens-gate.lucid.com id AA05238g; Tue, 21 Jul 92 04:28:43 PDT
Received: from Sun.COM by heavens-gate.lucid.com id AA05234g; Tue, 21 Jul 92 04:28:33 PDT
Received: from snail.Sun.COM (snail.Corp.Sun.COM) by Sun.COM (4.1/SMI-4.1)
	id AA17486; Tue, 21 Jul 92 04:38:09 PDT
Received: from East.Sun.COM by snail.Sun.COM (4.1/SMI-4.1)
	id AA16967; Tue, 21 Jul 92 04:38:04 PDT
Received: from sundeck.East.Sun.COM by East.Sun.COM (4.1/SMI-4.1)
	id AA24510; Tue, 21 Jul 92 07:38:03 EDT
Received: by sundeck.East.Sun.COM (4.1/SMI-4.1)
	id AA26674; Tue, 21 Jul 92 07:38:00 EDT
Date: Tue, 21 Jul 92 07:38:00 EDT
From: jdesai@sundeck.East.Sun.COM (Jatin Desai -- Contractor)
Message-Id: <9207211138.AA26674@sundeck.East.Sun.COM>
To: help-lucid-emacs@lucid.com
Subject: Re: positioning the cursor


> From: metz%iam.unibe.ch@lucid.com
> I have lots of problems with it when I use the mouse to paste (with 
> the middle button) a highlighted text. 

I have exactly the same setup and same problems. In addition, I have one more:
A lot of times when I click the left button to set the "point", Emacs 19.2
selects some text in addition to setting the point. This does NOT happen to me
in other applications - i.e. my hand does not seem to be shaky enough to move
the mouse by a word (or to the line above) when single clicking.

It seems like if the mouse moves too fast, Lucid emacs is using the wrong
co-ordinates for the mouse down event. Now that I remember, I seem to remember
a problem I saw in OpenWindows 2.0 server which often gave wrong co-ordinates
for the down event (vs the up event). I wonder if the same bug persists in the
3.0 server. Also, I am not sure if Sun OpenWindows folks know about this
problem - I will try to find out.

Jatin Desai
Jatin.Desai@East.Sun.COM


From help-lucid-emacs-request@lucid.com  Tue Jul 21 06:24:23 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA26341; Tue, 21 Jul 92 06:24:23 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA05360g; Tue, 21 Jul 92 06:13:30 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA23911; Tue, 21 Jul 92 09:23:05 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA23899; Tue, 21 Jul 92 09:23:03 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA25150; Tue, 21 Jul 92 09:23:23 -0400
Path: uunet!spool.mu.edu!umn.edu!noc.msc.net!uc.msc.edu!shamash!bjdunlop
From: bjdunlop@shamash.cdc.com (Bruce Dunlop)
Newsgroups: alt.lucid-emacs.help
Subject: Running lemacs remotely
Keywords: remote lemacs
Message-Id: <45441@shamash.cdc.com>
Date: 21 Jul 92 12:50:15 GMT
Distribution: usa
Organization: Control Data, Arden Hills, MN
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


I tried executing lemacs after doing an rlogin to a different username, but on the same node,
ie 'rlogin samenode -l different_username'.  I got an error message saying that lemacs only
runs under X.  Why can't I do this?  I am able to run other openwindows programs remotely, like
this.  I can even run on other nodes, if I set the DISPLAY environment variable to my node.

I am running on a Sun Sparc 2, and am running openwindows 3 under SunOS 4.1.1.

Jim Dahlberg			Computing Devices International
jad@verdin.gsd.cdc.com			a Ceridian company

From help-lucid-emacs-request@lucid.com  Tue Jul 21 06:52:24 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA26405; Tue, 21 Jul 92 06:52:24 PDT
Received: by heavens-gate.lucid.com id AA05399g; Tue, 21 Jul 92 06:41:22 PDT
Received: from nac.no by heavens-gate.lucid.com id AA05395g; Tue, 21 Jul 92 06:41:07 PDT
Received: from xanadu.com by nac.no id <18121-0@nac.no>;
          Tue, 21 Jul 1992 15:51:11 +0200
Received: from xanadu.UUCP by vingmed.no (4.1/SMI-4.1) id AA08228;
          Tue, 21 Jul 92 15:33:44 +0200
Received: from donald.vingmed.no by vingmed.no (4.1/SMI-4.1) id AA08918;
          Tue, 21 Jul 92 15:31:26 +0200
Date: Tue, 21 Jul 92 15:31:26 +0200
From: oaf%vingmed.no@lucid.com (Ole Asbjorn Fadum)
Message-Id: <9207211331.AA08918@vingmed.no>
Received: by donald.vingmed.no (4.1/SMI-4.1) id AA05707;
          Tue, 21 Jul 92 15:31:24 +0200
To: help-lucid-emacs@lucid.com


HELP

I've retrieved the lucid-emacs source but can't get it to
compile. I'm using a SPARCstation 1 SUNos 4.1.1 and gcc 1.40.
I've got a lot of complaints of definitions on strlength().
I've tracked this down to the gcc redifinition of size_t
from int to unsigned long.

I've also got an error in EmacsShell.c on macro XtIsWMShell(), 
this was fixed by include <X11/ObjectP.h>.

I've also pulled off the SUN4 binary but the only result
I've got is a complain about my DISPLAY variable.

I've tried 'host:0.0', 'unix:0.0', '0:0' but same result.

I'm using Openwindows 3.0, and MIT X11R5, and Tek XP20.

I'm not connected to this newsgroup, but could a kind
soul please give me a clue to get it working?


ole asbjorn fadum (oaf@vingmed.no)

From help-lucid-emacs-request@lucid.com  Tue Jul 21 07:28:58 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA26495; Tue, 21 Jul 92 07:28:58 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA05464g; Tue, 21 Jul 92 07:18:00 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA02310; Tue, 21 Jul 92 10:27:34 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA02301; Tue, 21 Jul 92 10:27:32 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA25536; Tue, 21 Jul 92 10:27:51 -0400
Path: uunet!elroy.jpl.nasa.gov!swrinde!cs.utexas.edu!wotan.compaq.com!twisto.eng.hou.compaq.com!akasha.eng.hou.compaq.com!smiley
From: smiley@akasha.eng.hou.compaq.com (Colin Smiley)
Newsgroups: alt.lucid-emacs.help
Subject: lemacs and the minibuffer...
Message-Id: <1992Jul21.140805.5778@twisto.eng.hou.compaq.com>
Date: 21 Jul 92 14:08:05 GMT
Organization: Compaq Computer Corporation
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


Simple question...

Does lemacs-19.2 handle a separate minibuffer?  This is one of the
major things which is keeping me from using it...

Thanks,

Colin


-- 
-------------------------------------------------------------------------
Colin Smiley, Compaq Computer Corporation, Houston, Texas 77269-2000
e-mail: smiley@compaq.com                           Phone: (713) 378-8426
-------------------------------------------------------------------------
Disclaimer:  Any opinons expressed here do not reflect the opinions of
Compaq Computer Corp.  They make computers.  I make noise.

From help-lucid-emacs-request@lucid.com  Tue Jul 21 07:47:57 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA26537; Tue, 21 Jul 92 07:47:57 PDT
Received: by heavens-gate.lucid.com id AA05514g; Tue, 21 Jul 92 07:39:55 PDT
Received: from linus.mitre.org by heavens-gate.lucid.com id AA05510g; Tue, 21 Jul 92 07:39:44 PDT
Return-Path: <guttman@linus.mitre.org>
Received: from circe.mitre.org by linus.mitre.org (5.61/RCF-4S)
	id AA02221; Tue, 21 Jul 92 10:49:22 -0400
Posted-Date: Tue, 21 Jul 92 10:49:20 -0400
Received: by circe.mitre.org (5.61/RCF-4C)
	id AA05869; Tue, 21 Jul 92 10:49:20 -0400
Date: Tue, 21 Jul 92 10:49:20 -0400
From: guttman@linus.mitre.org
Message-Id: <9207211449.AA05869@circe.mitre.org>
To: help-lucid-emacs@lucid.com
In-Reply-To: jdesai@sundeck.East.Sun.COM's message of 21 Jul 92 11:38:00 GMT
Subject: Re: positioning the cursor
X-Postal-Address: MITRE, Mail Stop A156 \\ 202 Burlington Rd. \\ Bedford, MA 01730

>   From: jdesai@sundeck.East.Sun.COM (Jatin Desai -- Contractor)

>   > From: metz%iam.unibe.ch@lucid.com
>   > I have lots of problems with it when I use the mouse to paste (with 
>   > the middle button) a highlighted text. 
>
>   I have exactly the same setup and same problems. In addition, I have one more:
>   A lot of times when I click the left button to set the "point", Emacs 19.2
>   selects some text in addition to setting the point. 
> 
>   Now that I remember, I seem to remember
>   a problem I saw in OpenWindows 2.0 server which often gave wrong co-ordinates
>   for the down event (vs the up event). I wonder if the same bug persists in the
>   3.0 server. 

I have a similar problem under X11R4 from MIT.  Any hope?

Thanks.  

	Josh

From help-lucid-emacs-request@lucid.com  Tue Jul 21 08:10:00 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA26605; Tue, 21 Jul 92 08:10:00 PDT
Received: by heavens-gate.lucid.com id AA05568g; Tue, 21 Jul 92 08:02:02 PDT
Received: from mwunix.mitre.org by heavens-gate.lucid.com id AA05564g; Tue, 21 Jul 92 08:01:44 PDT
Return-Path: <lamour@maestro.mitre.org>
Received: from maestro.mitre.org by mwunix.mitre.org (5.61/SMI-2.2)
	id AA07893; Tue, 21 Jul 92 11:09:05 -0400
Received: from gong.mitre.org by maestro.mitre.org (4.1/SMI-4.1)
	id AA19905; Tue, 21 Jul 92 11:07:56 EDT
Date: Tue, 21 Jul 92 11:07:56 EDT
From: lamour@maestro.mitre.org (Michael Lamoureux)
Message-Id: <9207211507.AA19905@maestro.mitre.org>
Received: by gong.mitre.org (4.1/SMI-4.1)
	id AA04415; Tue, 21 Jul 92 11:07:55 EDT
To: help-lucid-emacs@lucid.com
Subject: some examples

	Well, I've been hacking at this for a few days, and I guess
this may be useful to someone else.  If anyone has any ideas for
making this simpler, more useful, etc, please let me know.

Below:  key-bindings for Sun4 keyboard
	Perl hilighting defs for lhilit
	VM hiliting defs & hook for lhilit
	sound bindings  (nothing much)
	a menubar def
	an x-find-file hack

BTW, this makes for a great menubar font (IMHO):
Emacs*menubar*font: -adobe-times-bold-r-normal--14-140-75-75-p-77-iso8859-1

Just in case you wanted to know,
Michael
lamour@mitre.org

PS>  If you don't find this useful, then I guess you could just
	consider it a long .sig  ;-)

----------------------------- Cut Here --------------------------------
;;
;; Dot emacs file for Michael Lamoureux
;;     This file contains ideas stolen from a great many sources
;;     latest hack added on 7/21/92
;;
;; Added some organization to this mess on 2/15/92.  The following
;; sections can be found below by searching on the specified strings.
;;    &&lucid -  Lucid emacs 19 stuff

;; [ I censored a couple hundred lines in here - mjl ]

;; &&lucid ========== Lucid emacs 19 stuff ===========================
(if (string-match "Lucid" emacs-version)
    (progn
;; emacs-19 key bindings for Sun4 keyboard
;;
     ;; Left keypad
     (define-key global-map [(f11)] 'keyboard-quit)           ;; Stop
     (define-key global-map [(f12)] 'repeat-complex-command)  ;; Again
     (define-key global-map [(f14)] 'undo)                    ;; Undo
     (define-key global-map [(f16)] 'kill-ring-save)          ;; Copy
     (define-key global-map [(f18)] 'yank)                    ;; Paste
     (define-key global-map [(control f18)] 'yank-pop)        ;; Paste
     (define-key global-map [(f19)] 'isearch-forward)         ;; Find
     (define-key global-map [(control f19)] 'query-replace)   ;; Find
     (define-key global-map [(f20)] 'kill-region)             ;; Cut

     ;; Function keys
     ;; F1 seems to be stolen, and F11 & F12 don't return X keysyms
     (define-key global-map [(f2)] 'x-new-screen)
     (define-key global-map [(control f2)] 'delete-screen)
     (define-key global-map [(f3)] 'compile)
     (define-key global-map [(f4)] 'next-error)
     (define-key global-map [(f5)] 'find-tag)
     (define-key global-map [(control f5)] 'find-next-tag)
     (define-key global-map [(f6)] 'eval-region)
     (define-key global-map [(f7)] 'fill-region)
     (define-key global-map [(f8)] 'ispell-region)
     (define-key global-map [(control f8)] 'ispell-buffer)
     (define-key global-map [(f9)] 'vm)
     (define-key global-map [(control f9)] 'gnus)
     (define-key global-map [(f10)] 'manual-entry)
;; now that I look at it again, there appears to be much randomness in
;; the above bindings  ;-)

      ;; Right keypad
     (define-key global-map [(f22)] 'lpr-buffer)                  ;; PrSc
     (define-key global-map [(f23)] 'keyboard-quit)               ;; Break
     (define-key global-map [(f27)] 'beginning-of-line)           ;; Home
     (define-key global-map [(control f27)] 'beginning-of-buffer) ;; Home
     (define-key global-map [(f29)] 'scroll-down)                 ;; PgUp
     (define-key global-map [(control f29)] 'scroll-down)         ;; PgUp
     (define-key global-map [(control left)] 'backward-word)      ;; <
     (define-key global-map [(f31)] 'move-to-window-line)         ;; []
     (define-key global-map [(control right)] 'forward-word)      ;; >
     (define-key global-map [(f35)] 'scroll-up)                   ;; PgDn
     (define-key global-map [(control f35)] 'scroll-up)           ;; PgDn
     (define-key global-map [(r13)] 'end-of-line)                 ;; End
     (define-key global-map [(control r13)] 'end-of-buffer)       ;; End
     

;; Some random sounds to amuse myself
     (let ((default-directory exec-directory))
       (load-sound-file "sounds/bark.au" 'undefined-key)
       (load-sound-file "sounds/drip.au" 'undefined-click)    ;; broken???
       (load-sound-file "sounds/whip.au" 'command-error 100)
       (load-sound-file "sounds/gong.au" 'auto-save-error)    ;; non-std sound
       (load-sound-file "sounds/whip.au" 'no-completion 100)
       (load-sound-file "sounds/cuckoo.au" 'y-or-n-p)
       (load-sound-file "sounds/cuckoo.au" 'yes-or-no-p))

;; Menubar functions
;;  There must be a better way to do this
     (defun find-dot-emacs ()
       (interactive)
       (find-file "~/.emacs")
       )
     (defun find-dot-cshrc ()
       (interactive)
       (find-file "~/.zshrc")
       )
     (defun find-dot-mailrc ()
       (interactive)
       (find-file "~/.mailrc")
       )
     (defun find-dot-login ()
       (interactive)
       (find-file "~/.zlogin")
       )
     (defun find-dot-xdefaults ()
       (interactive)
       (find-file "~/.Xdefaults")
       )
     (defun find-dot-openwin ()
       (interactive)
       (find-file "~/.openwin-init")
       )

;; Menubar def
;;   most of this stolen from menubar.el
     (setq default-menubar
	   '(("File"	["New Screen"		x-new-screen   	t]
	      ["Open File..."		find-file		t]
	      ("Open Special"
	       ["Dot Emacs"             find-dot-emacs t]
	       ["Dot Login"             find-dot-login t]
	       ["Dot Cshrc"             find-dot-cshrc t]
	       ["Dot Mailrc"            find-dot-mailrc t]
	       ["Dot Xdefaults"         find-dot-xdefaults t]
	       ["Dot Openwin-init"      find-dot-openwin t]
	       )
	      ["Save Buffer"		save-buffer		t]
	      ["Save Buffer As..."	write-file		t]
	      ["Revert Buffer"		revert-buffer		t]
	      "-----"
	      ["Print Buffer"		lpr-buffer		t]
	      "-----"
	      ["Delete Screen"	delete-screen		t]
	      ["Kill Buffer..."	kill-buffer		t]
	      ["Exit Emacs"	save-buffers-kill-emacs	t]
	      )
	     ("Edit"	["Undo"	       	advertised-undo	   t]
	      ["Cut"	       	x-kill-primary-selection   t]
	      ["Copy"	       	x-copy-primary-selection   t]
	      ["Paste"		x-yank-clipboard-selection t]
	      ["Clear"		x-delete-primary-selection t]
	      )
	     ("Buffers"	"")
	     ("Applications" 
	      ["Read Mail"		vm			t]
	      ["Read News"		gnus			t]
	      ["Info"			info			t]
	      ["Compose Mail"		mail			t]
	      ["Compile"		compile			t]
	      )
	     ("Spelling"
	      ["Spell Word"		ispell-word		t]
	      ["Spell Region"		ispell-region		t]
	      ["Spell Buffer"		ispell-buffer		t]
	      )
	     ("Help"	["Info"		info			t]
	      ["Describe Mode"		describe-mode		t]
	      ["Command Apropos..."	command-apropos		t]
	      ["List Keybindings"	describe-bindings	t]
	      ["Describe Key..."	describe-key		t]
	      ["Describe Function..."	describe-function	t]
	      ["Describe Variable..."	describe-variable	t]
	      "-----"
	      ["Unix Manual..."	manual-entry		t]
	      ["Emacs Tutorial"	help-with-tutorial	t]
	      ["Emacs News"	view-emacs-news		t]
	      )
	     ))
     (set-screen-menubar default-menubar)


     (load "lhilit" nil t)

     (set-face-foreground 'hilit0 "red3")
     (set-face-foreground 'hilit1 "white")
     (set-face-foreground 'hilit2 "blue3")
     (set-face-foreground 'hilit6 "yellow")
     (set-face-foreground 'hilit9 "seagreen")

     ;; I basically just ported my epoch lightbrite Perl defs
     ;; to use lhilit
     (setq perl-mode-hilit
	   '(
	     ("[ \n\t{]if[ \n\t;(]" nil hilit0)        ;; flow control
	     ("[ \n\t{]until[ \n\t;(]" nil hilit0)
	     ("[ \n\t{]while[ \n\t;(]" nil hilit0)
	     ("[ \n\t{]else[ \n\t;(]" nil hilit0)
	     ("[ \n\t{]elsif[ \n\t;(]" nil hilit0)
	     ("[ \n\t{]unless[ \n\t;(]" nil hilit0)
	     ("[ \n\t{]for[ \n\t;(]" nil hilit0)
	     ("[ \n\t{]foreach[ \n\t;(]" nil hilit0)
	     ("[ \n\t{]continue[ \n\t;(]" nil hilit0)
	     ("[ \n\t{]exit[ \n\t;(]" nil hilit0)
	     ("[ \n\t{]die[ \n\t;(]" nil hilit0)
	     ("[ \n\t{]last[ \n\t;(]" nil hilit0)
	     ("[ \n\t{]goto[ \n\t;(]" nil hilit0)
	     ("[ \n\t{]next[ \n\t;(]" nil hilit0)
	     ("[ \n\t{]redo[ \n\t;(]" nil hilit0)
	     ("[ \n\t{]return[ \n\t;(]" nil hilit0)

	     ("^#if" nil hilit7)                        ;; cpp stuff
	     ("^#else" nil hilit7)
	     ("^#ifdef" nil hilit7)
	     ("^#ifndef" nil hilit7)
	     ("^#include" nil hilit7)
	     ("^#define" nil hilit7)
	     ("^#undef" nil hilit7)
	     ("^#endif" nil hilit7)

	     ("#" "\n" hilit3)                          ;; comments

	     ("^[ \n\t]*sub.*\\{" nil hilit1)          ;; subroutines
	     ("[ \n\t{]*eval[ \n\t(;]" nil hilit1)

	     ("--- .* ---" nil hilit6)                 ;; markers
	     ("=== .* ===" nil hilit6)))

     (hilit::mode-list-update "Perl" perl-mode-hilit)

     (setq vm-mode-hilit
	   '(
	     ("^From:.*" nil hilit0)
	     ("^Subject:.*" nil hilit2)))
     (hilit::mode-list-update "VM" vm-mode-hilit)
     (add-hook 'vm-mode-hooks 'hilit::hilit-buffer)
    

    ;; A 2-minute hack of x-find-file in Lucid emacs for Bob
    ;;   This needs to do more, but I haven't had time
    (defun x-find-file (filename)
       "Does find file in new X Window"
       (interactive "FX find file: ")
       (select-screen (x-create-screen nil))
       (switch-to-buffer (find-file-noselect filename)))
    )
)
;; Other Lucid specific code includes Guido Bosch's VM popup menu in ~/.vm

From help-lucid-emacs-request@lucid.com  Tue Jul 21 08:12:50 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA26624; Tue, 21 Jul 92 08:12:50 PDT
Received: by heavens-gate.lucid.com id AA05575g; Tue, 21 Jul 92 08:04:51 PDT
Received: from uu2.psi.com by heavens-gate.lucid.com id AA05571g; Tue, 21 Jul 92 08:04:29 PDT
Received: from rutherford.stsi.com by uu2.psi.com (5.65b/4.0.071791-PSI/PSINet)
	id AA21550; Tue, 21 Jul 92 11:13:57 -0400
Received: from sbi.sbi.com by internet.sbi.com (4.1/SMI-4.1)
	id AA20772; Tue, 21 Jul 92 11:10:49 EDT
Received: from cyclone.sbi.com by sbi.sbi.com (4.1/SMI-4.1)
	id AA18780; Tue, 21 Jul 92 11:10:48 EDT
Received: from scirocco.sbi.com by cyclone.sbi.com (4.1/SMI-4.1)
	id AA27682; Tue, 21 Jul 92 11:10:47 EDT
Date: Tue, 21 Jul 92 11:10:47 EDT
From: jbm@cyclone.sbi.com (Jeffrey B. Moore)
Message-Id: <9207211510.AA27682@cyclone.sbi.com>
Received: by scirocco.sbi.com (4.1/SMI-4.1)
	id AA01284; Tue, 21 Jul 92 11:10:47 EDT
To: jdesai@sundeck.east.sun.com
Cc: help-lucid-emacs@lucid.com
In-Reply-To: Jatin Desai -- Contractor's message of Tue, 21 Jul 92 07:38:00 EDT <9207211138.AA26674@sundeck.East.Sun.COM>
Subject: positioning the cursor

> From: jdesai@sundeck.east.sun.com (Jatin Desai -- Contractor)

> > From: metz%iam.unibe.ch@lucid.com
> > I have lots of problems with it when I use the mouse to paste (with 
> > the middle button) a highlighted text. 

> It seems like if the mouse moves too fast, Lucid emacs is using the wrong
> co-ordinates for the mouse down event. Now that I remember, I seem to remember
> a problem I saw in OpenWindows 2.0 server which often gave wrong co-ordinates
> for the down event (vs the up event). I wonder if the same bug persists in the
> 3.0 server. Also, I am not sure if Sun OpenWindows folks know about this
> problem - I will try to find out.

Gee, I haven't seen this problem at all --- but then, I ditched the
Sun servers long ago.  I've been running out-of-the-box X11R5.  Much,
much faster, too.

-Jeff Moore (jbm@sbi.com)

From help-lucid-emacs-request@lucid.com  Tue Jul 21 09:04:39 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA26733; Tue, 21 Jul 92 09:04:39 PDT
Received: by heavens-gate.lucid.com id AA05702g; Tue, 21 Jul 92 08:56:28 PDT
Received: from scylla.lucid (scylla.lucid.com) by heavens-gate.lucid.com id AA05695g; Tue, 21 Jul 92 08:56:02 PDT
Received: by scylla.lucid (4.1/SMI-4.1)
	id AA15883; Tue, 21 Jul 92 09:04:09 PDT
Date: Tue, 21 Jul 92 09:04:09 PDT
From: devin%scylla@lucid.com (Matthieu Devin)
Message-Id: <9207211604.AA15883@scylla.lucid>
To: jdesai@sundeck.East.Sun.COM (Jatin Desai -- Contractor)
Cc: help-lucid-emacs@lucid.com
Subject: Re: positioning the cursor
In-Reply-To: Jatin Desai -- Contractor's message of Tue 21-Jul-92 07:38:00 EDT <9207211138.AA26674@sundeck.East.Sun.COM>
References: <9207211138.AA26674@sundeck.East.Sun.COM>

Yep we have known bugs in positioning the cursor.  

The bugs comes from the fact that the display code caches the buffer position
of the first character of every line on the screen, and that in some cases this
cache is not updated when the screen is redisplayed.  Mostly when the redisplay
shortcuts are used, like when you type ^O at then end of a line.

It's not so easy to fix because the code has become so messy after the first
implementation of the extents (the one using the intervals paradigm).  We want
to fix this by redoing the redisplay code, at least redesiging the data
structures representing the contents of the screen.  

A quick fix could be to never use this cache and always call glyphs_from_bufpos
starting from the window_start position when mapping screen coordinates to
pixel coordinates.  This would make event-x and event-y a little slower.

Matthieu

From help-lucid-emacs-request@lucid.com  Tue Jul 21 10:06:34 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA26884; Tue, 21 Jul 92 10:06:34 PDT
Received: by heavens-gate.lucid.com id AA05892g; Tue, 21 Jul 92 09:58:37 PDT
Received: from CAMIS.Stanford.EDU by heavens-gate.lucid.com id AA05888g; Tue, 21 Jul 92 09:58:28 PDT
Received: from mcs-ipc-4.Stanford.EDU by CAMIS.Stanford.EDU (4.1/inc-1.0)
	id AA14311; Tue, 21 Jul 92 10:08:04 PDT
Date: Tue, 21 Jul 1992 10:06:24 -0700 (PDT)
From: Kevin Brock <Brock@sumex-aim.stanford.edu>
Sender: Brock@sumex-aim.stanford.edu
Reply-To: Brock@sumex-aim.stanford.edu
Subject: Is there a timetable?
To: help-lucid-emacs@lucid.com
Message-Id: <Ximap.711738484.1575.brock@MCS-IPC-4>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

There seem to be a lot of things intended for the 19.3
version of Lucid GNU Emacs.  Is there any sort of timetable
for that release yet?

-----------

Kevin Brock
brock@sumex-aim.stanford.edu


From help-lucid-emacs-request@lucid.com  Wed Jul 22 02:36:59 1992
Received: from lucid.com ([192.31.212.72]) by labrea.Stanford.EDU (4.1/1.34)
	id AA29189; Wed, 22 Jul 92 02:36:59 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA08056g; Wed, 22 Jul 92 02:22:19 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA09080; Wed, 22 Jul 92 05:31:55 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA08864; Wed, 22 Jul 92 05:30:53 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA03742; Wed, 22 Jul 92 05:31:22 -0400
Path: uunet!dtix!darwin.sura.net!Sirius.dfn.de!fauern!LRZnews!urmel.vta.mw.tu-muenchen.de!wolfgg
From: wolfgg%urmel.vta.mw.tu-muenchen.de@lucid.com (Wolfgang Goettert)
Newsgroups: alt.lucid-emacs.help
Subject: lhilit, where ?
Message-Id: <1992Jul22.092403.2121@news.lrz-muenchen.de>
Date: 22 Jul 92 09:24:03 GMT
Reply-To: wolfgg%urmel.vta.mw.tu-muenchen.de@lucid.com
Organization: Inst. Chem. Engng., TU Munich, Germany
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In an article posted recently in this group I found a reference
to a lhilit Package. I did not find it in my distribution, so where can 
I find it (and other contributed stuff).

Wolfgang

From help-lucid-emacs-request@lucid.com  Wed Jul 22 06:13:00 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA29534; Wed, 22 Jul 92 06:13:00 PDT
Received: by heavens-gate.lucid.com id AA08264g; Wed, 22 Jul 92 06:02:08 PDT
Message-Id: <9207221302.AA08264@lucid.com>
Received: from att.att.com (att-out.att.com) by heavens-gate.lucid.com id AA08260g; Wed, 22 Jul 92 06:01:06 PDT
From: @heavens-gate.lucid.com, @jolt.att.com:swu@att.com
Date: Wed, 22 Jul  09:08:15 1992
To: help-lucid-emacs@lucid.com
Subject: subscribe
Cc: swu@att.com


Please subscribe me.

Chi-Shan Wu
swu@probe.att.com

From help-lucid-emacs-request@lucid.com  Wed Jul 22 06:43:07 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA29623; Wed, 22 Jul 92 06:43:07 PDT
Received: by heavens-gate.lucid.com id AA08313g; Wed, 22 Jul 92 06:32:15 PDT
Received: from relay2.UU.NET by heavens-gate.lucid.com id AA08309g; Wed, 22 Jul 92 06:32:01 PDT
Received: from ingr.ingr.com by relay2.UU.NET with SMTP 
	(5.61/UUNET-internet-primary) id AA07843; Wed, 22 Jul 92 09:41:38 -0400
Received: by ingr.ingr.com (5.61/INGR-1.1)
	id AA13380; Wed, 22 Jul 92 08:46:58 -0500
Received: from simpson.turtles by turtles (4.1/SMI-4.1)
	id AA13252; Wed, 22 Jul 92 16:40:17 IDT
Received: by simpson.turtles (4.1/SMI-4.1)
	id AA09332; Wed, 22 Jul 92 16:40:18 IDT
From: matis!amir@uunet.UU.NET (Amir Katz)
Message-Id: <9207221340.AA09332@simpson.turtles>
Subject: Overlapping extents in lhilit.el
To: help-lucid-emacs@lucid.com (Lucid Emacs help M.L.)
Date: Wed, 22 Jul 92 16:40:17 EET DST
Organization: SEE Technologies Ltd.
Reply-To: matis!ingr.COM!amir%matis.UUCP@uunet.UU.NET
X-Reply-To: amir%matis.UUCP@ingr.COM
X-Mailer: ELM [version 2.3 PL11]

Hi,
I'm using the recently-posted highlight package, lhilit.el, which hilites
regions according to the mode and the context. For example, in a perl file,
all 'if' statements are colored in one color (say, red), comments (anything
between '#' and EOL) are colored in another color, etc.
The problem is that the syntax is determined by regular expressions, which
may overlap. Examples from a typical perl script:

1. Next line, the '#' is purple (a comment), but the 'if' is red, even
   though it's inside a comment.

   # If no args, kick ass.

2. In the next line, the 'if' is red (OK), the '($' are black (OK, simple
statements), but from the '#' till EOL it's purple - a comment (WRONG).

   if ($#ARGV == -1) {

My question is: is it possible to short-circuit the expressions, so if a
comment is detected, no other regexp is tried?
-- 
/* --------------------------------------------------------------------- */
/* Amir J. Katz          | Internet: amir@matis.ingr.COM                 */
/* System Specialist     | UUCP:     ...!uunet!ingr!matis!amir           */
/* SEE Technologies Ltd. | Voice:    +972 52-584684, Fax: +972 52-543917 */
/* ............... Solaris 2.0 - The Final Frontier ? .................. */

From help-lucid-emacs-request@lucid.com  Wed Jul 22 07:56:50 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA00601; Wed, 22 Jul 92 07:56:50 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA08452g; Wed, 22 Jul 92 07:47:17 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA05328; Wed, 22 Jul 92 10:56:54 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA05320; Wed, 22 Jul 92 10:56:51 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA07094; Wed, 22 Jul 92 10:57:21 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!mcsun!dxcern!dxcern!defert
From: defert%dxcern.cern.ch@lucid.com (Philippe Defert)
Subject: Re: (no subject given)
In-Reply-To: oaf%vingmed.no@lucid.com's message of Tue, 21 Jul 92 15:31:26 +0200
Message-Id: <DEFERT.92Jul22164503@gnuisance.cern.ch>
Organization: CERN, European Research Center for Particle Physics
References: <9207211331.AA08918@vingmed.no>
Date: Wed, 22 Jul 1992 15:45:03 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

>>>>> On Tue, 21 Jul 92 15:31:26 +0200, oaf%vingmed.no@lucid.com (Ole Asbjorn Fadum) said:


Ole> HELP

Ole> I've retrieved the lucid-emacs source but can't get it to
Ole> compile. I'm using a SPARCstation 1 SUNos 4.1.1 and gcc 1.40.
Ole> I've got a lot of complaints of definitions on strlength().  I've
Ole> tracked this down to the gcc redifinition of size_t from int to
Ole> unsigned long.

Ole> I've also got an error in EmacsShell.c on macro XtIsWMShell(),
Ole> this was fixed by include <X11/ObjectP.h>.

Did not have this problem with gcc 2.2.2 !!!

Ole> I've also pulled off the SUN4 binary but the only result I've got
Ole> is a complain about my DISPLAY variable.

Ole> I've tried 'host:0.0', 'unix:0.0', '0:0' but same result.

Wrong error message, try to define EMACSLOADPATH and then it seems to
work OK. It seems the lread.c is modified from GNU emacs and that it
is coded to go out if that variable is not set !!!

Ole> ole asbjorn fadum (oaf@vingmed.no)

Amicalement.
--

  ************************************************************************
  *  Philippe Defert: Computing and Networks Division                    *
  *                   CERN,  European Laboratory for Particle Physics    *
  ************************************************************************
  *  Earth mail:                     |          E*mail:                  *
  *     CERN / CN / CO               |      defert@dxcern.cern.ch        *
  *  CH*1211 Geneve 23. Switzerland. |      defert@dxcern.UUCP           *
  *  Voice:                          |      defert@dxcern.bitnet         *
  *     + 41 22 7673923              |      psi%02284681140551::defert   *
  ************************************************************************
  *                                              | \                     *
  *      D`es que le vent soufflera,             |   \                   *
  *      Je repartira.                          /|     \                 *
  *      D`es que les vents tourneront,        / |       \               *
  *      Nous nous en allerons.               /__|_________\             * 
  *                                           \____________/             *  
  ************************************************************************

From help-lucid-emacs-request@lucid.com  Wed Jul 22 09:21:53 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA00864; Wed, 22 Jul 92 09:21:53 PDT
Received: by heavens-gate.lucid.com id AA08603g; Wed, 22 Jul 92 09:13:39 PDT
Received: from relay2.UU.NET by heavens-gate.lucid.com id AA08596g; Wed, 22 Jul 92 09:12:33 PDT
Received: from ingr.ingr.com by relay2.UU.NET with SMTP 
	(5.61/UUNET-internet-primary) id AA17427; Wed, 22 Jul 92 12:22:04 -0400
Received: by ingr.ingr.com (5.61/INGR-1.1)
	id AA28950; Wed, 22 Jul 92 11:27:04 -0500
Received: from simpson.turtles by turtles (4.1/SMI-4.1)
	id AA13696; Wed, 22 Jul 92 19:16:52 IDT
Received: by simpson.turtles (4.1/SMI-4.1)
	id AA11148; Wed, 22 Jul 92 19:16:54 IDT
From: matis!amir@uunet.UU.NET (Amir Katz)
Message-Id: <9207221616.AA11148@simpson.turtles>
Subject: CTRL-N does not keep columns corectly
To: help-lucid-emacs@lucid.com (Lucid Emacs help M.L.)
Date: Wed, 22 Jul 92 19:16:52 EET DST
Organization: SEE Technologies Ltd.
Reply-To: matis!ingr.COM!amir%matis.UUCP@uunet.UU.NET
X-Reply-To: amir%matis.UUCP@ingr.COM
X-Mailer: ELM [version 2.3 PL11]

In Emacs-18.5x, when I hit the down arrow (or CTRL-N) the point moves down
and remains in the same column, if possible - if the line is shorted, it is
positioned at EOL, otherwise at column N, where N is the initial column. N
never changes.

In Lucid Emacs, the point is always positioned at the last N, so if initial
N was 100, and next line has only 90 columns, at the third line it will try
to go to col. 90. If the line is shorter, it will got to EOL. So N is always
getting the last position and decreasing. When you hit an empty line, N := 0
and that's it.

Is this a bug or a feature (:-) ? IMHO, it's annoying.
-- 
/* --------------------------------------------------------------------- */
/* Amir J. Katz          | Internet: amir@matis.ingr.COM                 */
/* System Specialist     | UUCP:     ...!uunet!ingr!matis!amir           */
/* SEE Technologies Ltd. | Voice:    +972 52-584684, Fax: +972 52-543917 */
/* ............... Solaris 2.0 - The Final Frontier ? .................. */

From help-lucid-emacs-request@lucid.com  Wed Jul 22 09:46:24 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01003; Wed, 22 Jul 92 09:46:24 PDT
Received: by heavens-gate.lucid.com id AA08680g; Wed, 22 Jul 92 09:38:20 PDT
Received: from watergate.lucid ([192.31.212.117]) by heavens-gate.lucid.com id AA08674g; Wed, 22 Jul 92 09:37:40 PDT
Received: by watergate.lucid (4.1/SMI-4.1)
	id AA17289; Wed, 22 Jul 92 09:45:52 PDT
Date: Wed, 22 Jul 92 09:45:52 PDT
From: eb%watergate@lucid.com (Eric Benson)
Message-Id: <9207221645.AA17289@watergate.lucid>
To: amir@matis.ingr.COM
Cc: help-lucid-emacs@lucid.com (Lucid Emacs help M.L.)
Subject: Re: CTRL-N does not keep columns corectly
In-Reply-To: Amir Katz's message of Wed 22-Jul-92 19:16:52 EET <9207221616.AA11148@simpson.turtles>
References: <9207221616.AA11148@simpson.turtles>
Reply-To: eb@lucid.com

I don't see the behavior you see.  Have you possibly set the goal
column accidentally?

From help-lucid-emacs-request@lucid.com  Wed Jul 22 10:03:58 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01075; Wed, 22 Jul 92 10:03:58 PDT
Received: by heavens-gate.lucid.com id AA08717g; Wed, 22 Jul 92 09:52:28 PDT
Received: from JUNIN.MT.CS.CMU.EDU by heavens-gate.lucid.com id AA08708g; Wed, 22 Jul 92 09:50:41 PDT
Received: from junin.mt.cs.cmu.edu by JUNIN.MT.CS.CMU.EDU id aa06893;
          22 Jul 92 12:59:41 EDT
To: matis!ingr.COM!amir%matis.UUCP@UUNET.uu.NET
Return-Receipt-To: toad@cs.cmu.edu
Cc: "Lucid Emacs help M.L." <help-lucid-emacs@lucid.com>
Subject: Re: CTRL-N does not keep columns corectly 
In-Reply-To: Your message of Wed, 22 Jul 92 19:16:52 +0700.
             <9207221616.AA11148@simpson.turtles> 
Date: Wed, 22 Jul 92 12:59:31 -0400
Message-Id: <6890.711824371@JUNIN.MT.CS.CMU.EDU>
From: Todd_Kaufmann@JUNIN.MT.CS.CMU.EDU

> In Lucid Emacs, the point is always positioned at the last N, so if initial
> N was 100, and next line has only 90 columns, at the third line it will try
> to go to col. 90. If the line is shorter, it will got to EOL. So N is always
> getting the last position and decreasing. When you hit an empty line, N := 0
> and that's it.
> 
> Is this a bug or a feature (:-) ? IMHO, it's annoying.

Never seen this.

Are you loading some customized version of C-n?  What does C-h c C-n say?

Does it happen when you start with no .emacs ("lemacs -q") ?

Have you been hitting set-goal-column (C-x C-n)?  If so, use C-u C-x C-n
to unset it, and see if problem persists.

 -todd

From help-lucid-emacs-request@lucid.com  Wed Jul 22 12:13:03 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01570; Wed, 22 Jul 92 12:13:03 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA09197g; Wed, 22 Jul 92 12:01:12 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA19715; Wed, 22 Jul 92 15:10:48 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA19703; Wed, 22 Jul 92 15:10:44 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA08499; Wed, 22 Jul 92 15:11:07 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!zaphod.mps.ohio-state.edu!uwm.edu!src.honeywell.com!thompson
From: thompson@src.honeywell.com (Todd Thompson)
Subject: segmentation fault
Message-Id: <1992Jul22.190432.3238@src.honeywell.com>
Organization: Honeywell Systems & Research Center
Date: Wed, 22 Jul 1992 19:04:32 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com



I saw in the help-lucid-emacs file that I received with the tar file for
lemacs that others have had this problem, but I never saw what the solution
was. 

Problem setup:
  Sun sparc2
  SunOS 4.1.1
  using motif widget set (not lucid or olit)
  using GCC

When I try to run xemacs, I get a segmentation fault.  Where can I start
looking? Any help would be appreciated, Thanks in advance.

Todd Thompson
From help-lucid-emacs-request@lucid.com  Wed Jul 22 12:13:03 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01571; Wed, 22 Jul 92 12:13:03 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA09196g; Wed, 22 Jul 92 12:01:12 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA19713; Wed, 22 Jul 92 15:10:48 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA19702; Wed, 22 Jul 92 15:10:44 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA08497; Wed, 22 Jul 92 15:11:06 -0400
Path: uunet!mcsun!corton!babbage!imag!imag.fr!amouroux
From: amouroux%imag.fr@lucid.com (Remy Amouroux)
Newsgroups: alt.lucid-emacs.help
Subject: Problem with Lucid Emacs 19.2
Keywords: selective-display, new menu, overlay-arrow, scroll with mouse
Message-Id: <37368@imag.imag.fr>
Date: 22 Jul 92 15:50:23 GMT
Reply-To: chabert%imag.fr@lucid.com (Annie CHABERT)
Organization: IMAG Institute, University of Grenoble, France
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I was working on emacs 18.58.4 and I started to look at Lucid Emacs 19.1
and 19.2 for its graphical facilities. But I have many troubles.
If someone could help me it will be fantastic.

There are different kind of questions :

        * Phylosophy :
        Which are the main differences between Lucid-emacs 19.1 and 19.2 ?
        What is new and/or debugged?

        * Compatibility with Emacs :

        1 - I noticed a problem with the selective-display process.
        Running lucid-emacs (19.1 or 19.2), I can change the value of the
        selective-display but nothing happened in my current buffer.
        Is there something wrong with my installation or ...?

        2 - Adding new menu :
        I would like to add new menu in the menubar with
        'add-menu-item. The result is the helps menu is moved near the Buffers
        menu and mine is at the right corner of the menu bar

        3 - overlay-arrow-string :
        I'd like to know if it's possible to change the default arrow by my own
 string . This was allowed in Emacs.
        And is it possible to have many arrows (or "marks") at the same time ?
        How can I do it ?

	4 - I have seen the word scrollbar in mouse.el : what about ??
	Anyway, i try to scroll with mouse on the modeline, Nothing is binding.
	What I have to do to make it work ?

Hope to have answers soon. Thank you

A.Chabert
chabert@imag.fr (Annie CHABERT)
-- 
-------------------------------------------------------------------------------
                           |
 AMOUROUX Remy             | I don't want to start any Blasphemous Rumours 
 amouroux@samoa.imag.fr    | But I think that God's got a thick sense of humour 
 a good and brave man      | And when I die, I expect to find him laughing
  			   |
-------------------------------------------------------------------------------

From help-lucid-emacs-request@lucid.com  Wed Jul 22 13:15:44 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01746; Wed, 22 Jul 92 13:15:44 PDT
Received: by heavens-gate.lucid.com id AA09428g; Wed, 22 Jul 92 13:07:48 PDT
Received: from eas.gatech.edu by heavens-gate.lucid.com id AA09424g; Wed, 22 Jul 92 13:04:10 PDT
Received: by eas.gatech.edu (AIX 3.1/UCB 5.61/3.1)
	id AA37315; Wed, 22 Jul 92 16:13:40 -0400
Date: Wed, 22 Jul 92 16:13:40 -0400
From: Ryan Mulderig <ryan@eas.gatech.edu>
Message-Id: <9207222013.AA37315@eas.gatech.edu>
To: help-lucid-emacs@lucid.com
Subject: Lucid on RS6000 running Aix 3.2

I have tried and failed to bring it up. Notable problems:

in editfns.c 

- Sunix_sync not defined
- Sdefault_file_mode not defined

(got past by commenting out lines that caused failue - two of them)

in loading of temacs

- no entry point or export symbols found

this is where I crahed and burned

I would love any help to get past this problem.



Signature Under Construction

From help-lucid-emacs-request@lucid.com  Wed Jul 22 13:29:24 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01776; Wed, 22 Jul 92 13:29:24 PDT
Received: by heavens-gate.lucid.com id AA09461g; Wed, 22 Jul 92 13:20:35 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA09457g; Wed, 22 Jul 92 13:18:39 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA12113; Wed, 22 Jul 92 13:28:21 PDT
Date: Wed, 22 Jul 92 13:28:21 PDT
Message-Id: <9207222028.AA12113@thalidomide.lucid>
X-Windows: graphics hacking :: roman numerals : sqrt(pi)
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: Brock@sumex-aim.stanford.edu
Cc: help-lucid-emacs@lucid.com
Subject: Re: Is there a timetable?
In-Reply-To: Kevin Brock's message of Tue 21-Jul-92 10:06:24 -0700 <Ximap.711738484.1575.brock@MCS-IPC-4>
References: <Ximap.711738484.1575.brock@MCS-IPC-4>

In message <Ximap.711738484.1575.brock@MCS-IPC-4> Kevin Brock wrote:
>
> There seem to be a lot of things intended for the 19.3
> version of Lucid GNU Emacs.  Is there any sort of timetable
> for that release yet?

Not particularly; we were going to hold off releasing a new version until
some critical mass of bugs were fixed, or some winning new features were
added.  We'll probably make a release some time soon, but I don't know when.

In a perfect world, when we made a release, everyone would upgrade, meaning
that we wouldn't have to think about more than one version at a time.  It
seems to me that the more frequently we make releases, the less likely this
is to happen.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Wed Jul 22 13:33:38 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01787; Wed, 22 Jul 92 13:33:38 PDT
Received: by heavens-gate.lucid.com id AA09471g; Wed, 22 Jul 92 13:25:18 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA09464g; Wed, 22 Jul 92 13:23:29 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA12116; Wed, 22 Jul 92 13:31:34 PDT
Date: Wed, 22 Jul 92 13:31:34 PDT
Message-Id: <9207222031.AA12116@thalidomide.lucid>
X-Windows: The joke that kills.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: smiley@akasha.eng.hou.compaq.com (Colin Smiley)
Cc: help-lucid-emacs@lucid.com
Subject: Re: lemacs and the minibuffer...
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Colin Smiley's message of  21-Jul-92 14:08:05 GMT <1992Jul21.140805.5778@twisto.eng.hou.compaq.com>
References: <1992Jul21.140805.5778@twisto.eng.hou.compaq.com>

In message <1992Jul21.140805.5778@twisto.eng.hou.compaq.com> Colin Smiley wrote:
>
> Does lemacs-19.2 handle a separate minibuffer?  This is one of the
> major things which is keeping me from using it...

No, it doesn't.  It used to, a long time ago (back before we diverged from
FSF's v19), but it didn't work very well, meaning it crashed all the time,
and we didn't have time to fix it, so we just disabled it.  You might try
re-enabling it and see if it still breaks.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Wed Jul 22 14:37:25 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01934; Wed, 22 Jul 92 14:37:25 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA09785g; Wed, 22 Jul 92 14:29:12 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA01729; Wed, 22 Jul 92 17:38:47 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA01723; Wed, 22 Jul 92 17:38:46 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA09284; Wed, 22 Jul 92 17:39:20 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!walter!porthos!sapphire!gwf
From: gwf@sapphire.bellcore.com (George W. Fleming)
Subject: Re: segmentation fault
Organization: Bellcore, Livingston, NJ
Date: 22 Jul 92 20:48:09 GMT
Message-Id: <gwf.711838089@sapphire>
References: <1992Jul22.190432.3238@src.honeywell.com>
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

thompson@src.honeywell.com (Todd Thompson) writes:



>I saw in the help-lucid-emacs file that I received with the tar file for
>lemacs that others have had this problem, but I never saw what the solution
>was. 

>Problem setup:
>  Sun sparc2
>  SunOS 4.1.1
>  using motif widget set (not lucid or olit)
>  using GCC

>When I try to run xemacs, I get a segmentation fault.  Where can I start
>looking? Any help would be appreciated, Thanks in advance.

>Todd Thompson


I had a similar setup (except that I am on SunOS 4.1.2) and I got
some sort of "Cannot Malloc" error.  I never could figure out why and
I gave up.  Perhaps these problems only occur when used with Motif?






-- 
-------------------------
George W. Fleming
gwf@sapphire.bellcore.com
-------------------------

From help-lucid-emacs-request@lucid.com  Wed Jul 22 17:14:39 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA02269; Wed, 22 Jul 92 17:14:39 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA10238g; Wed, 22 Jul 92 17:06:33 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA06033; Wed, 22 Jul 92 20:16:10 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA06027; Wed, 22 Jul 92 20:16:09 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA10208; Wed, 22 Jul 92 20:16:43 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!haven.umd.edu!darwin.sura.net!mips!sdd.hp.com!decwrl!concert!rock!fletcher!mcmahan
From: mcmahan@cs.unca.edu (Scott McMahan -- Genesis mailing list owner)
Subject: Lemacs 19.2 sources or binaries for DEC stations...
Message-Id: <1992Jul22.233139.23198@cs.unca.edu>
Organization: University of North Carolina at Asheville
X-Newsreader: Tin 1.1 PL3
Date: Wed, 22 Jul 1992 23:31:39 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Does anyone have source code or binaries for lemacs 19.2 that compiled
on a DEC station?

I'm pretty sure someone has done it before, and it would save me
(and probably a lot of other people) a lot of hassle to have
it.

Scott




From help-lucid-emacs-request@lucid.com  Wed Jul 22 22:19:18 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA02846; Wed, 22 Jul 92 22:19:18 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA10908g; Wed, 22 Jul 92 22:08:21 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA14305; Thu, 23 Jul 92 01:17:58 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA14296; Thu, 23 Jul 92 01:17:54 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA12664; Thu, 23 Jul 92 01:18:32 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!stanford.edu!CSD-NewsHost.Stanford.EDU!Xenon.Stanford.EDU!hoelzle
From: hoelzle@Xenon.Stanford.EDU (Urs Hoelzle)
Subject: Lucid emacs 19.2 loops with gdb
Message-Id: <hoelzle.711868156@Xenon.Stanford.EDU>
Organization: CS Department, Stanford University, California, USA
Distribution: alt
Date: 23 Jul 92 05:09:16 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I often run into this problem with 19.2: I run gdb (4.6) and press M-n
(defined to do a gdb-next) several times in quick succession.  When
the second M-n is pressed before the first gdb-next has completed
(written its output), emacs goes into an infinite loop (100% CPU
usage, can't be stopped by C-c C-c or C-g).  Same behavior with other
gdb commands (e.g. stepi).  I've never had the problem with GNU emacs.

Has anyone else seen this problem?  Any workarounds?  gdb 4.6 seems
quite a bit slower than earlier versions, so I accidentally "type
ahead" quite often...sigh.

-Urs

----------------------------------------------------------------------------
Urs Hoelzle                                              urs@cs.stanford.EDU
Computer Systems Laboratory, CIS 57, Stanford University, Stanford, CA 94305

From help-lucid-emacs-request@lucid.com  Thu Jul 23 08:19:00 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA04416; Thu, 23 Jul 92 08:19:00 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA11591g; Thu, 23 Jul 92 08:05:13 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA28950; Thu, 23 Jul 92 11:14:52 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA28944; Thu, 23 Jul 92 11:14:50 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA17162; Thu, 23 Jul 92 11:15:33 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!zaphod.mps.ohio-state.edu!cs.utexas.edu!csc.ti.com!tilde.csc.ti.com!fstop.csc.ti.com!fstop.csc.ti.com!kenb
From: kenb@dadd.ti.com (Ken Butler)
Subject: Re: CTRL-N does not keep columns corectly 
In-Reply-To: Todd_Kaufmann@JUNIN.MT.CS.CMU.EDU's message of Wed, 22 Jul 92 12:59:31 -0400
Message-Id: <KENB.92Jul23092659@atg2.dadd.ti.com>
Organization: Texas Instruments, Inc., Dallas, TX
References: <6890.711824371@JUNIN.MT.CS.CMU.EDU>
Date: Thu, 23 Jul 1992 15:26:59 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Regarding Re: CTRL-N does not keep columns corectly ;
   Todd_Kaufmann@JUNIN.MT.CS.CMU.EDU adds:

> In Lucid Emacs, the point is always positioned at the last N, so if initial
> N was 100, and next line has only 90 columns, at the third line it will try
> to go to col. 90. If the line is shorter, it will got to EOL. So N is always
> getting the last position and decreasing. When you hit an empty line, N := 0
> and that's it.
> 
> Is this a bug or a feature (:-) ? IMHO, it's annoying.

Todd> Never seen this.

I'm seeing the same behavior as the previous poster.  I'm using the "out of
the box" lemacs version 19.2 on a Sun 4/370, OS 4.1.1 and X11R5 (vtwm)

Todd> Are you loading some customized version of C-n?  What does C-h c C-n
Todd> say?

Nope.  It says "C-n runs the command next-line"

Todd> Does it happen when you start with no .emacs ("lemacs -q") ?

Yes.

Todd> Have you been hitting set-goal-column (C-x C-n)?  If so, use C-u C-x C-n
Todd> to unset it, and see if problem persists.

Still does it.

If anyone can find the fix, I'd appreciate it.

Ken
--

*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
Kenneth M. Butler                           (214) 997-6370 (office)
Texas Instruments                           (214) 997-2049 (FAX)
P.O. Box 655303 MS 3683                     kenb@dadd.ti.com
Dallas, TX 75265
*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*

From help-lucid-emacs-request@lucid.com  Thu Jul 23 08:39:23 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA04744; Thu, 23 Jul 92 08:39:23 PDT
Received: by heavens-gate.lucid.com id AA11667g; Thu, 23 Jul 92 08:28:11 PDT
Received: from brahma.imag.fr by heavens-gate.lucid.com id AA11661g; Thu, 23 Jul 92 08:27:47 PDT
Received: from imag.imag.fr by brahma.imag.fr with SMTP id AA01173
  (5.65c8/IDA-1.4.4 for <help-lucid-emacs@lucid.com>); Thu, 23 Jul 1992 17:37:36 +0200
Received: from maupiti.imag.fr by imag.imag.fr (5.54/5.17)
	id AA28334; Thu, 23 Jul 92 17:39:08 +0200
Received: by maupiti.imag.fr (5.57/5.17)
	id AA07370; Thu, 23 Jul 92 17:36:18 +0200
Message-Id: <9207231536.AA07370@maupiti.imag.fr>
To: help-lucid-emacs@lucid.com
Reply-To: chabert%maupiti.imag.fr@lucid.com
Return-Receipt-To: chabert%maupiti.imag.fr@lucid.com
Subject: Problems using lucid-emacs-19.2
Date: Thu, 23 Jul 92 17:36:17 +0200
From: Annie CHABERT <chabert%mururoa.imag.fr@lucid.com>
X-Mts: smtp


I am developping a new mode for a Object Oriented Language developped in our team.
I was working on emacs 18.58.4 and I started to look at Lucid Emacs 19.1 
and 19.2 for its graphical facilities. But I have some troubles. 
If someone could help me it will be fantastic.

There are different kind of questions :

	* Phylosophy :
	Which are the main differences between Lucid-emacs 19.1 and 19.2 ?
	What is new and/or debugged?

	* Compatibility with Emacs :
	
	1 - I noticed a problem with the selective-display process. 
	Running lucid-emacs (19.1 or 19.2), I can change the value of the
	selective-display but nothing happened in my current buffer.
	Is there something wrong with my installation or ...?

	2 - Adding new menu :
	I would like to add new menu in the menubar with 
	'add-menu-item. The result is the helps menu is moved near the Buffers
	menu and mine is at the right corner of the menu bar

	3 - overlay-arrow-string :
	I'd like to know if it's possible to change the default arrow by my own	
	string . This was allowed in Emacs.
	And is it possible to have many arrows (or "marks") at the same time ?
	How can I do it ?

Hope to have answers soon. Thank you

A.Chabert

Rem : I have sent the same mail in alt.lucid-emacs.help . 
If this mail is not addressed to the right group, please send me the
correct address.
Thanks.

-------------------------------------------------------------------------
 		Annie CHABERT    chabert@imag.fr,
 Unite Mixte Bull-Imag,   ZI de Mayencin,  2 rue Vignate,  38610 Gieres.
 	   Ph. (33) 76 63 48 50,	Fax. (33) 76 54 76 15		
-------------------------------------------------------------------------





From help-lucid-emacs-request@lucid.com  Thu Jul 23 09:44:52 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA04966; Thu, 23 Jul 92 09:44:52 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA12090g; Thu, 23 Jul 92 09:35:26 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA04565; Thu, 23 Jul 92 12:44:55 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA04547; Thu, 23 Jul 92 12:44:51 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA17747; Thu, 23 Jul 92 12:45:34 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!sun-barr!cs.utexas.edu!csc.ti.com!tilde.csc.ti.com!fstop.csc.ti.com!fstop.csc.ti.com!kenb
From: kenb@dadd.ti.com (Ken Butler)
Subject: Re: CTRL-N does not keep columns corectly 
In-Reply-To: kenb@dadd.ti.com's message of Thu, 23 Jul 1992 15:26:59 GMT
Message-Id: <KENB.92Jul23110952@atg2.dadd.ti.com>
Organization: Texas Instruments, Inc., Dallas, TX
References: <6890.711824371@JUNIN.MT.CS.CMU.EDU> <KENB.92Jul23092659@atg2.dadd.ti.com>
Date: Thu, 23 Jul 1992 17:09:52 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Just figured out the problem.  By default, the "out of the box" lemacs
binds the arrow keys on the right side of my Sun keyboard to keyboard
macros which generate ctrl-n, ctrl-p, etc.  I just put the following
commands in my startup and everything works the way it should:

(global-set-key   'up        'previous-line)
(global-set-key   'down      'next-line)
(global-set-key   'left      'backward-char)
(global-set-key   'right     'forward-char)

I hope that this helps.

Ken
--

*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
Kenneth M. Butler                           (214) 997-6370 (office)
Texas Instruments                           (214) 997-2049 (FAX)
P.O. Box 655303 MS 3683                     kenb@dadd.ti.com
Dallas, TX 75265
*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*

From help-lucid-emacs-request@lucid.com  Thu Jul 23 10:08:47 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA05023; Thu, 23 Jul 92 10:08:47 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA12156g; Thu, 23 Jul 92 09:57:46 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA05441; Thu, 23 Jul 92 13:07:24 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA05430; Thu, 23 Jul 92 13:07:21 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA17862; Thu, 23 Jul 92 13:08:04 -0400
Path: uunet!cs.utexas.edu!natinst.com!news.dell.com!swrinde!elroy.jpl.nasa.gov!ufo!Aig.Jpl.Nasa.Gov!rouquett
From: rouquett@ai-cyclops.jpl.nasa.gov (Nicolas Rouquette)
Newsgroups: alt.lucid-emacs.help
Subject: Ilisp: interrupting the inferior lisp process
Message-Id: <1992Jul23.165340.15396@jpl-devvax.jpl.nasa.gov>
Date: 23 Jul 92 16:53:40 GMT
Reply-To: rouquett@ai-cyclops.jpl.nasa.gov
Followup-To: alt.lucid-emacs.help
Organization: NASA/Jet Propulsion Laboratory
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

THere seems to be a problem with Ilisp: both interrupt-subjob-ilisp 
and reset-ilisp don't affect the inferior ilisp process at all. 
Has anyone encountered this or is there a known workaround?

This occurs with lemacs 19.1 with binaries from lucid. We're running
both 4.1.1 and 4.1.2 and openwindows 3.0.

-- 
Nicolas Rouquette
Artificial Intelligence Group
Jet Propulsion Laboratory
California Institute of Technology
4800 Oak Grove Drive
M/S 525-3660
Pasadena, CA 91109

phone: (818) 306-6171
fax:   (818) 306-6912
Email: rouquett@aig.jpl.nasa.gov

From help-lucid-emacs-request@lucid.com  Thu Jul 23 11:00:15 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA00226; Thu, 23 Jul 92 11:00:15 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA12328g; Thu, 23 Jul 92 10:50:51 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA08627; Thu, 23 Jul 92 14:00:29 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA08621; Thu, 23 Jul 92 14:00:28 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA18147; Thu, 23 Jul 92 14:01:12 -0400
Path: uunet!tymix!gabriela!steve
From: steve@gabriela.tymnet.com (Steve Sandke)
Newsgroups: alt.lucid-emacs.help
Subject: lemacs is grabbing window focus when it isn't supposed to
Message-Id: <2115@tymix.Tymnet.COM>
Date: 23 Jul 92 17:53:21 GMT
Organization: BT North America, San Jose, CA
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I'm having a strange problem with lemacs 19.2.  Every once in a while, the 
program will grab "window focus", and won't give it up until I move the pointer 
into the lemacs window then back. 

I'm running under mwm (Motif 1.1.4) with X11R5 pl 13 on a Sun Sparcstation 1+.  

Any ideas?

-- 
-------------------
Steve Sandke
steve@orchid.tymnet.com


From help-lucid-emacs-request@lucid.com  Thu Jul 23 13:28:08 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA00871; Thu, 23 Jul 92 13:28:08 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA12816g; Thu, 23 Jul 92 13:18:34 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA21412; Thu, 23 Jul 92 16:28:13 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA21405; Thu, 23 Jul 92 16:28:11 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA20295; Thu, 23 Jul 92 16:28:56 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!cs.utexas.edu!lgc.com!garyt
From: garyt@lgc.com (Gary Thompson)
Subject: Re: lhilit, where ?
Message-Id: <garyt.711922538@lgc.com>
Organization: Landmark Graphics Corp., Houston, Tx.
References: <1992Jul22.092403.2121@news.lrz-muenchen.de>
Date: Thu, 23 Jul 1992 20:15:38 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

wolfgg@urmel.vta.mw.tu-muenchen.de (Wolfgang Goettert) writes:

>In an article posted recently in this group I found a reference
>to a lhilit Package. I did not find it in my distribution, so where can 
>I find it (and other contributed stuff).

I would also like to know where to get this package.  I wasn't able to
find it with archie.  Is there a repository where add-ons such as this
are being kept?

Thanks,
Gary
--
-----
Gary Thompson						gthompson@lgc.com
Landmark Graphics  Houston, TX			    Phone: (713) 579-4765

From help-lucid-emacs-request@lucid.com  Thu Jul 23 13:32:08 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA00889; Thu, 23 Jul 92 13:32:08 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA12831g; Thu, 23 Jul 92 13:22:48 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA21881; Thu, 23 Jul 92 16:32:25 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA21857; Thu, 23 Jul 92 16:32:19 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA20318; Thu, 23 Jul 92 16:33:03 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!cis.ohio-state.edu!news.sei.cmu.edu!fs7.ece.cmu.edu!crabapple.srv.cs.cmu.edu!netnews.srv.cs.cmu.edu!mjchan+
From: mjchan+@SUNMOON.NECTAR.CS.CMU.EDU (Ming-Jen Chan)
Subject: Info and Compose Key on DEC 5000/200
Message-Id: <MJCHAN+.92Jul23154227@SUNMOON.NECTAR.CS.CMU.EDU>
Date: Thu, 23 Jul 92 20:42:27 GMT
Organization: Carnegie Mellon
Reply-To: mjchan+@CS.CMU.EDU
Distribution: alt
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I could not get following two items working while running Lucid Emacs
19.2 on DEC 5000/200:

1/ While using following Info package which allows me to have local
info directory and compressed info files, I got complained with "No
such node: Pull-down Menus" etc... It can only find first three nodes,
License, Distrib and Intro while I was reading Emacs info. 

;; LCD Archive Entry:
;; info-dg|Dave Gillespie|daveg@synaptics.com
;; |Info reader with many enhancements; replaces standard info.el.
;; |92-03-04|1.04|~/modes/info.el

It worked fine when I switched back to the default info.el included in
19.2 release. Anyone out there has met this problem and has a fix? 

2/ How can I make the Compose key as Meta key? I have no problem with
this on GNU emacs 18.58. 

Thanks for the help. 

Ming-Jen Chan 

Computer Science, Carnegie Mellon University
E-mail: mjchan+@cs.cmu.edu
 Phone: (W) 412 268-3054 
	(H) 412 422-8040


From help-lucid-emacs-request@lucid.com  Thu Jul 23 14:58:39 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01086; Thu, 23 Jul 92 14:58:39 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA13043g; Thu, 23 Jul 92 14:46:10 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA07037; Thu, 23 Jul 92 17:55:40 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA07030; Thu, 23 Jul 92 17:55:31 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA21062; Thu, 23 Jul 92 17:56:08 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!darwin.sura.net!mips!sdd.hp.com!decwrl!deccrl!news.crl.dec.com!news!nntpd.lkg.dec.com!estacy.two.dec.com!chenis
From: chenis@estacy.two.dec.com (Kenneth J. Chenis)
Subject: Re: Lemacs 19.2 sources or binaries for DEC stations...
Message-Id: <1992Jul23.210931.19523@nntpd.lkg.dec.com>
Reply-To: chenis@estacy.two.dec.com (Kenneth J. Chenis)
Organization: Digital Equipment Corporation
References:  <1992Jul22.233139.23198@cs.unca.edu>
Date: Thu, 23 Jul 1992 21:09:31 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


Well, yes and no ... I do have the sources and binaries that compile
successfully on a DECstation, BUT, it doesn't seem to work ... every
time I invoke it, I get the following:

estacy> lemacs

-----Emacs: *scratch*              (Fundamental)----All-------------------------
Lisp Interaction)--All

This version of emacs only runs under X Windows (for now).
Check that your $DISPLAY environment variable is properly set.
estacy> 

If I start it directly (not via an xterm) I get nothing ... haven't had a
chance to debug the failure yet ... and it doesn't matter what DISPLAY
is set to ... I tried "0:0", "estacy:0", "estacy::0", "0::0", etc. etc.

--
-------------------------------------------------------------------------------
Ken Chenis					      Surfing On The Portable C
chenis@estacy.two.dec.com

From help-lucid-emacs-request@lucid.com  Fri Jul 24 07:32:54 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA03994; Fri, 24 Jul 92 07:32:54 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA15016g; Fri, 24 Jul 92 07:23:04 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA15948; Fri, 24 Jul 92 10:32:45 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA15942; Fri, 24 Jul 92 10:32:42 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA28535; Fri, 24 Jul 92 10:33:33 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!zaphod.mps.ohio-state.edu!sol.ctr.columbia.edu!ira.uka.de!math.fu-berlin.de!ki1.chemie.fu-berlin.de!richter
From: richter%ki1.chemie.fu-berlin.de@lucid.com (Thomas Richter)
Subject: Re: Lucid on RS6000 running Aix 3.2
Message-Id: <7KE5V1O@math.fu-berlin.de>
Organization: Free University of Berlin, Germany
References: <9207222013.AA37315@eas.gatech.edu>
Date: Fri, 24 Jul 1992 14:29:37 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Ryan Mulderig <ryan@eas.gatech.edu> writes:
>I have tried and failed to bring it up.

	I've tried it under AIX 3.1 and failed as well,
	just a little bit later...

> Notable problems:
>in editfns.c 
>- Sunix_sync not defined
>- Sdefault_file_mode not defined
>(got past by commenting out lines that caused failue - two of them)

	There is a section in editfns.c that is enclosed in
	'#ifdef unix ...#endif /* unix */' where these functions
	are defined.  Make sure unix is defined.

>in loading of temacs
>- no entry point or export symbols found

	Don't use 'ld' for loading.  Use 'cc' instead.

	There are some other gotchas:  You have to make sure that
	data.c uses 'drem' instead of 'remainder'.  There is a
	'#ifdef BSD' together with the striking comment
		"Maybe there's a better conditional for this".

	There was no hftctl.c or unexaix.c, which are required for
	'make install.aix'.  I just took them from the GNU emacs 18.58
	distribution, without the slightest idea whether it might
	work or not.

	I gave up when I got an error about lock-directory being void
	while 'temacs -batch -l loadup.el' was working on startup.el.

-- Thomas Richter
-- 
phone: +49 30 838-3408                          Freie Universitaet Berlin
psi:   (+262)45050230227::RICHTER               Institut f. Kristallographie
smtp:  <richter@ki1.chemie.fu-berlin.de>        Takustr. 6, D-1000 Berlin 33

From help-lucid-emacs-request@lucid.com  Fri Jul 24 10:43:03 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA04569; Fri, 24 Jul 92 10:43:03 PDT
Received: by heavens-gate.lucid.com id AA15654g; Fri, 24 Jul 92 10:29:48 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA15648g; Fri, 24 Jul 92 10:29:11 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA15150; Fri, 24 Jul 92 10:37:25 PDT
Date: Fri, 24 Jul 92 10:37:25 PDT
Message-Id: <9207241737.AA15150@thalidomide.lucid>
X-Windows: It could happen to you.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: richter%ki1.chemie.fu-berlin.de@lucid.com (Thomas Richter)
Cc: help-lucid-emacs@lucid.com
Subject: Re: Lucid on RS6000 running Aix 3.2
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Thomas Richter's message of Fri 24-Jul-92 14:29:37 GMT <7KE5V1O@math.fu-berlin.de>
References: <7KE5V1O@math.fu-berlin.de>
	<9207222013.AA37315@eas.gatech.edu>

In message <7KE5V1O@math.fu-berlin.de> Thomas Richter wrote:
>
> 	I gave up when I got an error about lock-directory being void
> 	while 'temacs -batch -l loadup.el' was working on startup.el.

This is because lisp/prim/startup.el wasn't allowing for the fact that the C
code might not have been compiled with support for locking.  Replace the
following two functions with the definition below.

	-- Jamie

(defun set-default-load-path ()
;  (send-string-to-terminal (format "\ninitial load path:\n %s" load-path))
;  (send-string-to-terminal (format "\ninitial exec path:\n %s\n" exec-path))
  ;;
  ;; Make sure there is a reasonable elisp library directory on the load path,
  ;; and a reasonable emacs utility directory on the exec-path, even if this
  ;; emacs was dumped with now-inappropriate defaults.  Look at the directory
  ;; from which this emacs image was run:
  ;;
  ;;   o  If it ends in .../src/, and ../lisp/ exists, then use that for the
  ;;      lisp library (likewise for /etc/ and /lock/).
  ;;   o  If there is a subdirectory of that dir called lisp/ (or etc/ or 
  ;;      lock/), then use that.
  ;;   o  If the emacs program that was run is itself a symlink, then chase
  ;;      the link and try again on the resultant directory.
  ;;
  ;; These heuristics fail if the emacs binary was copied from the main emacs
  ;; tree to some other directory, and links for the lisp directory were not
  ;; put in, but I can't think of a way around that.
  ;;
  (let ((lisp (find-default-load-path-internal "lisp"))
	(etc  (find-default-load-path-internal "etc"))
	(lock (and (boundp 'lock-directory)
		   (or lock-directory
		       (find-default-load-path-internal "lock")))))
    (if lisp
	(or (member lisp load-path)
	    (progn
	      ;; If the lisp dir isn't on the load-path, add it.
	      (setq load-path (append load-path (list lisp)))
	      ;; If the lisp dir wasn't on the load-path, then also add
	      ;; any direct subdirectories of the lisp directory to the
	      ;; load-path.
	      (let (;(files (directory-files lisp))
		    (files (directory-files lisp nil nil nil 'dirs-only))
		    file)
		(while files
		  (setq file (car files))
		  (if (and (not (member file '("." ".." "RCS")))
			   ;(file-directory-p
			    (setq file (expand-file-name file lisp))
			    ;)
			   (not (member file load-path)))
		      (setq load-path
			    (nconc load-path
				   (list (file-name-as-directory file)))))
		  (setq files (cdr files))))
	      )))
    (if etc
	(or (member etc exec-path)
	    (setq exec-path (append exec-path (list etc)))))
    (if (and (null exec-directory) etc)
	(setq exec-directory (file-name-as-directory etc)))
    (if (and (boundp 'Info-directory-list) (null Info-directory-list))
	(setq Info-directory-list
	      (list (expand-file-name "../info/" exec-directory))))
    (if (boundp 'lock-directory)
	(progn
	  (setq lock-directory lock)
	  (if (and lock-directory (null superlock-path))
	      (setq superlock-path
		    (concat lock-directory "!!!SuperLock!!!")))))
    (set-default-load-path-warning)))


(defun set-default-load-path-warning ()
  (if (and exec-directory load-path
	   (or (not (boundp 'lock-directory)) lock-directory))
      nil
    (save-excursion
      (set-buffer (get-buffer-create " *warning-tmp*"))
      (erase-buffer)
      (let ((fill-column 70)
	    warnings message guess)
	(if (and (boundp 'lock-directory) (null lock-directory))
	    (setq warnings (cons "lock-directory" warnings)))
	(if (null exec-directory)
	    (setq warnings (cons "exec-directory" warnings)))
	(if (null load-path)
	    (setq warnings (cons "load-path" warnings)))
	(cond ((cdr (cdr warnings))
	       (setq message (apply 'format "%s, %s, and %s" warnings)))
	      ((cdr warnings)
	       (setq message (apply 'format "%s and %s" warnings)))
	      (t (setq message (format "variable %s" (car warnings)))))
	(insert "couldn't find an obvious default for " message
		", and there were no defaults specified in paths.h when emacs "
		"was built.  Perhaps some directories don't exist, or the "
		"emacs executable, " execution-path " is in a strange place?")
	(setq guess (or exec-directory
			(car (reverse load-path))
			(and (string-match "/[^/]+$" execution-path)
			     (substring execution-path 0
					(match-beginning 0)))))
	(if (and guess (string-match "/\\(src\\|etc\\|lisp\\)/$" guess))
	    (setq guess (substring guess 0 (match-beginning 0))))
	(if (and guess (string-match "/$" guess))
	    (setq guess (substring guess 0 (match-beginning 0))))
	(if (and (boundp 'lock-directory) (null lock-directory))
	    (progn
	      (insert
	       "\n\nWithout lock-directory set, file locking won't work.  ")
	      (if guess
		  (insert
		   "Consider creating " guess "/lock/ as a directory or "
		   "symbolic link for use as the lock directory.  "))))

	(if (or (null exec-directory) (null load-path))
	    (insert
	     "\n\nWithout both exec-directory and load-path, emacs will "
	     "be very broken.  "))
	(if (and (null exec-directory) guess)
	    (insert
	     "Consider making a symbolic link from " guess
	     "/etc/ to wherever the appropriate emacs etc directory is"))
	(if (and (null load-path) guess)
	    (insert
	     (if exec-directory "Consider making a symbolic link " ", and ")
	     "from " guess
	     "/lisp/ to wherever the appropriate emacs lisp library is.  ")
	  (if (and (null exec-directory) guess) (insert ".")))
	(fill-region (point-min) (point-max))
	(goto-char (point-min))
	(insert "\nWARNING:\n")
	(send-string-to-terminal (buffer-string))
	(erase-buffer)
	t))))

From help-lucid-emacs-request@lucid.com  Fri Jul 24 12:27:27 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA04911; Fri, 24 Jul 92 12:27:27 PDT
Received: by heavens-gate.lucid.com id AA16136g; Fri, 24 Jul 92 12:17:55 PDT
Received: from gateway.bnr.ca by heavens-gate.lucid.com id AA16129g; Fri, 24 Jul 92 12:17:10 PDT
Received: from BNRECADA.BNR.CA by gateway.bnr.ca (5.61/1.34)
	id AA02186; Fri, 24 Jul 92 15:26:49 -0400
Message-Id: <9207241926.AA02186@gateway.bnr.ca>
Received: from BNRECADA.BNR.CA by BNRECADA.BNR.CA (IBM VM SMTP R1.2.1) with BSMTP id 3224; Fri, 24 Jul 92 15:23:02 EDT
Date:       24 Jul 92 15:24:00 EDT
To: help-lucid-emacs@lucid.com
From: Jeffrey (J.D.) Sparkes <JSPARKES%BNR.CA@lucid.com>
Subject:    patches for Hyperbole to run on lemacs19.2
Sender: Jeffrey (J.D.) Sparkes <JSPARKES%BNR.CA@lucid.com>

Hi, I've made Hyperbole work under Lucid emacs 19.2, and I'd like some
brave beta testers. :-).  Actually, everything seems to work fine,
with just one problem:

KNOWN BUG/PROBLEMS

1. sm-mouse-toggle-bindings (commonly bound to C-ct) does not preserve
   mode specific bindings because it only records the "default"
   bindings once.  Any advice on what to do for this is welcome.  (I
   find it annoying that I can't use the popup menu in Info-mode.)


Anyway, please try these patches and let me know if you have any problems.

*** 1.1	1992/07/15 20:51:21
--- hinit.el	1992/07/24 14:32:54
***************
*** 38,44 ****
  ;;; Public variables
  ;;; ************************************************************************

! (defconst hyperb:version "3.04" "Hyperbole revision number.")

  (defvar   hyperb:host-domain nil
    "<@domain-name> for current host.  Set automatically by 'hyperb:init'.")
--- 38,44 ----
  ;;; Public variables
  ;;; ************************************************************************

! (defconst hyperb:version "3.04+Lucid" "Hyperbole revision number.")

  (defvar   hyperb:host-domain nil
    "<@domain-name> for current host.  Set automatically by 'hyperb:init'.")
***************
*** 107,112 ****
--- 107,113 ----
    ;; Highlight explicit buttons whenever a file is read in.
    ;;
    (if hyperb:epoch-p (var:append 'find-file-hooks '(ep:but-create)))
+   (if hyperb:lucid-p (var:append 'find-file-hooks '(le:but-create)))
    ;;
    ;; Save button attribute file whenever same dir file is saved and
    ;; 'ebut:hattr-save' is non-nil.
*** 1.1	1992/07/14 17:24:04
--- hmouse-key.el	1992/07/24 14:34:12
***************
*** 88,93 ****
--- 88,98 ----
  		    (mouse::index mouse-right mouse-up)))
      (let ((wsys (sm-window-sys-term)))
        (cond
+        ;; Lucid emacs 19
+        ((string-match "Lucid" (emacs-version))
+ 	(mapcar '(lambda (key) (cons key (key-binding key)))
+ 		(list 'button2 'button2up 'button3 'button3up)))
+
         ;; X
         ((equal wsys "xterm")
  	(mapcar '(lambda (key) (cons key (lookup-key mouse-map key)))
***************
*** 120,125 ****
--- 125,135 ----
      (let ((wsys (sm-window-sys-term)))
        (cond
         ;; X
+        ((string-match "Lucid" (emacs-version))
+ 	(mapcar
+ 	 '(lambda (key-and-binding)
+ 	    (global-set-key (car key-and-binding) (cdr key-and-binding)))
+ 	 key-binding-list))
         ((equal wsys "xterm")
  	(mapcar
  	 '(lambda (key-and-binding)
***************
*** 148,154 ****
      ;; Ensure Gillespie's Info mouse support is off since
      ;; Hyperbole handles that.
      (setq Info-mouse-support nil)
!     (cond ((boundp 'epoch::version)
  	   (setq mouse-set-point-command 'mouse::set-point)
  	   (global-set-mouse mouse-middle mouse-down  'sm-depress)
  	   (global-set-mouse mouse-middle mouse-up    'smart-key-mouse)
--- 158,171 ----
      ;; Ensure Gillespie's Info mouse support is off since
      ;; Hyperbole handles that.
      (setq Info-mouse-support nil)
!     (cond ((string-match "Lucid" (emacs-version))
! 	   (defun le:mouse-set-point() (mouse-set-point (copy-event last-input-event)
))
! 	   (setq mouse-set-point-command 'le:mouse-set-point)
! 	   (global-set-key 'button2 'sm-depress)
! 	   (global-set-key 'button2up 'smart-key-mouse)
! 	   (global-set-key 'button3 'sm-depress-meta)
! 	   (global-set-key 'button3up 'smart-key-mouse-meta))
!           ((boundp 'epoch::version)
  	   (setq mouse-set-point-command 'mouse::set-point)
  	   (global-set-mouse mouse-middle mouse-down  'sm-depress)
  	   (global-set-mouse mouse-middle mouse-up    'smart-key-mouse)
*** 1.1	1992/07/15 15:32:51
--- hmouse-tag.el	1992/07/15 16:34:50
***************
*** 37,42 ****
--- 37,43 ----
    ;; wtags is Bob Weiner's personal, unreleased changes to "tags.el" to
    ;; do exact tag matching.  That package is not required to use this code.
    (or (load "wtags" t)
+       (and (string-match "Lucid" (emacs-version)) (load "etags"))
        (and (load "tags") (provide 'tags))))

  ;;; ************************************************************************
*** 1.1	1992/07/24 14:53:05
--- hsite-ex.el	1992/07/24 14:53:23
***************
*** 1,5 ****
  ;;!emacs
! ;; $Id: hsite-ex.el,v 1.1 1992/07/24 14:53:05 jsparkes Exp jsparkes $
  ;;
  ;; FILE:         hsite.el
  ;; SUMMARY:      Site-specific setup for Hyperbole
--- 1,5 ----
  ;;!emacs
! ;; $Id: hsite-ex.el,v 1.2 1992/05/14 10:11:45 rsw Exp $
  ;;
  ;; FILE:         hsite.el
  ;; SUMMARY:      Site-specific setup for Hyperbole
***************
*** 127,132 ****
--- 127,153 ----
  	"Machine specific val for empty loop counter, Epoch but flash delay.")
        )
    (defun hui:but-flash ())
+   )
+ ;;; Support button highlighting and flashing under Lucid emacs 19.
+ ;;;
+ (defvar hyperb:lucid-p
+   (string-match "Lucid" (emacs-version))
+   "Non-nil value indicates running Lucid emacs 19.")
+
+ (defvar hyperb:use-lucid-menubar t
+   "*Non-nil means to add the Hyperbole menu to the menubar under Lucid emacs."
)
+
+ (if hyperb:lucid-p
+     (progn
+       (require 'hui-lucid-b)
+       (fset 'hui:but-flash 'le:but-flash)
+       ;; This color cycling really must be done until a desired color is hit.
+       (le:cycle-but-color)
+       ;; If you use Epoch and find that the Hyperbole button flash time is
+       ;; too slow or too fast, adjust it here.
+       (defvar le:but-flash-time 1
+ 	"Time to flash button under Lucid emacs, in seconds.")
+       )
    )

  ;;; You may want to look at this file just to see what it does.
*** 1.1	1992/07/24 14:30:56
--- hui-lucid-b.el	1992/07/24 14:30:30
***************
*** 0 ****
--- 1,317 ----
+ ;;!emacs
+ ;; $Id: hui-ep-but.el,v 1.2 1992/05/14 10:12:14 rsw Exp $
+ ;;
+ ;; FILE:         hui-lucid-b.el
+ ;; SUMMARY:      Support for highlighting/flashing buttons under Lucid emacs 1
9.
+ ;; USAGE:        Lucid emacs Lisp Library
+ ;;
+ ;; AUTHOR:       Bob Weiner; Jeff Sparkes
+ ;; ORG:          Brown U.; Bell-Northern Research
+ ;;
+ ;; ORIG-DATE:    27-Apr-91 at 05:37:10
+ ;; LAST-MOD:
+ ;;
+ ;; This file is part of Hyperbole.
+ ;; It is for use with Epoch, a modified version of GNU Emacs.
+ ;;
+ ;; Copyright (C) 1990, 1991, Brown University and Alan M. Carroll
+ ;; Developed with support from Motorola Inc.
+ ;; Available for use and distribution under the same terms as GNU Emacs.
+ ;;
+ ;; DESCRIPTION:
+ ;;
+ ;;   This is truly prototype code.
+ ;;
+
+ ;;; ************************************************************************
+ ;;; Other required Elisp libraries
+ ;;; ************************************************************************
+
+ (require 'hbut)
+
+ ;;; ************************************************************************
+ ;;; Public variables
+ ;;; ************************************************************************
+
+ ;;; ************************************************************************
+ ;;; Public functions
+ ;;; ************************************************************************
+
+ (fset 'le:but-add 'epoch::add-button)
+
+ (defun le:but-color ()
+   "Return current color of buffer's buttons."
+   (if le:color-ptr
+       (car le:color-ptr)
+     (face-foreground (find-face 'default))))
+
+ (defun le:but-create (&optional start-delim end-delim regexp-match)
+   "Mark all hyper-buttons in buffer as Lucid extents, for later highlighting.
+ Will use optional strings START-DELIM and END-DELIM instead of default values.
+ If END-DELIM is a symbol, e.g. t, then START-DELIM is taken as a regular
+ expression which matches an entire button string.
+ If REGEXP-MATCH is non-nil, only buttons matching this argument are
+ highlighted."
+   (save-excursion
+     (map-extents (function (lambda (x y) (delete-extent x)))
+ 		 (current-buffer) (point-min) (point-max) nil))
+   (le:but-create-all start-delim end-delim regexp-match))
+
+ (defun le:but-create-all (&optional start-delim end-delim regexp-match)
+   "Mark all hyper-buttons in buffer as Lucid extents, for later highlighting.
+ Will use optional strings START-DELIM and END-DELIM instead of default values.
+ If END-DELIM is a symbol, e.g. t, then START-DELIM is taken as a regular
+ expression which matches an entire button string.
+ If REGEXP-MATCH is non-nil, only buttons matching this argument are
+ highlighted."
+   (ebut:map '(lambda (lbl start end) (set-extent-attribute
+ 				      (set-extent-face (make-extent start end)
+ 						      'le:but)
+ 				      'highlight))
+ 	
+ 	    start-delim end-delim regexp-match 'include-delims))
+ 	
+ (defun le:but-delete (&optional pos)
+   (delete-extent (extent-at (or pos (point)))))
+
+ ;;; ************************************************************************
+ ;;; Private functions
+ ;;; ************************************************************************
+
+ (defmacro le:list-cycle (list-ptr list)
+   "Move LIST-PTR to next element in LIST or when at end to first element."
+   (` (or (and (, list-ptr)
+ 	      (setq (, list-ptr) (cdr (, list-ptr))))
+ 	 (setq (, list-ptr) (, list)))))
+
+ ;;; ************************************************************************
+ ;;; Private variables
+ ;;; ************************************************************************
+
+ (defconst le:color-list '( "red" "blue" "paleturquoise4" "mediumpurple2"
+ "lightskyblue3" "springgreen2" "salmon" "yellowgreen" "darkorchid2"
+ "aquamarine4" "slateblue4" "slateblue1" "olivedrab1" "goldenrod4"
+ "goldenrod3" "cadetblue2" "burlywood1" "slategrey" "mistyrose"
+ "limegreen" "lightcyan" "goldenrod" "gainsboro" "skyblue1" "honeydew"
+ "yellow2" "tomato3" "skyblue" "purple4" "orange3" "bisque3" "bisque2"
+ "grey34" "gray99" "gray63" "gray44" "gray37" "gray33" "gray26" "azure1"
+ "snow4" "peru" "red" "lightgoldenrod4" "mediumseagreen" "blush"
+ "mediumorchid2" "lightskyblue1" "darkslateblue" "midnightblue"
+ "lightsalmon1" "lemonchiffon" "yellow" "lightsalmon" "coral"
+ "dodgerblue3" "darkorange4" "blue" "royalblue4" "red" "green" "cyan"
+ "darkviolet" "darksalmon" "darkorange" "blue" "pink" "magenta2"
+ "sienna4" "khaki2" "grey75" "grey74" "grey73" "grey69" "grey68" "grey35"
+ "grey13" "gray90" "gray81" "gray55" "gray51" "gray31" "snow2" "pink3"
+ "grey7" "gray1" "red4" "red3" "tan" "red" "yellow" "mediumvioletred"
+ "lightslategrey" "lavenderblush4" "turquoise" "darkturquoise"
+ "darkslategrey" "lightskyblue" "lightsalmon4" "lightsalmon3"
+ "forestgreen" "dodgerblue4" "orchid" "rosybrown4" "brown" "peachpuff3"
+ "palegreen3" "orangered2" "rose" "lightcyan4" "indianred4" "indianred3"
+ "seagreen2" "indianred" "deeppink1" "navyblue" "lavender" "grey"
+ "deeppink" "salmon4" "salmon3" "oldlace" "grey78" "grey77" "grey54"
+ "grey45" "grey21" "gray97" "gray96" "gray95" "gray88" "gray87" "gray86"
+ "gray70" "gray57" "gray38" "gray12" "gray11" "plum3" "linen" "gray9"
+ "gray8" "blue4" "beige" "turquoise" "blue" "lemonchiffon4"
+ "darkseagreen1" "antiquewhite3" "mediumorchid" "springgreen"
+ "turquoise4" "steelblue3" "mistyrose2" "lightcyan2" "red" "firebrick2"
+ "royalblue" "cadetblue" "skyblue3" "yellow3" "salmon1" "orange4"
+ "hotpink" "grey90" "gray56" "gray39" "gray18" "gray14" "plum4" "grey6"
+ "gray6" "gold3" "gold1" "blue2" "tan2" "cyan" "mediumspringgreen"
+ "darkolivegreen2" "goldenrod" "lightsteelblue" "brown" "whip"
+ "chartreuse3" "violetred4" "royalblue2" "royalblue1" "papayawhip"
+ "mistyrose3" "lightcyan1" "aquamarine" "skyblue4" "hotpink4" "hotpink3"
+ "hotpink2" "dimgray" "tomato" "grey66" "grey65" "grey64" "grey33"
+ "grey27" "gray76" "gray69" "gray68" "grey0" "azure" "green"
+ "darkgoldenrod4" "darkgoldenrod3" "darkgoldenrod2" "darkgoldenrod"
+ "brown" "lightsalmon2" "deepskyblue4" "deepskyblue3" "deepskyblue2"
+ "deepskyblue" "darkorange1" "violetred3" "violetred2" "violetred1"
+ "slateblue3" "slateblue2" "drab" "indianred1" "firebrick1" "cadetblue4"
+ "violetred" "rosybrown" "blue" "firebrick" "grey100" "wheat4" "grey79"
+ "grey76" "grey61" "gray93" "gray84" "gray65" "gray36" "gray32" "gray13"
+ "gray10" "azure3" "snow1" "tan1" "gray" "darkolivegreen1" "blue"
+ "almond" "lavenderblush3" "lavenderblush2" "lavenderblush1"
+ "darkolivegreen" "lavenderblush" "aquamarine2" "red" "olivedrab2"
+ "mistyrose4" "mistyrose1" "lightcyan3" "lightcoral" "chartreuse"
+ "peachpuff" "palegreen" "mintcream" "skyblue2" "moccasin" "tomato1"
+ "orchid3" "maroon3" "salmon" "grey81" "grey62" "grey39" "grey38"
+ "grey37" "gray92" "gray83" "gray66" "gray54" "gray50" "gray30" "gray19"
+ "gray15" "azure4" "grey3" "tan3" "pink" "gray" "blue" "lightsteelblue2"
+ "lightsteelblue1" "green" "lightslategray" "lemonchiffon2"
+ "springgreen1" "greenyellow" "chartreuse2" "grey" "royalblue3"
+ "powderblue" "peachpuff2" "palegreen2" "cream" "slateblue" "seashell2"
+ "deeppink2" "darkkhaki" "maroon4" "sienna" "grey71" "grey67" "grey18"
+ "gray59" "gray43" "gray25" "bisque" "red1" "mediumslateblue"
+ "lightgoldenrod1" "goldenrod" "paleturquoise3" "lightskyblue4" "green"
+ "yellow" "smoke" "blue" "white" "steelblue4" "rosybrown3" "peachpuff1"
+ "palegreen1" "blueviolet" "seashell4" "sienna3" "grey40" "gray91"
+ "gray82" "gray5" "cyan2" "cyan1" "blue1" "snow" "lightgoldenrod2"
+ "lightslateblue" "mediumorchid3" "darkseagreen4" "springgreen3" "green"
+ "slategray4" "slategray3" "slategray2" "blue" "peachpuff4" "palegreen4"
+ "green" "orangered3" "goldenrod1" "ghostwhite" "firebrick4" "firebrick3"
+ "cadetblue3" "slategray" "seashell3" "honeydew3" "cornsilk4" "cornsilk2"
+ "purple1" "dimgrey" "khaki1" "ivory3" "grey70" "grey60" "grey32"
+ "grey22" "grey12" "gray98" "gray89" "gray71" "gray64" "gray60" "gray49"
+ "azure2" "gray3" "paleturquoise1" "mediumpurple1" "purple"
+ "lemonchiffon1" "blue" "navajowhite3" "darkorchid1" "orange"
+ "goldenrod2" "khaki" "chocolate2" "burlywood2" "honeydew1" "darkgreen"
+ "thistle3" "thistle2" "thistle1" "thistle" "maroon2" "maroon1" "grey53"
+ "grey44" "grey25" "gray74" "gray45" "gray41" "gray35" "gray27" "gray23"
+ "gray16" "brown4" "wheat" "coral" "tan4" "lightgoldenrodyellow" "blue"
+ "green" "gray" "palevioletred3" "mediumpurple4" "mediumpurple3"
+ "saddlebrown" "blue" "darkorchid4" "darkorchid3" "puff" "olivedrab4"
+ "lightblue4" "lightpink" "lightgray" "honeydew2" "cornsilk1" "lace"
+ "sienna1" "bisque4" "orchid" "khaki3" "grey84" "grey83" "grey82"
+ "grey72" "grey52" "grey43" "grey26" "grey14" "grey10" "gray75" "gray53"
+ "gray21" "gray20" "brown3" "grey8" "red2" "navy" "grey" "gold"
+ "mediumaquamarine" "lightgoldenrod" "darkslategray4" "darkseagreen3"
+ "darkseagreen2" "antiquewhite4" "white" "springgreen4" "lightyellow4"
+ "white" "aquamarine1" "turquoise3" "steelblue2" "rosybrown2" "pink"
+ "gray" "indianred2" "dodgerblue" "green" "seagreen1" "deeppink4"
+ "aliceblue" "magenta1" "pink" "sienna2" "orchid1" "gray100" "grey97"
+ "grey94" "grey87" "grey86" "grey51" "grey42" "grey19" "gray94" "gray85"
+ "gray61" "brown2" "khaki" "grey1" "gold4" "blue" "green" "grey"
+ "turquoise" "paleturquoise" "mediumorchid4" "antiquewhite2"
+ "lightyellow2" "violet" "salmon" "chartreuse1" "turquoise1" "sandybrown"
+ "orangered1" "lightpink1" "lightblue2" "lightblue1" "grey" "seagreen4"
+ "seagreen3" "lightblue" "deeppink3" "burlywood" "seashell" "hotpink1"
+ "gray" "yellow4" "yellow" "purple" "orange" "ivory4" "grey99" "grey89"
+ "grey63" "grey58" "grey49" "grey31" "grey24" "grey20" "green4" "green1"
+ "gray73" "gray67" "coral3" "coral2" "plum2" "pink4" "ivory" "gray4"
+ "gray2" "gold2" "aquamarine" "grey" "lightgoldenrod3" "darkolivegreen3"
+ "darkgoldenrod1" "goldenrod" "orchid" "chiffon" "navajowhite4"
+ "deepskyblue1" "lightyellow" "floralwhite" "blue" "mediumblue"
+ "chocolate4" "chocolate3" "burlywood4" "turquoise" "steelblue" "green"
+ "lawngreen" "honeydew4" "seagreen" "orchid4" "wheat1" "violet" "ivory1"
+ "grey88" "grey85" "grey57" "grey56" "grey55" "grey48" "grey47" "grey46"
+ "grey30" "grey17" "gray47" "gray29" "pink2" "grey5" "grey4" "green"
+ "gray0" "brown" "lightsteelblue4" "darkolivegreen4" "palevioletred4"
+ "blue" "darkslategray3" "darkslategray2" "darkslategray1"
+ "blanchedalmond" "palegoldenrod" "blue" "lightseagreen" "lemonchiffon3"
+ "darkslategray" "green" "darkseagreen" "antiquewhite" "darkorange2"
+ "chartreuse4" "blue" "rosybrown1" "olivedrab3" "lightpink2" "orangered"
+ "thistle4" "blue" "cornsilk" "salmon2" "orchid2" "ivory2" "grey93"
+ "grey92" "grey91" "grey36" "grey29" "grey28" "grey16" "gray79" "gray78"
+ "gray77" "gray48" "gray17" "coral4" "coral1" "plum1" "pink1" "grey9"
+ "grey2" "gray7" "cyan4" "blue3" "plum" "cornflowerblue" "lightskyblue2"
+ "antiquewhite1" "navajowhite2" "navajowhite1" "lightyellow3"
+ "navajowhite" "darkorange3" "whitesmoke" "turquoise2" "steelblue1"
+ "lightpink4" "lightblue3" "green" "chocolate1" "blue" "olivedrab"
+ "lightgrey" "chocolate" "magenta4" "magenta3" "yellow1" "purple3"
+ "purple2" "orange2" "orange1" "magenta" "bisque1" "wheat2" "maroon"
+ "khaki4" "grey96" "grey95" "grey80" "grey50" "grey41" "grey15" "grey11"
+ "gray80" "gray58" "gray40" "gray34" "gray22" "brown1" "snow3"
+ "mediumturquoise" "lightsteelblue3" "palevioletred2" "palevioletred1"
+ "paleturquoise2" "green" "palevioletred" "mediumorchid1" "white"
+ "mediumpurple" "lightyellow1" "dodgerblue2" "dodgerblue1" "violet"
+ "aquamarine3" "slategray1" "gray" "orangered4" "lightpink3" "blue"
+ "darkorchid" "cadetblue1" "burlywood3" "seashell1" "cornsilk3" "tomato4"
+ "tomato2" "wheat3" "grey98" "grey59" "grey23" "green3" "green2" "gray72"
+ "gray62" "gray52" "gray46" "gray42" "gray28" "gray24" "white" "cyan3"
+ "black" ))
+
+ (defvar le:color-ptr nil
+   "Pointer to current color name table to use for Hyperbole buttons in Lucid e
macs.")
+
+ (defconst le:good-colors
+   '(
+     "medium violet red" "indianred4" "firebrick1" "DarkGoldenrod" "NavyBlue"
+     "darkorchid" "tomato3" "mediumseagreen" "deeppink" "forestgreen"
+     "mistyrose4" "slategrey" "purple4" "dodgerblue3" "mediumvioletred"
+     "lightsalmon3" "orangered2" "turquoise4" "Gray55"
+     )
+   "Good colors for contrast against wheat background and black foreground.")
+
+
+ (defvar le:item-highlight-color (face-foreground (find-face 'default))
+   "Color with which to highlight list/menu selections.
+ Call (le:set-item-highlight <color>) to change value.")
+
+ ;;; ************************************************************************
+ ;;; Public functions
+ ;;; ************************************************************************
+
+ (defun le:cycle-but-color (&optional color)
+   (interactive)
+   (if (not (x-color-display-p))
+       nil
+     (if color (setq le:color-ptr nil))
+     (set-face-foreground
+      'le:but (or color (car (le:list-cycle le:color-ptr le:good-colors))))
+     (set-face-background 'le:flash (le:but-color))
+     (redraw-display)
+     t))
+
+ (defun le:but-flash ()
+   "Flash a Hyperbole button at point to indicate selection, when using Epoch."
+   (interactive)
+   (let ((ibut) (prev)
+ 	(start (hattr:get 'hbut:current 'lbl-start))
+ 	(end   (hattr:get 'hbut:current 'lbl-end)))
+     (and start end (setq prev (extent-at (point))
+ 			 ibut t)
+ 	 (if (not prev) (set-extent-face (make-extent start end) 'le:but)))
+     (let* ((b (extent-at (point))))
+       (if b
+ 	  (progn
+ 	    (set-extent-face b 'le:flash)
+ 	    (redraw-display)
+ 	    (add-timeout le:but-flash-time
+ 			 (function (lambda(b) (set-extent-face b 'le:but))) b)
+ 	    (redraw-display)
+ 	    )))
+     (if (and ibut (not prev)) (le:but-delete))
+     ))
+
+ (defun le:set-item-highlight (&optional color-name)
+   "Setup or reset item highlight style using optional color-name.
+ Currently does nothing so as not to intere with Lucid emacs highlighting."
+   )
+
+ (defun le:select-item (&optional pnt)
+   "Select item in current buffer at optional position PNT using le:item-style.
"
+   (or le:item-button
+       (setq le:item-button (set-extent-face (make-extent (point) (point))
+ 					    'le:item-style)))
+   (set-extent-attribute le:item-button 'highlight)
+   (if pnt (goto-char pnt))
+   (skip-chars-forward " \t")
+   (skip-chars-backward "^ \t\n")
+   (let ((start (point)))
+     (save-excursion
+       (skip-chars-forward "^ \t\n")
+       (update-extent le:item-button start (point))
+       ))
+   (redraw-display)
+   )
+
+ (defun le:select-line (&optional pnt)
+   "Select line in current buffer at optional position PNT using le:item-style.
"
+   (or le:item-button
+       (setq le:item-button (set-extent-face (make-extent (point) (point))
+ 					    'le:item-style)))
+   (if pnt (goto-char pnt))
+   (save-excursion
+     (beginning-of-line)
+     (update-extent le:item-button (point) (progn (end-of-line) (point)))
+     )
+   (redraw-display)
+   )
+
+ ;;; ************************************************************************
+ ;;; Private variables
+ ;;; ************************************************************************
+
+ (or (find-face 'le:but) (copy-face 'default 'le:but))
+ (or (find-face 'le:flash) (copy-face 'default 'le:flash))
+
+ (set-face-foreground 'le:but (le:but-color))
+ (set-face-background 'le:but (face-background (find-face 'default)))
+ (set-face-background 'le:flash (le:but-color))
+ (set-face-foreground 'le:flash (face-foreground (find-face 'default)))
+ (if (not (x-color-display-p))
+     (make-face-bold 'le:but))
+
+ (make-variable-buffer-local 'le:item-button)
+ (copy-face 'le:but 'le:item-style)
+
+ (provide 'hui-lucid-b)
*** 1.1	1992/07/15 18:52:15
--- hui-menus.el	1992/07/24 14:46:23
***************
*** 207,221 ****
  Suitable for binding to a key, e.g. {C-h h}.
  Non-interactively, returns t if menu is actually invoked by call, else nil."
    (interactive)
!   (condition-case ()
!       (if hui:menu-p
! 	  nil
! 	(setq hui:menu-p t)
! 	(hui:menu-act 'hyperbole)
! 	(setq hui:menu-p nil)
! 	t)
!     (quit (setq hui:menu-p nil))
!     (error (setq hui:menu-p nil))))

  (defun hui:menu-act (menu)
    "Prompts user with Hyperbole MENU (a symbol) and performs selected item."
--- 207,227 ----
  Suitable for binding to a key, e.g. {C-h h}.
  Non-interactively, returns t if menu is actually invoked by call, else nil."
    (interactive)
!   (let ((minibuffer-confirm-complete nil))
!     (condition-case ()
! 	(if hui:menu-p
! 	    nil
! 	  ;; Attempt to work around a difference in Lucid emacs 19.  Hitting
! 	  ;; C-G at the minibuffer prompt does not invoke the quit case in
! 	  ;; this code. I don't really know why there even is a flag, but
! 	  ;; not setting it seems to work here.  -Jeff Sparkes
! 	  (if (not hyperb:lucid-p)
! 	      (setq hui:menu-p t))
! 	  (hui:menu-act 'hyperbole)
! 	  (setq hui:menu-p nil)
! 	  t)
!       (quit (setq hui:menu-p nil))
!       (error (setq hui:menu-p nil)))))

  (defun hui:menu-act (menu)
    "Prompts user with Hyperbole MENU (a symbol) and performs selected item."
***************
*** 252,258 ****
    "Uses CHAR-STR or last input character as minibuffer argument."
    (interactive)
    (erase-buffer)
!   (insert (or char-str (substring (recent-keys) -1)))
    (exit-minibuffer))

  (defun hui:menu-help (help-str)
--- 258,268 ----
    "Uses CHAR-STR or last input character as minibuffer argument."
    (interactive)
    (erase-buffer)
!   (if hyperb:lucid-p
!       (insert (char-to-string
! 	       (event-to-character
! 		(car (last (append (recent-keys) nil))))))
!     (insert (or char-str (substring (recent-keys) -1))))
    (exit-minibuffer))

  (defun hui:menu-help (help-str)
***************
*** 360,364 ****
--- 370,397 ----
      (while (<= i 126)
        (define-key hui:menu-mode-map (char-to-string i) 'hui:menu-enter)
        (setq i (1+ i)))))
+
+ (defun hui:menubar-do-menu (menus path)
+   "Add the menu and it's entries to the menubar in Lucid emacs."
+   (if (and menus (listp menus))
+     (hui:menubar-do-menu-entry (cdr (cdr menus)) path)))
+
+ (defun hui:menubar-do-menu-entry (menu path)
+   "Process the list of Hyperbole MENUS for Lucid emacs menubar."
+   (if menu
+       (progn
+ 	(let* ((entry (car menu))
+ 	       (name (car entry))
+ 	       (function (car (cdr entry))))
+ 	  (if (and (listp function)
+ 		   (assq (cdr function) hui:menus))	; is this a submenu?
+ 		(hui:menubar-do-menu (assq (cdr function) hui:menus)
+ 				     (append path (list name)))
+ 	    (add-menu-item path name function t)))
+ 	(hui:menubar-do-menu-entry (cdr menu) path))))
+
+ (if hyperb:lucid-p
+     (hui:menubar-do-menu (assq 'hyperbole hui:menus) '("Hyperbole")))
+

  (provide 'hui-menus)
--
Jeff Sparkes
jsparkes@bnr.ca    Bell-Northern Research, Ottawa, Ontario, Canada




From help-lucid-emacs-request@lucid.com  Fri Jul 24 14:13:52 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA05174; Fri, 24 Jul 92 14:13:52 PDT
Received: by heavens-gate.lucid.com id AA16465g; Fri, 24 Jul 92 14:04:33 PDT
Received: from pat.uio.no by heavens-gate.lucid.com id AA16461g; Fri, 24 Jul 92 14:04:11 PDT
Received: from ulrik.uio.no by pat.uio.no with local-SMTP (PP) 
          id <14417-0@pat.uio.no>; Fri, 24 Jul 1992 23:13:44 +0200
Date: Fri, 24 Jul 1992 23:13:42 +0200
From: h.b.furuseth%usit.uio.no@lucid.com
Message-Id: <9207242113.AAgandalf13055@gandalf.uio.no>
To: help-lucid-emacs@lucid.com
Subject: after-menu-command-hook?

I'd like to do a (force-mode-line-update) and some other fun after
each time a menu command is executed.  Is there a hook to do it?


Hallvard

From help-lucid-emacs-request@lucid.com  Fri Jul 24 16:07:20 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA05439; Fri, 24 Jul 92 16:07:20 PDT
Received: by heavens-gate.lucid.com id AA16872g; Fri, 24 Jul 92 15:57:59 PDT
Received: from uu3.psi.com by heavens-gate.lucid.com id AA16868g; Fri, 24 Jul 92 15:57:44 PDT
Received: from bacon.UUCP by uu3.psi.com (5.65b/4.0.071791-PSI/PSINet)
	id AA12352; Fri, 24 Jul 92 19:06:53 -0400
Received: from yen.moore by bacon.IMSI.COM (4.1/SMI-4.1)
	id AA20936; Fri, 24 Jul 92 17:52:41 EDT
Date: Fri, 24 Jul 92 17:52:41 EDT
From: chris@imsi.com (Chris Payne)
Message-Id: <9207242152.AA20936@IMSI.COM>
Received: by yen.moore (4.1/SMI-4.1)
	id AA02371; Fri, 24 Jul 92 17:49:37 EDT
To: help-lucid-emacs@lucid.com
Subject: lemacs is grabbing window focus when it isn't supposed to
Newsgroups: alt.lucid-emacs.help
In-Reply-To: <2115@tymix.Tymnet.COM>
References: <2115@tymix.Tymnet.COM>

Steve Sandke (steve@orchid.tymnet.com) writes:
> I'm having a strange problem with lemacs 19.2.  Every once in a while,
> the program will grab "window focus", and won't give it up until I
> move the pointer into the lemacs window then back.
> 
> I'm running under mwm (Motif 1.1.4) with X11R5 pl 13 on a [SunSparc 1+].

Same problem here.  This is a serious problem.

MIT X11R5 pl 13 server, twm, sparc2, out-of-the-box lemacs19.2 binaries.

Any ideas?

/c (chris@imsi.com, NYC)

From help-lucid-emacs-request@lucid.com  Fri Jul 24 16:11:34 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA05452; Fri, 24 Jul 92 16:11:34 PDT
Received: by heavens-gate.lucid.com id AA16897g; Fri, 24 Jul 92 16:02:14 PDT
Received: from uu3.psi.com by heavens-gate.lucid.com id AA16893g; Fri, 24 Jul 92 16:01:51 PDT
Received: from bacon.UUCP by uu3.psi.com (5.65b/4.0.071791-PSI/PSINet)
	id AA12340; Fri, 24 Jul 92 19:06:11 -0400
Received: from yen.moore by bacon.IMSI.COM (4.1/SMI-4.1)
	id AA20898; Fri, 24 Jul 92 17:26:37 EDT
Date: Fri, 24 Jul 92 17:26:37 EDT
From: chris@imsi.com (Chris Payne)
Message-Id: <9207242126.AA20898@IMSI.COM>
Received: by yen.moore (4.1/SMI-4.1)
	id AA02350; Fri, 24 Jul 92 17:23:33 EDT
To: steve@gabriela.tymnet.com (Steve Sandke)
Cc: help-lucid-emacs@lucid.com
Subject: lemacs is grabbing window focus when it isn't supposed to
Newsgroups: alt.lucid-emacs.help
In-Reply-To: <2115@tymix.Tymnet.COM>
References: <2115@tymix.Tymnet.COM>

Steve Sandke (steve@orchid.tymnet.com) writes:
> I'm having a strange problem with lemacs 19.2.  Every once in a while,
> the program will grab "window focus", and won't give it up until I
> move the pointer into the lemacs window then back.
> 
> I'm running under mwm (Motif 1.1.4) with X11R5 pl 13 on a [SunSparc 1+].

Same problem here.  This is a serious problem.

MIT X11R5 pl 13 server, twm, sparc2, out-of-the-box lemacs19.2 binaries.

Any ideas?

/c (chris@imsi.com, NYC)

From help-lucid-emacs-request@lucid.com  Fri Jul 24 16:12:39 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA05458; Fri, 24 Jul 92 16:12:39 PDT
Received: by heavens-gate.lucid.com id AA16904g; Fri, 24 Jul 92 16:03:19 PDT
Received: from scylla.lucid (scylla.lucid.com) by heavens-gate.lucid.com id AA16900g; Fri, 24 Jul 92 16:03:08 PDT
Received: by scylla.lucid (4.1/SMI-4.1)
	id AA01773; Fri, 24 Jul 92 16:11:24 PDT
Date: Fri, 24 Jul 92 16:11:24 PDT
From: devin%scylla@lucid.com (Matthieu Devin)
Message-Id: <9207242311.AA01773@scylla.lucid>
To: chris@imsi.com (Chris Payne)
Cc: help-lucid-emacs@lucid.com
Subject: Re: lemacs is grabbing window focus when it isn't supposed to
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Chris Payne's message of Fri 24-Jul-92 17:52:41 EDT <9207242152.AA20936@IMSI.COM>
References: <2115@tymix.Tymnet.COM>
	<9207242152.AA20936@IMSI.COM>

> > I'm having a strange problem with lemacs 19.2.  Every once in a while,
> > the program will grab "window focus", and won't give it up until I
> > move the pointer into the lemacs window then back.

We've been having problems with MWM sending a TAKE_FOCUS message with a 0
timestamp, which causes lemacs to steal the focus at most inappropriate times.
We put a workaround for that in 19.3.

From help-lucid-emacs-request@lucid.com  Fri Jul 24 17:12:28 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA05570; Fri, 24 Jul 92 17:12:28 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA17153g; Fri, 24 Jul 92 17:03:09 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA27889; Fri, 24 Jul 92 20:12:51 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA27883; Fri, 24 Jul 92 20:12:49 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA04145; Fri, 24 Jul 92 20:13:47 -0400
Path: uunet!mcsun!uknet!mucs!uts.mcc.ac.uk!ssurhode
From: ssurhode@rdg.ac.uk (Paul Rhodes)
Newsgroups: alt.lucid-emacs.help
Subject: LaTeX regexps for lhilit mode
Message-Id: <SSURHODE.92Jul24144355@suma1.rdg.ac.uk>
Date: 24 Jul 92 13:43:55 GMT
Distribution: alt
Organization: Reading University, England
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Has any one hacked together a LaTeX-mode-hilit for the lhilit.el yet
????

thanks in advance,

   Paul.

From help-lucid-emacs-request@lucid.com  Sat Jul 25 14:14:58 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA08219; Sat, 25 Jul 92 14:14:58 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA18488g; Sat, 25 Jul 92 14:00:37 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA16071; Sat, 25 Jul 92 17:10:21 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA16065; Sat, 25 Jul 92 17:10:19 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA13001; Sat, 25 Jul 92 17:11:27 -0400
Newsgroups: gnu.emacs.gnus,alt.lucid-emacs.help
Path: uunet!stanford.edu!EE.Stanford.EDU!sierra!mcgrant
From: mcgrant@rascals.stanford.edu (Michael C. Grant)
Subject: underlined newsgroups in GNUS?
Message-Id: <MCGRANT.92Jul25140949@rascals.stanford.edu>
Organization: Information Systems Laboratory, Stanford University
Date: 25 Jul 92 14:09:49
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


Those ClariNet newsgroups with the control-H underlining technique have
always grated on my nerves... Now, I know that someone has posted 
solutions for emacs 18 which simply remove the control-H's and underscore
characters from the buffer, but I'm planning on extending that to 
turn on underlining for those characters so that the desired effect
is actually achieved.

So, as a start I need someone to please mail me the code which people
have integrated into GNUS which gets rid of the underlining for emacs-18.
Then I'll modify it to work with lemacs and add the underlining feature
and re-post it. Of course, if someone has already done this then they
are welcome to just give it to me!

Thanks,
Michael C. Grant
mcgrant@rascals.stanford.edu


From help-lucid-emacs-request@lucid.com  Sat Jul 25 17:09:22 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA08445; Sat, 25 Jul 92 17:09:22 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA18615g; Sat, 25 Jul 92 16:57:11 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA18937; Sat, 25 Jul 92 20:06:54 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA18931; Sat, 25 Jul 92 20:06:52 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA14223; Sat, 25 Jul 92 20:08:01 -0400
Newsgroups: gnu.emacs.gnus,alt.lucid-emacs.help
Path: uunet!stanford.edu!EE.Stanford.EDU!sierra!mcgrant
From: mcgrant@rascals.stanford.edu (Michael C. Grant)
Subject: Re: underlined newsgroups in GNUS?
In-Reply-To: mcgrant@rascals.stanford.edu's message of 25 Jul 92 14:09:49
Message-Id: <MCGRANT.92Jul25170255@rascals.stanford.edu>
Organization: Information Systems Laboratory, Stanford University
References: <MCGRANT.92Jul25140949@rascals.stanford.edu>
Date: 25 Jul 92 17:02:55
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


I've received the pertinent file from emacs 18. If anyone would like to 
give some hints as to its lucid-ifiying, great, but I no longer need
clari-clean.el!

Thanks,
Mike


From help-lucid-emacs-request@lucid.com  Sun Jul 26 14:50:20 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA10550; Sun, 26 Jul 92 14:50:20 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA19461g; Sun, 26 Jul 92 14:36:00 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA04453; Sun, 26 Jul 92 17:45:46 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA04447; Sun, 26 Jul 92 17:45:44 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA01454; Sun, 26 Jul 92 17:46:41 -0400
Path: uunet!mcsun!corton!loria!news.loria.fr!bosch
From: bosch%loria.fr@lucid.com (Guido Bosch)
Newsgroups: alt.lucid-emacs.help
Subject: Re: Ilisp: interrupting the inferior lisp process
Message-Id: <BOSCH.92Jul26232738@moebius.loria.fr>
Date: 26 Jul 92 21:27:38 GMT
References: <1992Jul23.165340.15396@jpl-devvax.jpl.nasa.gov>
Followup-To: alt.lucid-emacs.help
Organization: INRIA-Lorraine / CRIN, Nancy, France
In-Reply-To: rouquett@Aig.Jpl.Nasa.Gov's message of 23 Jul 92 16:53:40 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <1992Jul23.165340.15396@jpl-devvax.jpl.nasa.gov> rouquett@Aig.Jpl.Nasa.Gov (Nicolas Rouquette) writes:
 >   THere seems to be a problem with Ilisp: both interrupt-subjob-ilisp 
 >   and reset-ilisp don't affect the inferior ilisp process at all. 
 >   Has anyone encountered this or is there a known workaround?
 >
 >   This occurs with lemacs 19.1 with binaries from lucid. We're running
 >   both 4.1.1 and 4.1.2 and openwindows 3.0.
 >

I don't have a fix, but some more details on that problem: 

The elisp function `interrupt-process' does not work correctly if the
process to interrupt uses pipes for the comunication with Emacs (this
happens if the variable `process-connection-type' is nil at the moment
Emacs  starts an inferior process, as is the case for ILISP).

The command `shell' uses a pty instead, and then `interrupt-process'
seems to work.

-- Guido

--
Guido BOSCH, INRIA-Lorraine/CRIN
Institut National de Recherche en Informatique et en Automatique (INRIA)
Centre de Recherche en Informatique de Nancy (CRIN)
Campus scientifique, B.P. 239            
54506 Vandoeuvre-les-Nancy CEDEX       	
Tel.: (+33) 83.91.24.24
Fax.: (+33) 83.41.30.79                	
email: bosch@loria.fr             	

From help-lucid-emacs-request@lucid.com  Sun Jul 26 16:24:36 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA10726; Sun, 26 Jul 92 16:24:36 PDT
Received: by heavens-gate.lucid.com id AA19554g; Sun, 26 Jul 92 16:12:05 PDT
Received: from Sun.COM by heavens-gate.lucid.com id AA19550g; Sun, 26 Jul 92 16:11:57 PDT
Received: from sun.Eng.Sun.COM by Sun.COM (4.1/SMI-4.1)
	id AA05911; Sun, 26 Jul 92 16:21:44 PDT
Received: from objy.UUCP by sun.Eng.Sun.COM (4.1/SMI-4.1)
	id AA22532; Sun, 26 Jul 92 16:21:11 PDT
Received: from objy27. by objy.com (4.1/SMI-4.0)
	id AA26825; Sun, 26 Jul 92 15:53:05 PDT
Received: by objy27. (5.57/SMI-4.0)
	id AA11095; Sun, 26 Jul 92 15:54:09 -0700
Message-Id: <9207262254.AA11095@objy27.>
To: help-lucid-emacs@lucid.com
Subject: DECstation and the Compose Key
Date: Sun, 26 Jul 92 15:54:09 PDT
From: "Rick L. Spickelmier" <objy!objy27!ricks@Sun.COM>

I don't think I've seen a definitive answer to handling the Compose key 
on DECstations...  What 'xmodmap' settings and/or Lucid Emacs key bindings
do I have to do in order to get my Compose key to act like a Meta key
(as it does in emacs 18.xx)?  I really like Lucid Emacs and would prefer
to use it over 18.xx, but not without a Meta key...

Environment:
	DECstation 5000/200
	Ultrix 4.2
	MWM
	lucid emacs 19.2 built with USE_LUCID for menu support.

Current xmodmap:

xmodmap -e "remove lock = Caps_Lock" 
	-e "add shift = Caps_Lock" 
	-e "keysym comma = comma less"
	-e "keysym period = period greater"
	-e "keycode 0xb1 = Alt_L Meta_L"

		Thanks!
			Rick
-- 
	    Rick L. Spickelmier
	    Objectivity, Inc.
	    800 El Camino Real
	    Menlo Park, CA   94025

	    ricks@objy.com, ricks@berkeley.edu


From help-lucid-emacs-request@lucid.com  Sun Jul 26 18:31:15 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA10909; Sun, 26 Jul 92 18:31:15 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA19722g; Sun, 26 Jul 92 18:18:54 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA07823; Sun, 26 Jul 92 21:28:40 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA07817; Sun, 26 Jul 92 21:28:38 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA03454; Sun, 26 Jul 92 21:29:31 -0400
Path: uunet!mcsun!corton!loria!news.loria.fr!bosch
From: bosch%loria.fr@lucid.com (Guido Bosch)
Newsgroups: alt.lucid-emacs.help
Subject: Re: patches for Hyperbole to run on lemacs19.2
Message-Id: <BOSCH.92Jul27031513@moebius.loria.fr>
Date: 27 Jul 92 01:15:13 GMT
Distribution: alt
Organization: INRIA-Lorraine / CRIN, Nancy, France
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <9207241926.AA02186@gateway.bnr.ca> JSPARKES%BNR.CA@lucid.com (J.D.) writes:

 >   Hi, I've made Hyperbole work under Lucid emacs 19.2, and I'd like some
 >   brave beta testers. :-).  Actually, everything seems to work fine,
 >   with just one problem:
 >
 >   KNOWN BUG/PROBLEMS
 >
 >   1. sm-mouse-toggle-bindings (commonly bound to C-ct) does not preserve
 >      mode specific bindings because it only records the "default"
 >      bindings once.  Any advice on what to do for this is welcome.  (I
 >      find it annoying that I can't use the popup menu in Info-mode.)
 >

The problem is a more general one, after my opinon: For Emacs 19, the
Hyperbole user interface should be modified taking advantage of the
new features:

	- The user interface menu (`hui::menu') should be implemented 
	  as a popup-menu, accessable in the menu bar (I already
	  hacked it around, it was rather straightforward, see at the
	  end of this mailing).

	- The smart-key stuff should be bound to buttons with
	  modifiers (shift/control/meta/...). At least button3 has to
	  be kept free for mode specific menus. This is because
	  Emacses running under X11 come with a lot of packages that
	  do their own (maybe mode local) mouse handling.

	  Another solution would be to intergrate Hyperbole as an
	  essential part of Emacs 19's user interface and to use it
	  for all kind of hypertext like mouse actions. This is maybe a
	  better, but also a more expensive solution. 

	  For the moment, I use the following key bindings for
	  Hyperbole, and this also solves your problem with the info
	  menu. (I use the Control Shift modifier for smart keys,
	  because there are few chances that other packages could use
	  this also)
	  	  
	(cond ((string-match "Lucid" (emacs-version))
	   (defun le:mouse-set-point()
	     (mouse-set-point (copy-event last-input-event)))
	   (setq mouse-set-point-command 'le:mouse-set-point)
	   (global-set-key '(control shift button2) 'sm-depress)
	   (global-set-key '(control shift button2up) 'smart-key-mouse)
	   (global-set-key '(control shift button2) 'sm-depress-meta)
	   (global-set-key '(control shift button3up) 'smart-key-mouse-meta))

	  
Another point for the TODO list: 

	- Highlighting extents for explicit (and maybe implicit) buttons
	  

-- Guido

------------------------------ hui-menu.el ------------------------------
;;!emacs
;; $Id: hui-menus.el,v 1.2 1992/05/14 10:12:25 rsw Exp $
;;
;; FILE:         hui-menus.el
;; SUMMARY:      One line command menus for Hyperbole
;; USAGE:        GNU Emacs Lisp Library
;;
;; AUTHOR:       Bob Weiner
;; ORG:          Brown U.
;;
;; ORIG-DATE:    15-Oct-91 at 20:13:17
;; LAST-MOD:     25-Feb-92 at 06:08:14 by Bob Weiner
;;
;; This file is part of Hyperbole.
;; 
;; Copyright (C) 1991, 1992  Brown University, Providence, RI
;; Developed with support from Motorola Inc.
;; 
;; Permission to use, modify and redistribute this software and its
;; documentation for any purpose other than its incorporation into a
;; commercial product is hereby granted without fee.  A distribution fee
;; may be charged with any redistribution.  Any distribution requires
;; that the above copyright notice appear in all copies, that both that
;; copyright notice and this permission notice appear in supporting
;; documentation, and that neither the name of Brown University nor the
;; author's name be used in advertising or publicity pertaining to
;; distribution of the software without specific, written prior permission.
;; 
;; Brown University makes no representations about the suitability of this
;; software for any purpose.  It is provided "as is" without express or
;; implied warranty.
;;
;;
;; DESCRIPTION:  
;; DESCRIP-END.

;;; ************************************************************************
;;; Other required Elisp libraries
;;; ************************************************************************

(require 'hui)

;;; ************************************************************************
;;; Public variables
;;; ************************************************************************

(defvar hui:menu-select "\C-m"
  "*Upper case char-string which select Hyperbole menu item at point.")
(defvar hui:menu-quit   "Q"
  "*Upper case char-string which quits from selecting a Hyperbole menu item.")
(defvar hui:menu-abort  "\C-g"
  "*Same function as 'hui:menu-quit'.")
(defvar hui:menu-top    "\C-t"
  "*Character which returns to top Hyperbole menu.")

(defvar hui:menu-p nil
  "Non-nil iff a current Hyperbole menu activation exists.")

(defvar hui:menus nil
  "Command menus for use with the default Hyperbole user interface.")


(defvar hui:lucid-p (string-match "Lucid" emacs-version))

(setq hui:menus
      (if hui:lucid-p
	  ;; Lucid Emacs popup menus
	  '("Hyperbole"
	    ["Action" hui:hbut-act t]
	    ("Button File"
	     ["Directory File" (find-file hbmap:filename) t]
	     ["Personal File" (find-file (concat hbmap:dir-user hbmap:filename)) t])
	    ("Documentation"
	     ["Demo" (find-file-read-only (concat hyperb:dir "DEMO")) t]
	     ["Files" (find-file (concat hyperb:dir "MANIFEST")) t]
	     ["Glossary" (progn
			   (or (featurep 'info)
			       (progn (load "info") (provide 'info)))
			   (hact 'link-to-Info-node "(hypb.info)Glossary")) t]
	     ["Copyright" (hact 'link-to-string-match "* Copyright" 2
			       (concat hyperb:dir "README")) t]
	     ["Info Manual" (progn (or (featurep 'info)
				      (progn (load "info") (provide 'info)))
				  (hact 'link-to-Info-node "(hypb.info)")) t]
	     ["Mailing Lists" (hact 'link-to-string-match "* Mail Lists" 2
				(concat hyperb:dir "README")) t]
	     ["News" (hact 'link-to-string-match "* What's New" 2
			  (concat hyperb:dir "README")) t]
	     ["Smart Key" (find-file (concat hyperb:dir "hmouse-doc")) t])
	    ("Explicit Buttons"
	     ["Action" hui:hbut-act t]
	     ["Create"hui:ebut-create t]
	     ["Delete" hui:ebut-delete t]
	     ["Edit" hui:ebut-modify t]
	     ("Help"
	      ["Buffer Buttons" (hui:hbut-report -1) t]
	      ["Current Button" (hui:hbut-report) t]
	      ["Ordered Buttons" (hui:hbut-report 1) t])
	     ["Modify" hui:ebut-modify t]
	     ["Rename" hui:ebut-rename t]
	     ["Search" hui:ebut-search t])
	    ("Global] Buttons"
	     ["Action" gbut:act t]
	     ["Create" hui:gbut-create t]
	     ["Help" gbut:help t])
	    ["History" (hhist:remove current-prefix-arg) t]
	    ("Implicit Buttons"
	     ["Action" hui:hbut-act t]
	     ["Help" hui:hbut-help t]
	     ["Types" (hui:htype-help 'ibtypes 'no-sort) t])
	    ("Messages"
	     ["Compose Hyperbole Mail" (progn
				    (mail) (insert "hyperbole@cs.brown.edu")
				    (forward-line 1) (end-of-line)
				    (save-excursion
				      (insert
				       "Use a full *sentence* here.  Make a statement or ask a question."))
				    (hact 'hyp-config)
				    (message "Edit and then mail.")) t]
	     ["Edit Hypebol Mailing List Entry" (progn (mail) (insert "hyperbole-request@cs.brown.edu")
						 (forward-line 1) (end-of-line)
						 (hact 'hyp-request)
						 (message "Edit and then mail.")) t])
	    ("Rolodex"
	     ["Add" rolo-add t]
	     ["Display-again" rolo-display-matches t]
	     ["Edit" rolo-edit t]
	     ["Kill" rolo-kill t]
	     ["Order" rolo-sort t]
	     ["Regexp-find" rolo-grep t]
	     ["String-find" rolo-fgrep t]
	     ["Yank" rolo-yank t])

	    ("Types"
	     ["Action Types" (hui:htype-help   'actypes) t]
	     ["Delete Implicit Button Type" (hui:htype-delete 'ibtypes) t]
	     ["Doc on Implicit Button Types" (hui:htype-help   'ibtypes 'no-sort) t]))

	;; Hyperbol hui menus
	(list (cons
	       'hyperbole
	       (append
		(list (list (concat "Hypb" hyperb:version ">")))
		'(("Act"         hui:hbut-act
		   "Activates button at point or prompts for explicit button.")
		  ("ButFile/"    (menu . butfile)
		   "Quick access button files menus.")
		  ("Doc/"        (menu . doc)
		   "Quick access to Hyperbole documentation.")
		  ("EBut/"       (menu . ebut)
		   "Explicit button commands.")
		  ("GBut/"       (menu . gbut)
		   "Global button commands.")
		  ("Hist"        (hhist:remove current-prefix-arg)
		   "Jumps back to location prior to last Hyperbole button follow.")
		  ("IBut/"       (menu . ibut)
		   "Implicit button and button type commands.")
		  ("Msg/"        (menu . msg)
		   "Mail and News messaging facilities.")
		  ("Rolo/"       (progn (or (fboundp 'rolo-kill) (require 'wrolo))
					(hui:menu-act 'rolo))
		   "Hierarchical, multi-file rolodex lookup and edit commands.")
		  ("Types/"      (menu . types)
		   "Provides documentation on Hyperbole types.")
		  )))
	      '(butfile .
			(("ButFile>")
			 ("DirFile"      (find-file hbmap:filename)
			  "Edits directory-specific button file.")
			 ("PersonalFile" (find-file (concat hbmap:dir-user hbmap:filename))
			  "Edits user-specific button file.")
			 ))
	      '(doc .
		    (("Doc>")
		     ("Demo"         (find-file-read-only (concat hyperb:dir "DEMO"))
		      "Demonstrates Hyperbole features.")
		     ("Files"        (find-file (concat hyperb:dir "MANIFEST"))
		      "Summarizes Hyperbole system files.  Click on an entry to view it.")
		     ("Glossary"     (progn
				       (or (featurep 'info)
					   (progn (load "info") (provide 'info)))
				       (hact 'link-to-Info-node "(hypb.info)Glossary"))
		      "Glossary of Hyperbole terms.")
		     ("HypbCopy"  (hact 'link-to-string-match "* Copyright" 2
					(concat hyperb:dir "README"))
		      "Displays general Hyperbole copyright and license details.")
		     ("InfoManual"   (progn (or (featurep 'info)
						(progn (load "info") (provide 'info)))
					    (hact 'link-to-Info-node "(hypb.info)"))
		      "Online Info version of Hyperbole manual.")
		     ("MailLists"    (hact 'link-to-string-match "* Mail Lists" 2
					   (concat hyperb:dir "README"))
		      "Details on Hyperbole mail list subscriptions.")
		     ("New"          (hact 'link-to-string-match "* What's New" 2
					   (concat hyperb:dir "README"))
		      "Recent changes to Hyperbole.")
		     ("SmartKy"      (find-file (concat hyperb:dir "hmouse-doc"))
		      "Summarizes Smart Key mouse or keyboard handling.")
		     ))
	      '(ebut .
		     (("EButton>")
		      ("Act"    hui:hbut-act
		       "Activates button at point or prompts for explicit button.")
		      ("Create" hui:ebut-create)
		      ("Delete" hui:ebut-delete)
		      ("Edit"   hui:ebut-modify "Modifies any desired button attributes.")
		      ("Help/" (menu . ebut-help) "Summarizes button attributes.")
		      ("Modify" hui:ebut-modify "Modifies any desired button attributes.")
		      ("Rename" hui:ebut-rename "Relabels an explicit button.")
		      ("Search" hui:ebut-search
		       "Locates and displays personally created buttons in context.")
		      ))
	      '(ebut-help .
			  (("Help on>")
			   ("BufferButs"   (hui:hbut-report -1)
			    "Summarizes all explicit buttons in buffer.")
			   ("CurrentBut"   (hui:hbut-report)
			    "Summarizes only current button in buffer.")
			   ("OrderedButs"  (hui:hbut-report 1)
			    "Summarizes explicit buttons in lexicographically order.")
			   ))
	      '(gbut .
		     (("GButton>")
		      ("Act"    gbut:act        "Activates global button by name.") 
		      ("Create" hui:gbut-create "Adds a global button to gbut:file.")
		      ("Help"   gbut:help       "Reports on a global button by name.") 
		      ))
	      '(ibut .
		     (("IButton>")
		      ("Act"    hui:hbut-act    "Activates implicit button at point.") 
		      ("Help"   hui:hbut-help   "Reports on button's attributes.")
		      ("Types"  (hui:htype-help 'ibtypes 'no-sort)
		       "Displays documentation for one or all implicit button types.")
		      ))
	      '(msg .
		    (("Msg>")
		     ("Compose-Hypb-Mail"
		      (progn
			(mail) (insert "hyperbole@cs.brown.edu")
			(forward-line 1) (end-of-line)
			(save-excursion
			  (insert
			   "Use a full *sentence* here.  Make a statement or ask a question."))
			(hact 'hyp-config)
			(message "Edit and then mail."))
		      "Send a message to the Hyperbole discussion list.")
		     ("Edit-Hypb-Mail-List-Entry"
		      (progn (mail) (insert "hyperbole-request@cs.brown.edu")
			     (forward-line 1) (end-of-line)
			     (hact 'hyp-request)
			     (message "Edit and then mail."))
		      "Add, remove or change your entry on a hyperbole mail list.")
		     ))
	      '(rolo .
		     (("Rolo>")
		      ("Add"              rolo-add	  "Add a new rolo entry.")
		      ("Display-again"    rolo-display-matches
		       "Display last found rolodex matches again.")
		      ("Edit"             rolo-edit   "Edit an existing rolo entry.")
		      ("Kill"             rolo-kill   "Kill an existing rolo entry.")
		      ("Order"            rolo-sort   "Order rolo entries in a file.")
		      ("Regexp-find"      rolo-grep   "Find entries containing a regexp.")
		      ("String-find"      rolo-fgrep  "Find entries containing a string.")
		      ("Yank"             rolo-yank
		       "Find an entry containing a string and insert it at point.")
		      ))
	      '(types .
		      (("Types>")
		       ("ActionTypes"      (hui:htype-help   'actypes)
			"Displays documentation for one or all action types.")
		       ("DeleteIButType"   (hui:htype-delete 'ibtypes)
			"Deletes specified button type.")
		       ("IButTypes"        (hui:htype-help   'ibtypes 'no-sort)
			"Displays documentation for one or all implicit button types.")
		       )))))

(if hui:lucid-p
    (let ((menubar-rest default-menubar))
      (if;; There  is already a hyperbole menu
	  (setq menubar-rest (assoc (car hui:menus) default-menubar))
	  ;; update the existing one
	  (rplacd menubar-rest (cdr hui:menus))
	;; otherwise append append destructively the hui:menu
	(nconc default-menubar (list hui:menus)))
      ;; Redisplay
      (set-screen-menubar default-menubar)))


;;; ************************************************************************
;;; Public functions
;;; ************************************************************************

(defun hui:menu ()
  "Invokes default Hyperbole menu user interface when not already active.
Suitable for binding to a key, e.g. {C-h h}.
Non-interactively, returns t if menu is actually invoked by call, else nil."
  (interactive)
  (if hui:lucid-p
      (popup-menu hui:menus)
    (condition-case ()
	(if hui:menu-p
	    nil
	  (setq hui:menu-p t)
	  (hui:menu-act 'hyperbole)
	  (setq hui:menu-p nil)
	  t)
      (quit (setq hui:menu-p nil))
      (error (setq hui:menu-p nil)))))

(defun hui:menu-act (menu)
  "Prompts user with Hyperbole MENU (a symbol) and performs selected item."
  (let ((set-menu '(or (and menu (symbolp menu)
			    (setq menu-alist (cdr (assq menu hui:menus))))
		       (error "(hui:menu-act): Invalid menu symbol arg: %s"
			      menu)))
	(show-menu t)
	(rtn)
	menu-alist act-form)
    (while (and show-menu (eval set-menu))
      (cond ((and (consp (setq act-form (hui:menu-select menu-alist)))
		  (cdr act-form)
		  (symbolp (cdr act-form)))
	     ;; Display another menu
	     (setq menu (cdr act-form)))
	    (act-form
	     (let ((prefix-arg current-prefix-arg))
	       (cond ((symbolp act-form)
		      (if (eq act-form t)
			  nil
			(setq show-menu nil
			      rtn (call-interactively act-form))))
		     ((stringp act-form)
		      (hui:menu-help act-form)
		      ;; Loop and show menu again.
		      )
		     (t (setq show-menu nil
			      rtn (eval act-form))))))
	    (t (setq show-menu nil))))
    rtn))

(defun hui:menu-enter (&optional char-str)
  "Uses CHAR-STR or last input character as minibuffer argument."
  (interactive)
  (erase-buffer)
  (insert (or char-str (substring (recent-keys) -1)))
  (exit-minibuffer))

(defun hui:menu-help (help-str)
  "Displays HELP-STR in a small window.  HELP-STR must be a string."
  (let* ((window-min-height 2)
	 (owind (selected-window))
	 (buf-name (hypb:help-buf-name "Menu")))
    (unwind-protect
	(progn
	  (save-window-excursion
	    (smart-key-help-show buf-name)) ;; Needed to save screen config.
	  (if (eq (selected-window) (minibuffer-window))
	      (other-window 1))
	  (if (= (length (hypb:window-list 'no-mini)) 1)
	      (split-window-vertically nil))
	  (let* ((winds (hypb:window-list 'no-mini))
		 (bot-list (mapcar
			    '(lambda (wind)
			       (nth 3 (window-edges wind))) winds))
		 (bot (apply 'max bot-list)))
	    (select-window
	     (nth (- (length winds) (length (memq bot bot-list))) winds)))
	  (switch-to-buffer (get-buffer-create buf-name))
	  (setq buffer-read-only nil)
	  (erase-buffer)
	  (insert "\n" help-str)
	  (set-buffer-modified-p nil)
	  (shrink-window
	   (- (window-height)
	      (+ 3 (length
		    (delq nil
			  (mapcar '(lambda (chr) (= chr ?\n)) help-str)))))))
      (select-window owind))))

(defun hui:menu-select (menu-alist)
  "Prompts user to choose the first character of any item from MENU-ALIST.
Case is not significant.  If chosen by direct selection with the secondary
Smart Key, returns any help string for item, else returns the action form for
the item."
  (let* ((menu-prompt (concat (car (car menu-alist)) "  "))
	 (menu-items (mapconcat 'car (cdr menu-alist) "  "))
	 (set:equal-op 'eq)
	 (select-char (string-to-char hui:menu-select))
	 (quit-char (string-to-char hui:menu-quit))
	 (abort-char (string-to-char hui:menu-abort))
	 (top-char  (string-to-char hui:menu-top))
	 (item-keys (mapcar '(lambda (item) (aref item 0))
			    (mapcar 'car (cdr menu-alist))))
	 (keys (apply 'list select-char quit-char abort-char
		      top-char item-keys))
	 (key 0)
	 (hargs:reading-p 'hmenu)
	 sublist)
    (while (not (memq (setq key (upcase
				 (string-to-char
				  (read-from-minibuffer
				   "" (concat menu-prompt menu-items)
				   hui:menu-mode-map))))
		      keys))
      (beep)
      (setq hargs:reading-p 'hmenu)
      (discard-input))
    (cond ((eq key quit-char) nil)
	  ((eq key abort-char) (beep) nil)
	  ((eq key top-char) '(menu . hyperbole))
	  ((and (eq key select-char)
		(save-excursion
		  (if (search-backward " " nil t)
		      (progn (skip-chars-forward " ")
			     (setq key (following-char))
			     nil)  ;; Drop through.
		    t))))
	  (t (if (setq sublist (memq key item-keys))
		 (let* ((label-act-help-list
			 (nth (- (1+ (length item-keys)) (length sublist))
			      menu-alist))
			(act-form (car (cdr label-act-help-list))))
		   (if (eq hargs:reading-p 'hmenu-help)
		       (let ((help-str
			      (or (car (cdr (cdr label-act-help-list)))
				  "No help documentation for this item.")))
			 (concat (car label-act-help-list) "\n  "
				 help-str "\n    Action: "
				 (prin1-to-string act-form)))
		     act-form)))))))

;;; ************************************************************************
;;; Private variables
;;; ************************************************************************

;; Hyperbole menu mode is suitable only for specially formatted data.
(put 'hui:menu-mode 'mode-class 'special)

(defvar hui:menu-mode-map nil
  "Keymap containing hui:menu commands.")
(if hui:menu-mode-map
    nil
  (setq hui:menu-mode-map (make-keymap))
  (suppress-keymap hui:menu-mode-map)
  (define-key hui:menu-mode-map hui:menu-quit   'hui:menu-enter)
  (define-key hui:menu-mode-map hui:menu-abort  'hui:menu-enter)
  (define-key hui:menu-mode-map hui:menu-top    'hui:menu-enter)
  (define-key hui:menu-mode-map hui:menu-select 'hui:menu-enter)
  (let ((i 32))
    (while (<= i 126)
      (define-key hui:menu-mode-map (char-to-string i) 'hui:menu-enter)
      (setq i (1+ i)))))

(provide 'hui-menus)
--
Guido BOSCH, INRIA-Lorraine/CRIN
Institut National de Recherche en Informatique et en Automatique (INRIA)
Centre de Recherche en Informatique de Nancy (CRIN)
Campus scientifique, B.P. 239            
54506 Vandoeuvre-les-Nancy CEDEX       	
Tel.: (+33) 83.91.24.24
Fax.: (+33) 83.41.30.79                	
email: bosch@loria.fr             	

From help-lucid-emacs-request@lucid.com  Sun Jul 26 20:09:07 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA11102; Sun, 26 Jul 92 20:09:07 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA19812g; Sun, 26 Jul 92 19:56:41 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA09527; Sun, 26 Jul 92 23:06:28 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA09521; Sun, 26 Jul 92 23:06:26 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA04268; Sun, 26 Jul 92 23:07:21 -0400
Newsgroups: alt.lucid-emacs.help,gnu.emacs.gnus
Path: uunet!stanford.edu!EE.Stanford.EDU!sierra!mcgrant
From: mcgrant@isl.stanford.edu (Michael C. Grant)
Subject: Cleaning up those ClariNet newsgroups
Message-Id: <MCGRANT.92Jul26200520@isl.stanford.edu>
Organization: Information Systems Laboratory, Stanford University
Date: 26 Jul 92 20:05:20
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


Thanks to Sami-Jaakko Tikka and Jamie Zawinski, I was able to provide a
decent if slightly inefficient solution to the problem of eliminating the
_^H combinations from ClariNews files... I have included the result at the
bottom of the gnus-lucid.el file which is Jamie sent, in the form of a
gnus-Article-prepare-hook called gnus-fontify-clarinews.

The rest of the file, if you haven't seen it, defines some nice mouse,
font, and menu support for GNUS. The middle button is an action button
(select article/newsgroup), and the right button pops up a menu.

It does make the assumption that the form of the underlining is _^Hx, (i.e.
the underline comes before the character), and it assumes that you want the
resulting text boldfaced. But, heck, I have yet to see exceptions to the
rule, and boldfacing is what newspapers seem to do for the
clari.news.interest.people.column articles, so I figured that was OK.
Besides, it is intended to be a quick hack.

Of course, feel free to use, adjust, modify, and/or discard this code...

Michael C. Grant
mcgrant@rascals.stanford.edu

;; Mouse and font support for GNUS running in Lucid GNU Emacs
;; Copyright (C) 1992 Free Software Foundation, Inc.
;; Original file provided to mcgrant by Jamie Zawinski (jwz@lucid.com)
;; clari-clean added by Michael C. Grant (mcgrant@rascals.stanford.edu)
;; inspired by clari-clean.el by David N. Blank (dnb@meshugge.media.mit.edu)

;; This file is part of GNU Emacs.

;; GNU Emacs is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation; either version 2, or (at your option)
;; any later version.

;; GNU Emacs is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
;; GNU General Public License for more details.

;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING.  If not, write to
;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.

;;; Highlight the line under the mouse in the Newsgroup and Subject buffers.

(defvar gnus-Subject-mouse-track-extent nil)
(defvar gnus-Group-mouse-track-extent nil)
(defvar gnus-orig-mouse-motion-handler)

(defun gnus-track-mouse (event)
  (funcall gnus-orig-mouse-motion-handler event)
  (let (window buffer point e)
    (if (and (setq window (event-window event))
	     (setq buffer (window-buffer window))
	     (or (eq buffer (get-buffer gnus-Subject-buffer))
		 (eq buffer (get-buffer gnus-Group-buffer)))
	     (setq point (event-point event)))
	(save-excursion
	  (setq e (if (eq buffer (get-buffer gnus-Group-buffer))
		      gnus-Group-mouse-track-extent
		    gnus-Subject-mouse-track-extent))
	  (set-buffer buffer)
	  (goto-char point)
	  (beginning-of-line)
	  (setq point (point))
	  (end-of-line)
	  (if (or (null e)
		  (null (extent-buffer e))
		  (null (buffer-name (extent-buffer e))))
	      (progn
		(set (if (eq buffer (get-buffer gnus-Group-buffer))
			 'gnus-Group-mouse-track-extent
		       'gnus-Subject-mouse-track-extent)
		     (setq e (make-extent point (point))))
		(set-extent-attribute e 'highlight))
	    (set-extent-endpoints e point (point))
	    (highlight-extent e t))))))

(defun gnus-install-mouse-tracker ()
  (if (eq mouse-motion-handler 'gnus-track-mouse)
      nil
    (set (make-local-variable 'gnus-orig-mouse-motion-handler)
	 mouse-motion-handler)
    (set (make-local-variable 'mouse-motion-handler) 'gnus-track-mouse)))

(add-hook 'gnus-Subject-mode-hook 'gnus-install-mouse-tracker)
(add-hook 'gnus-Group-mode-hook   'gnus-install-mouse-tracker)
(add-hook 'gnus-Article-mode-hook 'gnus-install-mouse-tracker)


;;; Right button pops up a menu of commands in Newsgroup and Subject buffers.
;;; Middle button selects indicated newsgroup or article.

(defvar gnus-Subject-menu
  '("GNUS Subject Commands"
    ["Select Article / Next Page" gnus-Subject-next-page t]
    ["Prev Page" gnus-Subject-prev-page t]
    ["Select Parent Article" gnus-Subject-refer-parent-article t]
    "----"
    ["Beginning of Article" gnus-Subject-beginning-of-article t]
    ["End of Article" gnus-Subject-end-of-article t]
    ["Show all Headers" gnus-Subject-show-all-headers t]
    ["ROT13 Article" gnus-Subject-caesar-message t]
    ["Save Article to Mail File" gnus-Subject-save-in-mail t]
    "----"
    ["Mail Reply" gnus-Subject-mail-reply t]
    ["Mail Reply (Citing Original)" gnus-Subject-mail-reply-with-original t]
    ["Post Reply" gnus-Subject-post-reply t]
    ["Post Reply (Citing Original)" gnus-Subject-post-reply-with-original t]
    "----"
    ["Mark Article as Read" gnus-Subject-mark-as-read-forward t]
    ["Mark Article as Unread" gnus-Subject-mark-as-unread-backward t]
    ["Mark Similar Subjects as Read" gnus-Subject-kill-same-subject t]
    ["Quit this Newsgroup" gnus-Subject-exit t]
    ["Quit this Newsgroup (mark everything as read)"
     gnus-Subject-catch-up-and-exit t]
    ))

(defvar gnus-Group-menu
  '("GNUS Group Commands"
    ["Select Newsgroup" gnus-Group-read-group t]
    ["Unsubscribe Newsgroup" gnus-Group-unsubscribe-current-group t]
    ["Get New News" gnus-Group-get-new-news t]
    "----"
    ["Mark Newsgroup as Read" gnus-Group-catch-up t]
    ["Mark All Newsgroups as Read" gnus-Group-catch-up-all t]
    ["Show All Newsgroups" gnus-Group-list-all-groups t]
    ["Show Subscribed Nonempty Newsgroups" gnus-Group-list-groups t]
    ["Check Bogosity" gnus-Group-check-bogus-groups t]
    "----"
    ["Save .newsrc" gnus-Group-force-update t]
    ["GNUS Manual" gnus-Info-find-node t]
    ["Suspend GNUS" gnus-Group-suspend t]
    ["Quit GNUS" gnus-Group-exit t]
    ))

(defun gnus-Subject-menu (e)
  (interactive "e")
  (mouse-set-point e)
  (beginning-of-line)
  (search-forward ":" nil t)
  (gnus-track-mouse e)
  (popup-menu gnus-Subject-menu))

(defun gnus-Group-menu (e)
  (interactive "e")
  (mouse-set-point e)
  (beginning-of-line)
  (search-forward ":" nil t)
  (gnus-track-mouse e)
  (popup-menu gnus-Group-menu))

(defun gnus-Group-mouse-read-group (e)
  (interactive "e")
  (mouse-set-point e)
  (beginning-of-line)
  (search-forward ":" nil t)
  (gnus-track-mouse e)
  (gnus-Group-read-group nil))

(defun gnus-Subject-mouse-next-page (e)
  (interactive "e")
  (mouse-set-point e)
  (beginning-of-line)
  (search-forward ":" nil t)
  (gnus-track-mouse e)
  (gnus-Subject-next-page nil))

(define-key gnus-Subject-mode-map 'button2 'gnus-Subject-mouse-next-page)
(define-key gnus-Group-mode-map   'button2 'gnus-Group-mouse-read-group)

(define-key gnus-Subject-mode-map 'button3 'gnus-Subject-menu)
(define-key gnus-Group-mode-map   'button3 'gnus-Group-menu)


;;; Put message headers in boldface, etc...

(defun gnus-fontify-headers ()
  (let* ((current 'italic)
	 p)
    (save-excursion
      (set-buffer gnus-Article-buffer)
      (goto-char (point-min))
      (while (and (not (eobp)) (not (looking-at "\n")))
	(cond
	 ((looking-at "^[^ \t\n]+[ \t]*:")
	  (set-extent-face
	   (make-extent (match-beginning 0) (match-end 0))
	   'bold)
	  (setq p (match-end 0))
	  (cond
	   ((looking-at "Subject[ \t]*:")
	    (setq current 'bold-italic)
	    (end-of-line)
	    (set-extent-face (make-extent p (point)) current))
	   ((looking-at "\\(From\\|Resent-From\\)[ \t]*:")
	    (setq current 'bold-italic)
	    (goto-char (match-end 0))
	    (or (looking-at ".*(\\(.*\\))")
		(looking-at "\\(.*\\)<")
		(looking-at "\\(.*\\)[@%]")
		(looking-at "\\(.*\\)"))
	    (end-of-line)
	    (set-extent-face (make-extent p (match-beginning 1)) 'italic)
	    (set-extent-face (make-extent (match-beginning 1) (match-end 1))
			     current)
	    (set-extent-face (make-extent (match-end 1) (point)) 'italic)
	    )
	   (t
	    (setq current 'italic)
	    (end-of-line)
	    (set-extent-face (make-extent p (point)) current))))
	 (t
	  (setq p (point))
	  (end-of-line)
	  (set-extent-face (make-extent p (point)) current)))
	(forward-line 1))
      (save-restriction
	(widen)
	(let* ((start (point))
	       (end (save-excursion
		      (goto-char (point-max))
		      (re-search-backward "\n--+ *\n" start t)
		      (point))))
	  (while (< (point) end)
	    (cond ((looking-at "^[ \t]*[A-Z]*[]}<>|][ \t]*")
		   (goto-char (match-end 0))
		   (or (save-excursion
			 (beginning-of-line)
			 (let ((case-fold-search nil)) ; aaaaah, unix...
			   (looking-at "^>From ")))
		       (setq current 'italic)))
		  ((or (looking-at "^In article\\|^In message")
		       (looking-at
		"^[^ \t].*\\(writes\\|wrote\\|said\\):\n[ \t]+[A-Z]*[]}<>|]"))
		   (setq current 'bold-italic))
		  (t (setq current nil)))
	    (cond (current
		   (setq p (point))
		   (end-of-line)
		   (set-extent-face (make-extent p (point)) current)))
	    (forward-line 1))))
      )))

(defun gnus-fontify-clarinews ()
;; removes the overstriking attempts in ClariNews articles by replacing them
;; with boldface, and deleting the offending overstrikes.
  "Nuke the underlining via backspaces found in a ClariNews article.
Also removes the extra blank lines from the article."  
  (if (string-match "^clari\\.*" gnus-newsgroup-name)
      (save-excursion
        (set-buffer gnus-Article-buffer)
        (goto-char (point-min))
        (while (re-search-forward "\\(\\(_.\\) ?\\)+" nil t)
          (set-extent-face (make-extent (match-beginning 0) (match-end 0)) 'bold))
        (goto-char (point-min))
        (while (re-search-forward "_" nil t) (replace-match ""))
        ;; Crunch blank lines 
        (while (re-search-forward "\n\n\n\n*" nil t)
          (replace-match "\n\n")))))

(add-hook 'gnus-Select-article-hook 'gnus-fontify-headers)
(add-hook 'gnus-Article-prepare-hook 'gnus-fontify-clarinews)

(provide 'gnus-lucid)


From help-lucid-emacs-request@lucid.com  Mon Jul 27 00:02:10 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA11454; Mon, 27 Jul 92 00:02:10 PDT
Received: by heavens-gate.lucid.com id AA20043g; Sun, 26 Jul 92 23:52:41 PDT
Received: from chenas.inria.fr by heavens-gate.lucid.com id AA20039g; Sun, 26 Jul 92 23:52:25 PDT
Received: from sid1.cenaath.cena.dgac.fr by chenas.inria.fr (5.65c8d/92.02.29)
	via Fnet-EUnet id AA28642; Mon, 27 Jul 1992 09:02:05 +0200 (MET)
Received: from geant.cenatls.cena.dgac.fr (geant-gw) by sid1.cenaath.cena.dgac.fr (4.1/SMI-4.1)
	id AA07457; Mon, 27 Jul 92 09:06:05 +0200
Received: from gogol.cenatls by geant.cenatls.cena.dgac.fr (4.1/SMI-4.1)
	id AA20505; Mon, 27 Jul 92 09:02:31 +0200
Date: Mon, 27 Jul 92 09:02:31 +0200
From: queinnec%geant.cenatls.cena.dgac.fr@lucid.com (Philippe Queinnec)
Message-Id: <9207270702.AA20505@geant.cenatls.cena.dgac.fr>
Received: by gogol.cenatls (4.1/SMI-4.1)
	id AA00487; Mon, 27 Jul 92 09:02:31 +0200
To: help Lucid Emacs <help-lucid-emacs@lucid.com>
Subject: Re: lhilit.el
In-Reply-To: Your message of Wed 8 July 92, 15:22:33 EST
References: <9207082022.AA02976@kocrsw12.delcoelect.com>

Here is a patch for lhilit.el with the following changes:
 - in hilit::hilit-buffer, a few variables were used without being locally
    bound.
 - remove the requirement of cl: it was used only for two pushes, and I
   don't like the cl module (it's big, it used to redefine `member' in
   emacs 18, and it raises bad memories of Common Lisp...)

Hope it helps.
Phil

PS: Mike Scheidler's address <c23mts@kocrsv01.delcoelect.com> seems invalid
(mail bounced with: 451 <c23mts@kocrsv01.delcoelect.com>... reply: read
error). Are you here Mike ?


--- lhilit.el.old	Tue Jul 21 17:36:10 1992
+++ lhilit.el	Tue Jul 21 17:45:16 1992
@@ -59,9 +59,4 @@
 ;;;
 
-;;------------------------------------------
-;; Load required Common Lisp extensions.
-;;------------------------------------------
-(require 'cl)
-
 (defvar hilit::init-done nil
   "Flag signifying that hilit subsystem has been initialized.")
@@ -111,5 +106,6 @@
   (interactive)
   (if hilit::mode-list
-      (let ((modes hilit::mode-list))
+      (let ((modes hilit::mode-list)
+            m p patterns mode start)
         (while (setq m (car modes))
           (setq mode (car m))
@@ -226,6 +222,8 @@
       ;; Install read/write hooks.
       ;;------------------------------------------
-      (push 'hilit::hilit-after-find find-file-hooks)
-      (push 'hilit::unhilit-before-save write-file-hooks)
+      (setq find-file-hooks
+            (cons 'hilit::hilit-after-find find-file-hooks))
+      (setq write-file-hooks
+            (cons 'hilit::unhilit-before-save write-file-hooks))
 
       ;;------------------------------------------

From help-lucid-emacs-request@lucid.com  Mon Jul 27 00:56:12 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA11517; Mon, 27 Jul 92 00:56:12 PDT
Received: by heavens-gate.lucid.com id AA20092g; Mon, 27 Jul 92 00:42:57 PDT
Received: from lulea.trab.se (miramon.lulea.trab.se) by heavens-gate.lucid.com id AA20088g; Mon, 27 Jul 92 00:42:47 PDT
Received: from holmendis.lulea.trab.se by lulea.trab.se; Mon, 27 Jul 92 09:53:58 +0200
Received: by holmendis.lulea.trab.se; Mon, 27 Jul 92 09:53:56 +0200
Message-Id: <9207270753.AA03353@holmendis.lulea.trab.se>
To: help-lucid-emacs@lucid.com
Cc: petter@lulea.trab.se
Subject: Please remove me!
Date: Mon, 27 Jul 92 09:53:55 +0200
From: Petter Bengtsson <petter%lulea.trab.se@lucid.com>

Please remove me from this mailing list.

-------------------------------------------------------------------------------
| Petter Bengtsson,  Telia Research AB,  Aurorum 6,  S-951 75 Lulea,  Sweden  |
| Email: petter@lulea.trab.se   Voice: (+46) 920 75476   Fax: (+46) 920 75490 |
-------------------------------------------------------------------------------

From help-lucid-emacs-request@lucid.com  Mon Jul 27 03:51:06 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA11744; Mon, 27 Jul 92 03:51:06 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA20235g; Mon, 27 Jul 92 03:38:51 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA08408; Mon, 27 Jul 92 06:48:37 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA08400; Mon, 27 Jul 92 06:48:35 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA07784; Mon, 27 Jul 92 06:49:38 -0400
Path: uunet!mcsun!corton!sophia!rhea.inria.fr!beust
From: beust%rhea.inria.fr@lucid.com (Cedric Beust)
Newsgroups: alt.lucid-emacs.help
Subject: Re: Trying to write x-find-file.
Message-Id: <25517@sophia.inria.fr>
Date: 27 Jul 92 10:17:56 GMT
References: <9207120216.AA00923@sergei.mitre.org>
Organization: University of Nice Sophia-Antipolis, France
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <9207120216.AA00923@sergei.mitre.org>, bcotton@sergei.mitre.org (Robert T. Cotton) writes:

>I am a novice elisp hacker at best, and am trying to figure out how to
>write two functions, x-find-file, and x-find-buffer.  Doing the
>obivous, find file/buffer in another screen (creating if necessary).
>Poking around the NEWS file and the elisp code I cannot figure out
>what needs to be done.  I have looked at display-buffer,
>get-screen-for-buffer, and x-create-screen but to no avail.
>Could someone point me in the right direction?
>


	Here it is :

(defun x-find-file (filename)
  "Does find file in new X Window"
  (interactive "FFind file other screen: ")
  (select-screen (x-create-screen nil))
  (switch-to-buffer (find-file-noselect filename)))

(defun x-switch-to-buffer (filename)
  "Does switch to buffer in new X Window"
  (interactive "BSwitch to buffer other screen: ")
  (select-screen (x-create-screen nil))
  (switch-to-buffer filename))


--
Cedric BEUST, beust@sa.inria.fr, Bull Research Koala proj, KoalaBus & xforum
Pho:(33) 93.65.77.70(.66 Fax), INRIA, B.P.93 - 06902 Sophia Antipolis, FRANCE.

From help-lucid-emacs-request@lucid.com  Mon Jul 27 06:16:06 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA12615; Mon, 27 Jul 92 06:16:06 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA20377g; Mon, 27 Jul 92 06:03:51 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA16813; Mon, 27 Jul 92 09:13:36 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA16804; Mon, 27 Jul 92 09:13:35 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA08910; Mon, 27 Jul 92 09:14:39 -0400
Path: uunet!mcsun!corton!loria!news.loria.fr!bosch
From: bosch%loria.fr@lucid.com (Guido Bosch)
Newsgroups: alt.lucid-emacs.help,alt.lucid-emacs.bug
Subject: Re: patches for Hyperbole to run on lemacs19.2
Message-Id: <BOSCH.92Jul27150526@moebius.loria.fr>
Date: 27 Jul 92 13:05:26 GMT
References: <9207241926.AA02186@gateway.bnr.ca>
Reply-To: Guido BOSCH <bosch%loria.fr@lucid.com>
Followup-To: alt.lucid-emacs.help
Organization: INRIA-Lorraine / CRIN, Nancy, France
In-Reply-To: JSPARKES%BNR.CA@lucid.com's message of 24 Jul 92 19:24:00 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <9207241926.AA02186@gateway.bnr.ca> JSPARKES%BNR.CA@lucid.com (J.D.) writes:

 >   Hi, I've made Hyperbole work under Lucid emacs 19.2, and I'd like some
 >   brave beta testers. :-). 
 >   ...
 >
 >   Anyway, please try these patches and let me know if you have any problems.

The function `hypb:function-symbol-replace' in `hypb.el' does not work
with the Lucid Emacs byte compiled code. I noticed that when I started
Gnus with Hyperbole loaded:

Signalling: (wrong-type-argument listp #<byte-code [nil "... 
  mapcar(#<byte-code [(elt) "....
  hypb:function-symbol-replace(gnus-inews-article widen hmail:msg-narrow)
  byte-code("...
  Gnus-init()
  funcall(Gnus-init)
  mapcar(funcall (bbdb-insinuate-gnus (lambda nil (load-file ...)) Gnus-init))
  run-hooks(gnus-Startup-hook)
  byte-code("...
  gnus(nil)
  call-interactively(gnus)

--
Guido BOSCH, INRIA-Lorraine/CRIN
Institut National de Recherche en Informatique et en Automatique (INRIA)
Centre de Recherche en Informatique de Nancy (CRIN)
Campus scientifique, B.P. 239            
54506 Vandoeuvre-les-Nancy CEDEX       	
Tel.: (+33) 83.91.24.24
Fax.: (+33) 83.41.30.79                	
email: bosch@loria.fr             	

From help-lucid-emacs-request@lucid.com  Mon Jul 27 07:42:17 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA12914; Mon, 27 Jul 92 07:42:17 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA20462g; Mon, 27 Jul 92 07:31:25 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA22094; Mon, 27 Jul 92 10:41:10 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA22086; Mon, 27 Jul 92 10:41:07 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA09641; Mon, 27 Jul 92 10:42:11 -0400
Path: uunet!dtix!darwin.sura.net!mips!zaphod.mps.ohio-state.edu!cs.utexas.edu!hermes.chpc.utexas.edu!news.utdallas.edu!corpgate!bnrgate!bwdls61!bwdls138!jsparkes
From: jsparkes%bwdls138.bnr.ca@lucid.com (Jeff Sparkes)
Newsgroups: alt.lucid-emacs.help
Subject: Re: patches for Hyperbole to run on lemacs19.2
Message-Id: <1992Jul27.141258.27566@bwdls61.bnr.ca>
Date: 27 Jul 92 14:12:58 GMT
References: <9207241926.AA02186@gateway.bnr.ca> <BOSCH.92Jul27150526@moebius.loria.fr>
Organization: Bell-Northern Research Ltd., Ottawa
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <BOSCH.92Jul27150526@moebius.loria.fr> Guido BOSCH <bosch@loria.fr> writes:
>In article <9207241926.AA02186@gateway.bnr.ca> JSPARKES%BNR.CA@lucid.com (J.D.) writes:
>
> >   Hi, I've made Hyperbole work under Lucid emacs 19.2, and I'd like some
> >   brave beta testers. :-). 
> >   ...
> >
> >   Anyway, please try these patches and let me know if you have any problems.
>
>The function `hypb:function-symbol-replace' in `hypb.el' does not work
>with the Lucid Emacs byte compiled code. I noticed that when I started
>Gnus with Hyperbole loaded:

I haven't seen this because I run without using the emacs19 bytecodes. (I
have to run emacs while dialed in from home, so I need compatible elc
files.) I have the following variable settings:

(setq byte-compile-emacs18-compatibility nil)
(setq byte-compile-generate-emacs19-bytecodes nil)
--
--
Jeff Sparkes jsparkes@bnr.ca	Bell-Northern Research, Ottawa (613)765-2503
"For better gas mileage, do not drive with the parking brake on."
  - paraphrased from the owners manual of my Integra.

From help-lucid-emacs-request@lucid.com  Mon Jul 27 09:02:19 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA13116; Mon, 27 Jul 92 09:02:19 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA20628g; Mon, 27 Jul 92 08:52:38 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA00528; Mon, 27 Jul 92 12:02:14 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA00508; Mon, 27 Jul 92 12:02:06 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA10160; Mon, 27 Jul 92 12:03:07 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!zaphod.mps.ohio-state.edu!cs.utexas.edu!torn!cunews!nrcnet0!bnrgate!bwdls61!bwdls138!jsparkes
From: jsparkes%bwdls138.bnr.ca@lucid.com (Jeff Sparkes)
Subject: patches for Hyperbole redux
Message-Id: <1992Jul27.153634.29716@bwdls61.bnr.ca>
Organization: Bell-Northern Research Ltd., Ottawa
Date: Mon, 27 Jul 1992 15:36:34 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

[I've been told that some lines were wrapped in my diffs, so I'm sending it
out via news.  (It's possible our mail gateway did it....)]

Hi, I've made Hyperbole work under Lucid emacs 19.2, and I'd like some
brave beta testers. :-).  Actually, everything seems to work fine,
with just one problem:

KNOWN BUG/PROBLEMS

1. sm-mouse-toggle-bindings (commonly bound to C-ct) does not preserve
   mode specific bindings because it only records the "default"
   bindings once.  Any advice on what to do for this is welcome.  (I
   find it annoying that I can't use the popup menu in Info-mode.)


Anyway, please try these patches and let me know if you have any problems.

*** 1.1	1992/07/15 20:51:21
--- hinit.el	1992/07/24 14:32:54
***************
*** 38,44 ****
  ;;; Public variables
  ;;; ************************************************************************

! (defconst hyperb:version "3.04" "Hyperbole revision number.")

  (defvar   hyperb:host-domain nil
    "<@domain-name> for current host.  Set automatically by 'hyperb:init'.")
--- 38,44 ----
  ;;; Public variables
  ;;; ************************************************************************

! (defconst hyperb:version "3.04+Lucid" "Hyperbole revision number.")

  (defvar   hyperb:host-domain nil
    "<@domain-name> for current host.  Set automatically by 'hyperb:init'.")
***************
*** 107,112 ****
--- 107,113 ----
    ;; Highlight explicit buttons whenever a file is read in.
    ;;
    (if hyperb:epoch-p (var:append 'find-file-hooks '(ep:but-create)))
+   (if hyperb:lucid-p (var:append 'find-file-hooks '(le:but-create)))
    ;;
    ;; Save button attribute file whenever same dir file is saved and
    ;; 'ebut:hattr-save' is non-nil.
*** 1.1	1992/07/14 17:24:04
--- hmouse-key.el	1992/07/24 14:34:12
***************
*** 88,93 ****
--- 88,98 ----
  		    (mouse::index mouse-right mouse-up)))
      (let ((wsys (sm-window-sys-term)))
        (cond
+        ;; Lucid emacs 19
+        ((string-match "Lucid" (emacs-version))
+ 	(mapcar '(lambda (key) (cons key (key-binding key)))
+ 		(list 'button2 'button2up 'button3 'button3up)))
+
         ;; X
         ((equal wsys "xterm")
  	(mapcar '(lambda (key) (cons key (lookup-key mouse-map key)))
***************
*** 120,125 ****
--- 125,135 ----
      (let ((wsys (sm-window-sys-term)))
        (cond
         ;; X
+        ((string-match "Lucid" (emacs-version))
+ 	(mapcar
+ 	 '(lambda (key-and-binding)
+ 	    (global-set-key (car key-and-binding) (cdr key-and-binding)))
+ 	 key-binding-list))
         ((equal wsys "xterm")
  	(mapcar
  	 '(lambda (key-and-binding)
***************
*** 148,154 ****
      ;; Ensure Gillespie's Info mouse support is off since
      ;; Hyperbole handles that.
      (setq Info-mouse-support nil)
!     (cond ((boundp 'epoch::version)
  	   (setq mouse-set-point-command 'mouse::set-point)
  	   (global-set-mouse mouse-middle mouse-down  'sm-depress)
  	   (global-set-mouse mouse-middle mouse-up    'smart-key-mouse)
--- 158,171 ----
      ;; Ensure Gillespie's Info mouse support is off since
      ;; Hyperbole handles that.
      (setq Info-mouse-support nil)
!     (cond ((string-match "Lucid" (emacs-version))
! 	   (defun le:mouse-set-point() (mouse-set-point (copy-event last-input-event)
))
! 	   (setq mouse-set-point-command 'le:mouse-set-point)
! 	   (global-set-key 'button2 'sm-depress)
! 	   (global-set-key 'button2up 'smart-key-mouse)
! 	   (global-set-key 'button3 'sm-depress-meta)
! 	   (global-set-key 'button3up 'smart-key-mouse-meta))
!           ((boundp 'epoch::version)
  	   (setq mouse-set-point-command 'mouse::set-point)
  	   (global-set-mouse mouse-middle mouse-down  'sm-depress)
  	   (global-set-mouse mouse-middle mouse-up    'smart-key-mouse)
*** 1.1	1992/07/15 15:32:51
--- hmouse-tag.el	1992/07/15 16:34:50
***************
*** 37,42 ****
--- 37,43 ----
    ;; wtags is Bob Weiner's personal, unreleased changes to "tags.el" to
    ;; do exact tag matching.  That package is not required to use this code.
    (or (load "wtags" t)
+       (and (string-match "Lucid" (emacs-version)) (load "etags"))
        (and (load "tags") (provide 'tags))))

  ;;; ************************************************************************
*** 1.1	1992/07/24 14:53:05
--- hsite-ex.el	1992/07/24 14:53:23
***************
*** 1,5 ****
  ;;!emacs
! ;; $Id: hsite-ex.el,v 1.1 1992/07/24 14:53:05 jsparkes Exp jsparkes $
  ;;
  ;; FILE:         hsite.el
  ;; SUMMARY:      Site-specific setup for Hyperbole
--- 1,5 ----
  ;;!emacs
! ;; $Id: hsite-ex.el,v 1.2 1992/05/14 10:11:45 rsw Exp $
  ;;
  ;; FILE:         hsite.el
  ;; SUMMARY:      Site-specific setup for Hyperbole
***************
*** 127,132 ****
--- 127,153 ----
  	"Machine specific val for empty loop counter, Epoch but flash delay.")
        )
    (defun hui:but-flash ())
+   )
+ ;;; Support button highlighting and flashing under Lucid emacs 19.
+ ;;;
+ (defvar hyperb:lucid-p
+   (string-match "Lucid" (emacs-version))
+   "Non-nil value indicates running Lucid emacs 19.")
+
+ (defvar hyperb:use-lucid-menubar t
+   "*Non-nil means to add the Hyperbole menu to the menubar under Lucid emacs."
)
+
+ (if hyperb:lucid-p
+     (progn
+       (require 'hui-lucid-b)
+       (fset 'hui:but-flash 'le:but-flash)
+       ;; This color cycling really must be done until a desired color is hit.
+       (le:cycle-but-color)
+       ;; If you use Epoch and find that the Hyperbole button flash time is
+       ;; too slow or too fast, adjust it here.
+       (defvar le:but-flash-time 1
+ 	"Time to flash button under Lucid emacs, in seconds.")
+       )
    )

  ;;; You may want to look at this file just to see what it does.
*** 1.1	1992/07/24 14:30:56
--- hui-lucid-b.el	1992/07/24 14:30:30
***************
*** 0 ****
--- 1,317 ----
+ ;;!emacs
+ ;; $Id: hui-ep-but.el,v 1.2 1992/05/14 10:12:14 rsw Exp $
+ ;;
+ ;; FILE:         hui-lucid-b.el
+ ;; SUMMARY:      Support for highlighting/flashing buttons under Lucid emacs 1
9.
+ ;; USAGE:        Lucid emacs Lisp Library
+ ;;
+ ;; AUTHOR:       Bob Weiner; Jeff Sparkes
+ ;; ORG:          Brown U.; Bell-Northern Research
+ ;;
+ ;; ORIG-DATE:    27-Apr-91 at 05:37:10
+ ;; LAST-MOD:
+ ;;
+ ;; This file is part of Hyperbole.
+ ;; It is for use with Epoch, a modified version of GNU Emacs.
+ ;;
+ ;; Copyright (C) 1990, 1991, Brown University and Alan M. Carroll
+ ;; Developed with support from Motorola Inc.
+ ;; Available for use and distribution under the same terms as GNU Emacs.
+ ;;
+ ;; DESCRIPTION:
+ ;;
+ ;;   This is truly prototype code.
+ ;;
+
+ ;;; ************************************************************************
+ ;;; Other required Elisp libraries
+ ;;; ************************************************************************
+
+ (require 'hbut)
+
+ ;;; ************************************************************************
+ ;;; Public variables
+ ;;; ************************************************************************
+
+ ;;; ************************************************************************
+ ;;; Public functions
+ ;;; ************************************************************************
+
+ (fset 'le:but-add 'epoch::add-button)
+
+ (defun le:but-color ()
+   "Return current color of buffer's buttons."
+   (if le:color-ptr
+       (car le:color-ptr)
+     (face-foreground (find-face 'default))))
+
+ (defun le:but-create (&optional start-delim end-delim regexp-match)
+   "Mark all hyper-buttons in buffer as Lucid extents, for later highlighting.
+ Will use optional strings START-DELIM and END-DELIM instead of default values.
+ If END-DELIM is a symbol, e.g. t, then START-DELIM is taken as a regular
+ expression which matches an entire button string.
+ If REGEXP-MATCH is non-nil, only buttons matching this argument are
+ highlighted."
+   (save-excursion
+     (map-extents (function (lambda (x y) (delete-extent x)))
+ 		 (current-buffer) (point-min) (point-max) nil))
+   (le:but-create-all start-delim end-delim regexp-match))
+
+ (defun le:but-create-all (&optional start-delim end-delim regexp-match)
+   "Mark all hyper-buttons in buffer as Lucid extents, for later highlighting.
+ Will use optional strings START-DELIM and END-DELIM instead of default values.
+ If END-DELIM is a symbol, e.g. t, then START-DELIM is taken as a regular
+ expression which matches an entire button string.
+ If REGEXP-MATCH is non-nil, only buttons matching this argument are
+ highlighted."
+   (ebut:map '(lambda (lbl start end) (set-extent-attribute
+ 				      (set-extent-face (make-extent start end)
+ 						      'le:but)
+ 				      'highlight))
+ 	
+ 	    start-delim end-delim regexp-match 'include-delims))
+ 	
+ (defun le:but-delete (&optional pos)
+   (delete-extent (extent-at (or pos (point)))))
+
+ ;;; ************************************************************************
+ ;;; Private functions
+ ;;; ************************************************************************
+
+ (defmacro le:list-cycle (list-ptr list)
+   "Move LIST-PTR to next element in LIST or when at end to first element."
+   (` (or (and (, list-ptr)
+ 	      (setq (, list-ptr) (cdr (, list-ptr))))
+ 	 (setq (, list-ptr) (, list)))))
+
+ ;;; ************************************************************************
+ ;;; Private variables
+ ;;; ************************************************************************
+
+ (defconst le:color-list '( "red" "blue" "paleturquoise4" "mediumpurple2"
+ "lightskyblue3" "springgreen2" "salmon" "yellowgreen" "darkorchid2"
+ "aquamarine4" "slateblue4" "slateblue1" "olivedrab1" "goldenrod4"
+ "goldenrod3" "cadetblue2" "burlywood1" "slategrey" "mistyrose"
+ "limegreen" "lightcyan" "goldenrod" "gainsboro" "skyblue1" "honeydew"
+ "yellow2" "tomato3" "skyblue" "purple4" "orange3" "bisque3" "bisque2"
+ "grey34" "gray99" "gray63" "gray44" "gray37" "gray33" "gray26" "azure1"
+ "snow4" "peru" "red" "lightgoldenrod4" "mediumseagreen" "blush"
+ "mediumorchid2" "lightskyblue1" "darkslateblue" "midnightblue"
+ "lightsalmon1" "lemonchiffon" "yellow" "lightsalmon" "coral"
+ "dodgerblue3" "darkorange4" "blue" "royalblue4" "red" "green" "cyan"
+ "darkviolet" "darksalmon" "darkorange" "blue" "pink" "magenta2"
+ "sienna4" "khaki2" "grey75" "grey74" "grey73" "grey69" "grey68" "grey35"
+ "grey13" "gray90" "gray81" "gray55" "gray51" "gray31" "snow2" "pink3"
+ "grey7" "gray1" "red4" "red3" "tan" "red" "yellow" "mediumvioletred"
+ "lightslategrey" "lavenderblush4" "turquoise" "darkturquoise"
+ "darkslategrey" "lightskyblue" "lightsalmon4" "lightsalmon3"
+ "forestgreen" "dodgerblue4" "orchid" "rosybrown4" "brown" "peachpuff3"
+ "palegreen3" "orangered2" "rose" "lightcyan4" "indianred4" "indianred3"
+ "seagreen2" "indianred" "deeppink1" "navyblue" "lavender" "grey"
+ "deeppink" "salmon4" "salmon3" "oldlace" "grey78" "grey77" "grey54"
+ "grey45" "grey21" "gray97" "gray96" "gray95" "gray88" "gray87" "gray86"
+ "gray70" "gray57" "gray38" "gray12" "gray11" "plum3" "linen" "gray9"
+ "gray8" "blue4" "beige" "turquoise" "blue" "lemonchiffon4"
+ "darkseagreen1" "antiquewhite3" "mediumorchid" "springgreen"
+ "turquoise4" "steelblue3" "mistyrose2" "lightcyan2" "red" "firebrick2"
+ "royalblue" "cadetblue" "skyblue3" "yellow3" "salmon1" "orange4"
+ "hotpink" "grey90" "gray56" "gray39" "gray18" "gray14" "plum4" "grey6"
+ "gray6" "gold3" "gold1" "blue2" "tan2" "cyan" "mediumspringgreen"
+ "darkolivegreen2" "goldenrod" "lightsteelblue" "brown" "whip"
+ "chartreuse3" "violetred4" "royalblue2" "royalblue1" "papayawhip"
+ "mistyrose3" "lightcyan1" "aquamarine" "skyblue4" "hotpink4" "hotpink3"
+ "hotpink2" "dimgray" "tomato" "grey66" "grey65" "grey64" "grey33"
+ "grey27" "gray76" "gray69" "gray68" "grey0" "azure" "green"
+ "darkgoldenrod4" "darkgoldenrod3" "darkgoldenrod2" "darkgoldenrod"
+ "brown" "lightsalmon2" "deepskyblue4" "deepskyblue3" "deepskyblue2"
+ "deepskyblue" "darkorange1" "violetred3" "violetred2" "violetred1"
+ "slateblue3" "slateblue2" "drab" "indianred1" "firebrick1" "cadetblue4"
+ "violetred" "rosybrown" "blue" "firebrick" "grey100" "wheat4" "grey79"
+ "grey76" "grey61" "gray93" "gray84" "gray65" "gray36" "gray32" "gray13"
+ "gray10" "azure3" "snow1" "tan1" "gray" "darkolivegreen1" "blue"
+ "almond" "lavenderblush3" "lavenderblush2" "lavenderblush1"
+ "darkolivegreen" "lavenderblush" "aquamarine2" "red" "olivedrab2"
+ "mistyrose4" "mistyrose1" "lightcyan3" "lightcoral" "chartreuse"
+ "peachpuff" "palegreen" "mintcream" "skyblue2" "moccasin" "tomato1"
+ "orchid3" "maroon3" "salmon" "grey81" "grey62" "grey39" "grey38"
+ "grey37" "gray92" "gray83" "gray66" "gray54" "gray50" "gray30" "gray19"
+ "gray15" "azure4" "grey3" "tan3" "pink" "gray" "blue" "lightsteelblue2"
+ "lightsteelblue1" "green" "lightslategray" "lemonchiffon2"
+ "springgreen1" "greenyellow" "chartreuse2" "grey" "royalblue3"
+ "powderblue" "peachpuff2" "palegreen2" "cream" "slateblue" "seashell2"
+ "deeppink2" "darkkhaki" "maroon4" "sienna" "grey71" "grey67" "grey18"
+ "gray59" "gray43" "gray25" "bisque" "red1" "mediumslateblue"
+ "lightgoldenrod1" "goldenrod" "paleturquoise3" "lightskyblue4" "green"
+ "yellow" "smoke" "blue" "white" "steelblue4" "rosybrown3" "peachpuff1"
+ "palegreen1" "blueviolet" "seashell4" "sienna3" "grey40" "gray91"
+ "gray82" "gray5" "cyan2" "cyan1" "blue1" "snow" "lightgoldenrod2"
+ "lightslateblue" "mediumorchid3" "darkseagreen4" "springgreen3" "green"
+ "slategray4" "slategray3" "slategray2" "blue" "peachpuff4" "palegreen4"
+ "green" "orangered3" "goldenrod1" "ghostwhite" "firebrick4" "firebrick3"
+ "cadetblue3" "slategray" "seashell3" "honeydew3" "cornsilk4" "cornsilk2"
+ "purple1" "dimgrey" "khaki1" "ivory3" "grey70" "grey60" "grey32"
+ "grey22" "grey12" "gray98" "gray89" "gray71" "gray64" "gray60" "gray49"
+ "azure2" "gray3" "paleturquoise1" "mediumpurple1" "purple"
+ "lemonchiffon1" "blue" "navajowhite3" "darkorchid1" "orange"
+ "goldenrod2" "khaki" "chocolate2" "burlywood2" "honeydew1" "darkgreen"
+ "thistle3" "thistle2" "thistle1" "thistle" "maroon2" "maroon1" "grey53"
+ "grey44" "grey25" "gray74" "gray45" "gray41" "gray35" "gray27" "gray23"
+ "gray16" "brown4" "wheat" "coral" "tan4" "lightgoldenrodyellow" "blue"
+ "green" "gray" "palevioletred3" "mediumpurple4" "mediumpurple3"
+ "saddlebrown" "blue" "darkorchid4" "darkorchid3" "puff" "olivedrab4"
+ "lightblue4" "lightpink" "lightgray" "honeydew2" "cornsilk1" "lace"
+ "sienna1" "bisque4" "orchid" "khaki3" "grey84" "grey83" "grey82"
+ "grey72" "grey52" "grey43" "grey26" "grey14" "grey10" "gray75" "gray53"
+ "gray21" "gray20" "brown3" "grey8" "red2" "navy" "grey" "gold"
+ "mediumaquamarine" "lightgoldenrod" "darkslategray4" "darkseagreen3"
+ "darkseagreen2" "antiquewhite4" "white" "springgreen4" "lightyellow4"
+ "white" "aquamarine1" "turquoise3" "steelblue2" "rosybrown2" "pink"
+ "gray" "indianred2" "dodgerblue" "green" "seagreen1" "deeppink4"
+ "aliceblue" "magenta1" "pink" "sienna2" "orchid1" "gray100" "grey97"
+ "grey94" "grey87" "grey86" "grey51" "grey42" "grey19" "gray94" "gray85"
+ "gray61" "brown2" "khaki" "grey1" "gold4" "blue" "green" "grey"
+ "turquoise" "paleturquoise" "mediumorchid4" "antiquewhite2"
+ "lightyellow2" "violet" "salmon" "chartreuse1" "turquoise1" "sandybrown"
+ "orangered1" "lightpink1" "lightblue2" "lightblue1" "grey" "seagreen4"
+ "seagreen3" "lightblue" "deeppink3" "burlywood" "seashell" "hotpink1"
+ "gray" "yellow4" "yellow" "purple" "orange" "ivory4" "grey99" "grey89"
+ "grey63" "grey58" "grey49" "grey31" "grey24" "grey20" "green4" "green1"
+ "gray73" "gray67" "coral3" "coral2" "plum2" "pink4" "ivory" "gray4"
+ "gray2" "gold2" "aquamarine" "grey" "lightgoldenrod3" "darkolivegreen3"
+ "darkgoldenrod1" "goldenrod" "orchid" "chiffon" "navajowhite4"
+ "deepskyblue1" "lightyellow" "floralwhite" "blue" "mediumblue"
+ "chocolate4" "chocolate3" "burlywood4" "turquoise" "steelblue" "green"
+ "lawngreen" "honeydew4" "seagreen" "orchid4" "wheat1" "violet" "ivory1"
+ "grey88" "grey85" "grey57" "grey56" "grey55" "grey48" "grey47" "grey46"
+ "grey30" "grey17" "gray47" "gray29" "pink2" "grey5" "grey4" "green"
+ "gray0" "brown" "lightsteelblue4" "darkolivegreen4" "palevioletred4"
+ "blue" "darkslategray3" "darkslategray2" "darkslategray1"
+ "blanchedalmond" "palegoldenrod" "blue" "lightseagreen" "lemonchiffon3"
+ "darkslategray" "green" "darkseagreen" "antiquewhite" "darkorange2"
+ "chartreuse4" "blue" "rosybrown1" "olivedrab3" "lightpink2" "orangered"
+ "thistle4" "blue" "cornsilk" "salmon2" "orchid2" "ivory2" "grey93"
+ "grey92" "grey91" "grey36" "grey29" "grey28" "grey16" "gray79" "gray78"
+ "gray77" "gray48" "gray17" "coral4" "coral1" "plum1" "pink1" "grey9"
+ "grey2" "gray7" "cyan4" "blue3" "plum" "cornflowerblue" "lightskyblue2"
+ "antiquewhite1" "navajowhite2" "navajowhite1" "lightyellow3"
+ "navajowhite" "darkorange3" "whitesmoke" "turquoise2" "steelblue1"
+ "lightpink4" "lightblue3" "green" "chocolate1" "blue" "olivedrab"
+ "lightgrey" "chocolate" "magenta4" "magenta3" "yellow1" "purple3"
+ "purple2" "orange2" "orange1" "magenta" "bisque1" "wheat2" "maroon"
+ "khaki4" "grey96" "grey95" "grey80" "grey50" "grey41" "grey15" "grey11"
+ "gray80" "gray58" "gray40" "gray34" "gray22" "brown1" "snow3"
+ "mediumturquoise" "lightsteelblue3" "palevioletred2" "palevioletred1"
+ "paleturquoise2" "green" "palevioletred" "mediumorchid1" "white"
+ "mediumpurple" "lightyellow1" "dodgerblue2" "dodgerblue1" "violet"
+ "aquamarine3" "slategray1" "gray" "orangered4" "lightpink3" "blue"
+ "darkorchid" "cadetblue1" "burlywood3" "seashell1" "cornsilk3" "tomato4"
+ "tomato2" "wheat3" "grey98" "grey59" "grey23" "green3" "green2" "gray72"
+ "gray62" "gray52" "gray46" "gray42" "gray28" "gray24" "white" "cyan3"
+ "black" ))
+
+ (defvar le:color-ptr nil
+   "Pointer to current color name table to use for Hyperbole buttons in Lucid e
macs.")
+
+ (defconst le:good-colors
+   '(
+     "medium violet red" "indianred4" "firebrick1" "DarkGoldenrod" "NavyBlue"
+     "darkorchid" "tomato3" "mediumseagreen" "deeppink" "forestgreen"
+     "mistyrose4" "slategrey" "purple4" "dodgerblue3" "mediumvioletred"
+     "lightsalmon3" "orangered2" "turquoise4" "Gray55"
+     )
+   "Good colors for contrast against wheat background and black foreground.")
+
+
+ (defvar le:item-highlight-color (face-foreground (find-face 'default))
+   "Color with which to highlight list/menu selections.
+ Call (le:set-item-highlight <color>) to change value.")
+
+ ;;; ************************************************************************
+ ;;; Public functions
+ ;;; ************************************************************************
+
+ (defun le:cycle-but-color (&optional color)
+   (interactive)
+   (if (not (x-color-display-p))
+       nil
+     (if color (setq le:color-ptr nil))
+     (set-face-foreground
+      'le:but (or color (car (le:list-cycle le:color-ptr le:good-colors))))
+     (set-face-background 'le:flash (le:but-color))
+     (redraw-display)
+     t))
+
+ (defun le:but-flash ()
+   "Flash a Hyperbole button at point to indicate selection, when using Epoch."
+   (interactive)
+   (let ((ibut) (prev)
+ 	(start (hattr:get 'hbut:current 'lbl-start))
+ 	(end   (hattr:get 'hbut:current 'lbl-end)))
+     (and start end (setq prev (extent-at (point))
+ 			 ibut t)
+ 	 (if (not prev) (set-extent-face (make-extent start end) 'le:but)))
+     (let* ((b (extent-at (point))))
+       (if b
+ 	  (progn
+ 	    (set-extent-face b 'le:flash)
+ 	    (redraw-display)
+ 	    (add-timeout le:but-flash-time
+ 			 (function (lambda(b) (set-extent-face b 'le:but))) b)
+ 	    (redraw-display)
+ 	    )))
+     (if (and ibut (not prev)) (le:but-delete))
+     ))
+
+ (defun le:set-item-highlight (&optional color-name)
+   "Setup or reset item highlight style using optional color-name.
+ Currently does nothing so as not to intere with Lucid emacs highlighting."
+   )
+
+ (defun le:select-item (&optional pnt)
+   "Select item in current buffer at optional position PNT using le:item-style.
"
+   (or le:item-button
+       (setq le:item-button (set-extent-face (make-extent (point) (point))
+ 					    'le:item-style)))
+   (set-extent-attribute le:item-button 'highlight)
+   (if pnt (goto-char pnt))
+   (skip-chars-forward " \t")
+   (skip-chars-backward "^ \t\n")
+   (let ((start (point)))
+     (save-excursion
+       (skip-chars-forward "^ \t\n")
+       (update-extent le:item-button start (point))
+       ))
+   (redraw-display)
+   )
+
+ (defun le:select-line (&optional pnt)
+   "Select line in current buffer at optional position PNT using le:item-style.
"
+   (or le:item-button
+       (setq le:item-button (set-extent-face (make-extent (point) (point))
+ 					    'le:item-style)))
+   (if pnt (goto-char pnt))
+   (save-excursion
+     (beginning-of-line)
+     (update-extent le:item-button (point) (progn (end-of-line) (point)))
+     )
+   (redraw-display)
+   )
+
+ ;;; ************************************************************************
+ ;;; Private variables
+ ;;; ************************************************************************
+
+ (or (find-face 'le:but) (copy-face 'default 'le:but))
+ (or (find-face 'le:flash) (copy-face 'default 'le:flash))
+
+ (set-face-foreground 'le:but (le:but-color))
+ (set-face-background 'le:but (face-background (find-face 'default)))
+ (set-face-background 'le:flash (le:but-color))
+ (set-face-foreground 'le:flash (face-foreground (find-face 'default)))
+ (if (not (x-color-display-p))
+     (make-face-bold 'le:but))
+
+ (make-variable-buffer-local 'le:item-button)
+ (copy-face 'le:but 'le:item-style)
+
+ (provide 'hui-lucid-b)
*** 1.1	1992/07/15 18:52:15
--- hui-menus.el	1992/07/24 14:46:23
***************
*** 207,221 ****
  Suitable for binding to a key, e.g. {C-h h}.
  Non-interactively, returns t if menu is actually invoked by call, else nil."
    (interactive)
!   (condition-case ()
!       (if hui:menu-p
! 	  nil
! 	(setq hui:menu-p t)
! 	(hui:menu-act 'hyperbole)
! 	(setq hui:menu-p nil)
! 	t)
!     (quit (setq hui:menu-p nil))
!     (error (setq hui:menu-p nil))))

  (defun hui:menu-act (menu)
    "Prompts user with Hyperbole MENU (a symbol) and performs selected item."
--- 207,227 ----
  Suitable for binding to a key, e.g. {C-h h}.
  Non-interactively, returns t if menu is actually invoked by call, else nil."
    (interactive)
!   (let ((minibuffer-confirm-complete nil))
!     (condition-case ()
! 	(if hui:menu-p
! 	    nil
! 	  ;; Attempt to work around a difference in Lucid emacs 19.  Hitting
! 	  ;; C-G at the minibuffer prompt does not invoke the quit case in
! 	  ;; this code. I don't really know why there even is a flag, but
! 	  ;; not setting it seems to work here.  -Jeff Sparkes
! 	  (if (not hyperb:lucid-p)
! 	      (setq hui:menu-p t))
! 	  (hui:menu-act 'hyperbole)
! 	  (setq hui:menu-p nil)
! 	  t)
!       (quit (setq hui:menu-p nil))
!       (error (setq hui:menu-p nil)))))

  (defun hui:menu-act (menu)
    "Prompts user with Hyperbole MENU (a symbol) and performs selected item."
***************
*** 252,258 ****
    "Uses CHAR-STR or last input character as minibuffer argument."
    (interactive)
    (erase-buffer)
!   (insert (or char-str (substring (recent-keys) -1)))
    (exit-minibuffer))

  (defun hui:menu-help (help-str)
--- 258,268 ----
    "Uses CHAR-STR or last input character as minibuffer argument."
    (interactive)
    (erase-buffer)
!   (if hyperb:lucid-p
!       (insert (char-to-string
! 	       (event-to-character
! 		(car (last (append (recent-keys) nil))))))
!     (insert (or char-str (substring (recent-keys) -1))))
    (exit-minibuffer))

  (defun hui:menu-help (help-str)
***************
*** 360,364 ****
--- 370,397 ----
      (while (<= i 126)
        (define-key hui:menu-mode-map (char-to-string i) 'hui:menu-enter)
        (setq i (1+ i)))))
+
+ (defun hui:menubar-do-menu (menus path)
+   "Add the menu and it's entries to the menubar in Lucid emacs."
+   (if (and menus (listp menus))
+     (hui:menubar-do-menu-entry (cdr (cdr menus)) path)))
+
+ (defun hui:menubar-do-menu-entry (menu path)
+   "Process the list of Hyperbole MENUS for Lucid emacs menubar."
+   (if menu
+       (progn
+ 	(let* ((entry (car menu))
+ 	       (name (car entry))
+ 	       (function (car (cdr entry))))
+ 	  (if (and (listp function)
+ 		   (assq (cdr function) hui:menus))	; is this a submenu?
+ 		(hui:menubar-do-menu (assq (cdr function) hui:menus)
+ 				     (append path (list name)))
+ 	    (add-menu-item path name function t)))
+ 	(hui:menubar-do-menu-entry (cdr menu) path))))
+
+ (if hyperb:lucid-p
+     (hui:menubar-do-menu (assq 'hyperbole hui:menus) '("Hyperbole")))
+

  (provide 'hui-menus)
--
Jeff Sparkes
jsparkes@bnr.ca    Bell-Northern Research, Ottawa, Ontario, Canada



--
--
Jeff Sparkes jsparkes@bnr.ca	Bell-Northern Research, Ottawa (613)765-2503
"For better gas mileage, do not drive with the parking brake on."
  - paraphrased from the owners manual of my Integra.

From help-lucid-emacs-request@lucid.com  Mon Jul 27 09:11:46 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA13137; Mon, 27 Jul 92 09:11:46 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA20674g; Mon, 27 Jul 92 09:02:17 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA01048; Mon, 27 Jul 92 12:11:51 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA01034; Mon, 27 Jul 92 12:11:48 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA10211; Mon, 27 Jul 92 12:12:43 -0400
Path: uunet!think.com!Think.COM!ack
From: ack@Think.COM (Alex Klaiber)
Newsgroups: alt.lucid-emacs.help
Subject: lemacs 19.2 and evi (vi emulator)
Date: 27 Jul 1992 16:08:29 GMT
Organization: Thinking Machines Corporation, Cambridge MA, USA
Distribution: world
Message-Id: <15171tINNrk7@early-bird.think.com>
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Hi, I am trying to use evi (the vi emulator) with lemacs 19.2.  The version of evi that came with lemacs 19.2 doesn't work -- when I load it, lemacs complains

    can't bind 27: this map contains meta-mindings: #<keymap 232 entries>

This is from the header of evi.el
    ;; Evi 0.93 - Emulate Vi
    ;; Local modifications for version 19 - eb Wed Sep 11 10:37:44 1991

Is there a quick fix I can apply?  Does someone have a version of evi that works with lemacs 19.2?

Thanks much,

	Alex

-- 
	Alexander Klaiber
	klaiber@cs.washington.edu

From help-lucid-emacs-request@lucid.com  Mon Jul 27 10:01:54 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA13226; Mon, 27 Jul 92 10:01:54 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA20797g; Mon, 27 Jul 92 09:49:41 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA03568; Mon, 27 Jul 92 12:59:27 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA03562; Mon, 27 Jul 92 12:59:26 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA10536; Mon, 27 Jul 92 13:00:31 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!convex!news.utdallas.edu!corpgate!bnrgate!bwdls61!bwdls138!jsparkes
From: jsparkes%bwdls138.bnr.ca@lucid.com (Jeff Sparkes)
Subject: Re: patches for Hyperbole to run on lemacs19.2
Message-Id: <1992Jul27.162525.956@bwdls61.bnr.ca>
Organization: Bell-Northern Research Ltd., Ottawa
References: <BOSCH.92Jul27031513@moebius.loria.fr>
Distribution: alt
Date: Mon, 27 Jul 1992 16:25:25 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <BOSCH.92Jul27031513@moebius.loria.fr> bosch@loria.fr (Guido Bosch) writes:
>In article <9207241926.AA02186@gateway.bnr.ca> JSPARKES%BNR.CA@lucid.com (J.D.) writes:
>
> >   Hi, I've made Hyperbole work under Lucid emacs 19.2, and I'd like some
> >   brave beta testers. :-).  Actually, everything seems to work fine,
> >   with just one problem:
> >
> >   KNOWN BUG/PROBLEMS
> >
> >   1. sm-mouse-toggle-bindings (commonly bound to C-ct) does not preserve
> >      mode specific bindings because it only records the "default"
> >      bindings once.  Any advice on what to do for this is welcome.  (I
> >      find it annoying that I can't use the popup menu in Info-mode.)
> >
>
>The problem is a more general one, after my opinon: For Emacs 19, the
>Hyperbole user interface should be modified taking advantage of the
>new features:
>
>	- The user interface menu (`hui::menu') should be implemented 
>	  as a popup-menu, accessable in the menu bar (I already
>	  hacked it around, it was rather straightforward, see at the
>	  end of this mailing).
>
>	- The smart-key stuff should be bound to buttons with
>	  modifiers (shift/control/meta/...). At least button3 has to
>	  be kept free for mode specific menus. This is because
>	  Emacses running under X11 come with a lot of packages that
>	  do their own (maybe mode local) mouse handling.
>
>	  Another solution would be to intergrate Hyperbole as an
>	  essential part of Emacs 19's user interface and to use it
>	  for all kind of hypertext like mouse actions. This is maybe a
>	  better, but also a more expensive solution. 
>
>	  For the moment, I use the following key bindings for
>	  Hyperbole, and this also solves your problem with the info
>	  menu. (I use the Control Shift modifier for smart keys,
>	  because there are few chances that other packages could use
>	  this also)
>	  	  
>	(cond ((string-match "Lucid" (emacs-version))
>	   (defun le:mouse-set-point()
>	     (mouse-set-point (copy-event last-input-event)))
>	   (setq mouse-set-point-command 'le:mouse-set-point)
>	   (global-set-key '(control shift button2) 'sm-depress)
>	   (global-set-key '(control shift button2up) 'smart-key-mouse)
>	   (global-set-key '(control shift button2) 'sm-depress-meta)
>	   (global-set-key '(control shift button3up) 'smart-key-mouse-meta))
>

This is a good idea.  My goal was merely to get Hyperbole up and running;
plus I 'm used to the way it works.

>	  
>Another point for the TODO list: 
>
>	- Highlighting extents for explicit (and maybe implicit) buttons

I've done this.  Maybe it doesn't work under mono?
--
--
Jeff Sparkes jsparkes@bnr.ca	Bell-Northern Research, Ottawa (613)765-2503
"For better gas mileage, do not drive with the parking brake on."
  - paraphrased from the owners manual of my Integra.

From help-lucid-emacs-request@lucid.com  Mon Jul 27 11:34:13 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA13492; Mon, 27 Jul 92 11:34:13 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA21126g; Mon, 27 Jul 92 11:24:33 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA08639; Mon, 27 Jul 92 14:34:11 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA08633; Mon, 27 Jul 92 14:34:09 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA11211; Mon, 27 Jul 92 14:35:16 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!walter!att!cbfsb!jolt!swu
From: swu@att.com (Chi-Sharn Wu)
Subject: create active region using right-mouse-button ?
Message-Id: <1992Jul27.153258.9385@cbfsb.cb.att.com>
Reply-To: swu@att.com
Organization: AT&T Bell Laboratories
Date: Mon, 27 Jul 1992 15:32:58 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Hi:

   Could anyone tell me how to write a function for lucid-emacs to do thing like
"select an active region using right-mouse-button", just like epoch and xterm did.

BTW, where can I find the contributed packages written for Lucid-emacs ?
I am interested in getting some packages like dired-x11.el, hilit.el in epoch.
Thanks for any help/

---

Chi-Sharn Wu
swu@probe.att.com


From help-lucid-emacs-request@lucid.com  Mon Jul 27 11:53:30 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA13566; Mon, 27 Jul 92 11:53:30 PDT
Received: by heavens-gate.lucid.com id AA21221g; Mon, 27 Jul 92 11:43:58 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA21214g; Mon, 27 Jul 92 11:43:34 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA16545; Mon, 27 Jul 92 11:53:28 PDT
Date: Mon, 27 Jul 92 11:53:28 PDT
Message-Id: <9207271853.AA16545@thalidomide.lucid>
X-Windows: Dissatisfaction guaranteed.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: ack@Think.COM (Alex Klaiber)
Cc: help-lucid-emacs@lucid.com
Subject: Re: lemacs 19.2 and evi (vi emulator)
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Alex Klaiber's message of  27-Jul-92 16:08:29 GMT <15171tINNrk7@early-bird.think.com>
References: <15171tINNrk7@early-bird.think.com>

In message <15171tINNrk7@early-bird.think.com> Alex Klaiber wrote:
>
> Hi, I am trying to use evi (the vi emulator) with lemacs 19.2.  The version
> of evi that came with lemacs 19.2 doesn't work -- when I load it, lemacs
> complains
> Is there a quick fix I can apply?  Does someone have a version of evi that
> works with lemacs 19.2?

The "quick fix" is this:

	(let ((meta-prefix-char -1))
	  (load-library "evi"))

For the next release, I've modified evi.el to do this in more appropriate
places.

You don't really want to know why this is necessary.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Mon Jul 27 12:50:47 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA13733; Mon, 27 Jul 92 12:50:47 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA21444g; Mon, 27 Jul 92 12:41:14 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA16510; Mon, 27 Jul 92 15:50:44 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA16497; Mon, 27 Jul 92 15:50:37 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA11852; Mon, 27 Jul 92 15:51:44 -0400
Path: uunet!sun-barr!news2me.ebay.sun.com!exodus.Eng.Sun.COM!start!yury
From: yury@start.Eng.Sun.COM (Yury Kamen)
Newsgroups: alt.lucid-emacs.help
Subject: lhilight.el
Date: 27 Jul 1992 18:31:38 GMT
Organization: Sun Microsystems
Distribution: world
Message-Id: <l78g8aINNlh2@exodus.Eng.Sun.COM>
Reply-To: yury@start.Eng.Sun.COM
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In an article posted recently in this group I found a reference
to a lhilit Package. I did not find it in my distribution, so where can 
I find it (and other contributed stuff).

Thanks a lot for your help!

Yury Kamen



From help-lucid-emacs-request@lucid.com  Mon Jul 27 14:08:33 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA13882; Mon, 27 Jul 92 14:08:33 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA21786g; Mon, 27 Jul 92 13:58:55 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA21425; Mon, 27 Jul 92 17:08:41 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA21401; Mon, 27 Jul 92 17:08:34 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA12329; Mon, 27 Jul 92 17:09:41 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!elroy.jpl.nasa.gov!sdd.hp.com!cs.utexas.edu!torn!cunews!nrcnet0!bnrgate!bmerh85!bmerh85!hamish
From: Hamish.Macdonald%x400gate.bnr.ca@lucid.com (Hamish Macdonald)
Subject: Lucid emacs on an hp9000s300 with HPUX 7.05
Message-Id: <1992Jul27.203845.28797@bmerh85.bnr.ca>
Organization: Bell Northern Research
Date: Mon, 27 Jul 92 20:38:45 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Has anybody managed to get Lucid emacs 19 completely built on an
hp9000s300 (including floating point) ?

Thanks,
 Hamish.

From help-lucid-emacs-request@lucid.com  Mon Jul 27 14:12:07 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA13909; Mon, 27 Jul 92 14:12:07 PDT
Received: by heavens-gate.lucid.com id AA21812g; Mon, 27 Jul 92 14:02:44 PDT
Received: from uswat.advtech.uswest.com by heavens-gate.lucid.com id AA21808g; Mon, 27 Jul 92 14:02:32 PDT
Received: from alder.advtech.uswest.com by uswat.advtech.uswest.com with SMTP id AA22093
  (5.65c/IDA-1.4.4 for <help-lucid-emacs@lucid.com>); Mon, 27 Jul 1992 15:12:20 -0600
Received: by alder.advtech.uswest.com (advtech.uswest.com)
   id AA01481 (4.1/at-generic.11Feb92); Mon, 27 Jul 92 15:12:24 MDT
Date: Mon, 27 Jul 92 15:12:24 MDT
From: Chris McClenaghan <mcclen@advtech.uswest.com>
Message-Id: <9207272112.AA01481@alder.advtech.uswest.com>
To: help-lucid-emacs@lucid.com
Subject: Re: Cleaning up those ClariNet newsgroups
Newsgroups: alt.lucid-emacs.help,gnu.emacs.gnus
In-Reply-To: <MCGRANT.92Jul26200520@isl.stanford.edu>
References: <MCGRANT.92Jul26200520@isl.stanford.edu>

I would like a copy of the original gnus-lucid.el file. Is it
available via anon-ftp or could someone mail it to me?

Chris McClenaghan    mcclen@uswest.com


From help-lucid-emacs-request@lucid.com  Mon Jul 27 15:37:08 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA14041; Mon, 27 Jul 92 15:37:08 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA22120g; Mon, 27 Jul 92 15:27:18 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA29925; Mon, 27 Jul 92 18:36:54 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA29904; Mon, 27 Jul 92 18:36:38 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA13023; Mon, 27 Jul 92 18:37:46 -0400
Newsgroups: alt.lucid-emacs.help,alt.lucid-emacs.bug
Path: uunet!stanford.edu!EE.Stanford.EDU!sierra!mcgrant
From: mcgrant@isl.stanford.edu (Michael C. Grant)
Subject: Change in point movement behavior
Message-Id: <MCGRANT.92Jul27153440@isl.stanford.edu>
Organization: Information Systems Laboratory, Stanford University
Date: 27 Jul 92 15:34:40
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


Suppose I have the following text, and point is -!-:

asdljasd as as sa sa as asd asd 

asdkaa-!-sdadsas asklj;lkfg fds

Notice the completely blank line in between... now, in Emacs 18.58, if I
move up two lines with ^P, I end up with

asdlja-!-sd as as sa sa as asd asd 

asdkaasdadsas asklj;lkfg fds

i.e. the point is now at the same column as before. However, in lemacs 19.2
the point ends up at the beginning of the line, i.e.

-!-asdljasd as as sa sa as asd asd 

asdkaasdadsas asklj;lkfg fds

So, if the goal column is NOT set, then moving up or down through a blank
line causes the point to 'forget' the column it was on in lemacs, but
not in emacs 18.58.

I really like the old behavior a lot better than this new behavior, because
sometimes blank lines separate lines with a certain column structure that
I would like to navigate easily. (Edit a file with blank lines and see how
often you have to re-establish your horizontal position.)

Goal columns aren't appropriate because they have to be specially changed;
18.58 behavior is somewhat like an 'automatic' goal column that is reset
every time you move left or right.

What do you think? Is this behavior controlled/switchable in lemacs,
because if it's not I'd sure like it to be. I would prefer not to have
to redefine an arrow-key function, since it is used so much.

Mike


From help-lucid-emacs-request@lucid.com  Mon Jul 27 15:57:21 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA14129; Mon, 27 Jul 92 15:57:21 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA22157g; Mon, 27 Jul 92 15:44:35 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA01343; Mon, 27 Jul 92 18:54:22 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA01336; Mon, 27 Jul 92 18:54:19 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA13164; Mon, 27 Jul 92 18:55:25 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!fornax!bremner
From: bremner%cs.sfu.ca@lucid.com (David Bremner)
Subject: patch for info-dg.el
Message-Id: <1992Jul27.224215.17785@cs.sfu.ca>
Summary: works for me.
Keywords: quick and dirty
Reply-To: bremner%cs.sfu.ca@lucid.com (David Bremner)
Organization: CSS, Simon Fraser University, Burnaby, B.C., Canada
Date: Mon, 27 Jul 1992 22:42:15 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


What follows is my quick and dirty mashing together of Dave Gillespie's 
enhanced info  mode, and the font and mouse stuff from lemacs 19.2.

Some  day when I have time I'll go through and clean it up so that 
it works under both lucid and other gnu emacses.

In the mean time, here it is.

It is, in all senses of the word a derivative work, and I assert no
additional copyright on MY twelve keystrokes :-)

Cheers,

David.

P.S. I may take a few weeks to  respond to bug reports.
P.P.S. info-dg.el is available from

info-dg (1.05)	  92-03-08
     Dave Gillespie, <daveg@synaptics.com>
     archive.cis.ohio-state.edu:/pub/gnu/emacs/elisp-archive/modes/info.el.Z
     Info reader with many enhancements; replaces standard info.el.

---------------------------cut here-----------------------------------
*** info-dg.orig	Mon Jul 27 15:22:52 1992
--- info-dg.el	Fri Jul 24 11:06:08 1992
***************
*** 529,535 ****
  	      (setq thisfilepos (read (current-buffer)))
  	      ;; read in version 19 stops at the end of number.
  	      ;; Advance to the next line.
! 	      ;; (forward-line 1)
  	      (if (> thisfilepos nodepos)
  		  (throw 'foo t))
  	      (setq lastfilename thisfilename)
--- 529,535 ----
  	      (setq thisfilepos (read (current-buffer)))
  	      ;; read in version 19 stops at the end of number.
  	      ;; Advance to the next line.
! 	      (forward-line 1)
  	      (if (> thisfilepos nodepos)
  		  (throw 'foo t))
  	      (setq lastfilename thisfilename)
***************
*** 1906,1910 ****
--- 1906,2082 ----
         (message "Tags may have changed.  Use Info-tagify if necessary")))
  
  (run-hooks 'Info-load-hook)
+ 
+ ;;; fontification and mousability for info
+ ;;; Copied from the Lucid Emacs 19.2 distribution
+ ;;; July 15, 1992
+ 
+ ;; Turn off Dave Gillespie's mouse support
+ (setq Info-mouse-support nil)
+ 
+ ;; Fontify the nodes 
+ (setq Info-select-hook 'Info-fontify-node)
+ 
+ ;; Bind the mouse buttons
+ (define-key Info-mode-map 'button2 'Info-follow-indicated-node)
+ (define-key Info-mode-map 'button3 'Info-select-node-menu)
+ 
+ (defvar Info-fontify t)
+ 
+ (defvar Info-footnote-tag "Note" 
+   "If we are loading this file on top of something that does not define
+ Info-footnote-tag, set to the default")
+ 
+ ;; This should really quote Info-footnote-tag in case someone sets it to a 
+ ;; regexp
+ 
+ (defvar Info-xref-regexp (concat "\\*" 
+ 				 (regexp-quote Info-footnote-tag)
+ 				 "[ \n\t]*\\([^:]*\\):"))
+ 
+ (or (find-face 'info-node) (make-face 'info-node))
+ (or (find-face 'info-xref) (make-face 'info-xref))
+ 
+ (if purify-flag  ; being preloaded
+     nil
+   (or (face-differs-from-default-p 'info-node (selected-screen))
+       (copy-face 'bold-italic 'info-node (selected-screen)))
+   (or (face-differs-from-default-p 'info-xref (selected-screen))
+       (copy-face 'bold 'info-xref (selected-screen))))
+ 
+ 
+ (defun Info-fontify-node ()
+   (if Info-fontify
+       (save-excursion
+ 	(map-extents (function (lambda (x y) (delete-extent x)))
+ 		     (current-buffer) (point-min) (point-max) nil)
+ 	(let ((case-fold-search t)
+ 	      extent)
+ 	  (goto-char (point-min))
+ 	  (if (looking-at "^File: [^,: \t]+,?[ \t]+")
+ 	      (progn
+ 		(goto-char (match-end 0))
+ 		(while
+ 		    (looking-at "[ \t]*[^:, \t\n]+:[ \t]+\\([^:,\t\n]+\\),?")
+ 		  (goto-char (match-end 0))
+ 		  (setq extent (make-extent (match-beginning 1) (match-end 1)))
+ 		  (set-extent-face extent 'info-xref)
+ 		  (set-extent-attribute extent 'highlight))))
+ 	  (goto-char (point-min))
+ 	  (while (re-search-forward Info-xref-regexp nil t)
+ 	    (if (= (char-after (1- (match-beginning 0))) ?\") ; hack
+ 		nil
+ 	      (setq extent (make-extent (match-beginning 0) (match-end 1)))
+ 	      (set-extent-face extent 'info-xref)
+ 	      (set-extent-attribute extent 'highlight)))
+ 	  (goto-char (point-min))
+ 	  (if (search-forward "\n* menu:" nil t)
+ 	      (while (re-search-forward "^\\* \\([^:\t\n]*\\):" nil t)
+ 		(setq extent (make-extent (match-beginning 0) (match-end 1)))
+ 		(set-extent-face extent 'info-node)
+ 		(set-extent-attribute extent 'highlight)))))))
+ 
+ (defun Info-indicated-node (event)
+   (save-window-excursion
+     (save-excursion
+       (mouse-set-point event)
+       (let* ((buffer (window-buffer (event-window event)))
+ 	     (p (event-point event))
+ 	     (extent (and p (extent-at p buffer 'highlight)))
+ 	     (text (and extent
+ 			(save-excursion
+ 			  (set-buffer buffer)
+ 			  (buffer-substring
+ 			   (extent-start-position extent)
+ 			   (extent-end-position extent)))))
+ 	     (case-fold-search t)
+ 	     i)
+ 	(cond ((null extent)
+ 	       nil)
+ 	      ((string-match  (concat "\\`" Info-xref-regexp "?\\'") text)
+ 	       ;; it's a cross-reference
+ 	       (setq text (substring text (match-beginning 1) (match-end 1)))
+ 	       (while (setq i (string-match "[ \n\t]+" text i))
+ 		 (setq text (concat (substring text 0 i) " "
+ 				    (substring text (match-end 0))))
+ 		 (setq i (1+ i)))
+ 	       (list 'Info-follow-reference text))
+ 	      ((and (save-excursion (goto-char (extent-start-position extent))
+ 				    (= ?\n (preceding-char)))
+ 		    (string-match "\\`\\* \\([^:\t\n]+\\):?\\'" text))
+ 	       ;; it's a menu entry
+ 	       (setq text (substring text (match-beginning 1) (match-end 1)))
+ 	       (list 'Info-menu text))
+ 	      (t
+ 	       ;; otherwise, it must be a node-name in the first line
+ 	       (list 'Info-goto-node text)))))))
+ 
+ 
+ (defun Info-follow-indicated-node (event)
+   "Follow the crossreference or menu item at the click-location."
+   (interactive "e")
+   (mouse-set-point event)
+   (eval (or (Info-indicated-node event)
+ 	    (error "click on a cross-reference to follow"))))
+ 
+ 
+ (defun Info-select-node-menu (event)
+   "Pops up a menu of applicable Info commands."
+   (interactive "e")
+   (select-window (event-window event))
+   (let ((case-fold-search t)
+ 	up-p prev-p next-p menu
+ 	i text xrefs subnodes in)
+     (save-excursion
+       (goto-char (point-min))
+       (if (looking-at ".*\\bNext:") (setq next-p t))
+       (if (looking-at ".*\\bPrev:") (setq prev-p t))
+       (if (looking-at ".*Up:") (setq up-p t))
+       (setq menu (nconc (list "" "Info Commands:" "----")
+ 			(if (setq in (Info-indicated-node event))
+ 			    (list (vector (car (cdr in)) in t)))
+ 			(list
+ 			 ["Goto Info Top-level" Info-directory t]
+ 			 (vector "Next Node" 'Info-next next-p)
+ 			 (vector "Previous Node" 'Info-prev prev-p)
+ 			 (vector "Parent Node (Up)" 'Info-up up-p)
+ 			 ["Goto Node..." Info-goto-node t]
+ 			 ["Goto Last Visited Node" Info-last t])))
+       (while (re-search-forward Info-xref-regexp nil t)
+ 	(setq text (buffer-substring (match-beginning 1) (match-end 1)))
+ 	(while (setq i (string-match "[ \n\t]+" text i))
+ 	  (setq text (concat (substring text 0 i) " "
+ 			     (substring text (match-end 0))))
+ 	  (setq i (1+ i)))
+ 	(setq xrefs (cons text xrefs)))
+       (setq xrefs (nreverse xrefs))
+       (if (> (length xrefs) 21) (setcdr (nthcdr 20 xrefs) '(more)))
+       (goto-char (point-min))
+       (if (search-forward "\n* menu:" nil t)
+ 	  (while (re-search-forward "^\\* \\([^:\t\n]*\\):" nil t)
+ 	    (setq text (buffer-substring (match-beginning 1) (match-end 1)))
+ 	    (setq subnodes (cons text subnodes))))
+       (setq subnodes (nreverse subnodes))
+       (if (> (length subnodes) 21) (setcdr (nthcdr 20 subnodes) '(more)))
+       )
+     (if xrefs
+ 	(nconc menu (list "----" "Cross-References:" "----")
+ 	       (mapcar (function (lambda (xref)
+ 				   (if (eq xref 'more)
+ 				       "...more..."
+ 				     (vector xref
+ 					     (list 'Info-follow-reference xref)
+ 					     t))))
+ 		       xrefs)))
+     (if subnodes
+ 	(nconc menu (list "----" "Sub-Nodes:" "----")
+ 	       (mapcar (function (lambda (node)
+ 				   (if (eq node 'more)
+ 				       "...more..."
+ 				     (vector node (list 'Info-menu node)
+ 					     t))))
+ 		       subnodes)))
+     (popup-menu menu)))
+ 
  
  ;;; End.
-- 
bremner@cs.sfu.ca 				          ubc-cs!fornax!bremner

From help-lucid-emacs-request@lucid.com  Mon Jul 27 16:30:01 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA14227; Mon, 27 Jul 92 16:30:01 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA22266g; Mon, 27 Jul 92 16:20:08 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA02385; Mon, 27 Jul 92 19:29:56 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA02379; Mon, 27 Jul 92 19:29:55 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA13521; Mon, 27 Jul 92 19:31:03 -0400
Newsgroups: alt.lucid-emacs.help,alt.lucid-emacs.bug
Path: uunet!stanford.edu!EE.Stanford.EDU!sierra!mcgrant
From: mcgrant@isl.stanford.edu (Michael C. Grant)
Subject: Re: Change in point movement behavior
In-Reply-To: mcgrant@isl.stanford.edu's message of 27 Jul 92 15:34:40
Message-Id: <MCGRANT.92Jul27162250@isl.stanford.edu>
Organization: Information Systems Laboratory, Stanford University
References: <MCGRANT.92Jul27153440@isl.stanford.edu>
Date: 27 Jul 92 16:22:50
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


OK, I received the following solution from a kind ( and speedy ) soul:

(global-set-key   'up        'previous-line)
(global-set-key   'down      'next-line)
(global-set-key   'left      'backward-char)
(global-set-key   'right     'forward-char)

This works! BUT it raises a concern: without these definitions, the default
x-win.el define-keys are

(define-key global-map 'left            "\C-b")
(define-key global-map 'up              "\C-p")
(define-key global-map 'right           "\C-f")
(define-key global-map 'down            "\C-n")

which, in turn, should translate to backward-char, forward-char,
previous-line, and next-line, should the not? After all, that is
what I get if I do a describe-key help on C-b, C-p, etc.

So, I'm not sure why I have to do this, but as long as it works (and
it does) it's OK for me!

Mike

From help-lucid-emacs-request@lucid.com  Mon Jul 27 18:32:22 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA14573; Mon, 27 Jul 92 18:32:22 PDT
Received: by heavens-gate.lucid.com id AA22638g; Mon, 27 Jul 92 18:21:29 PDT
Received: from watergate.lucid ([192.31.212.117]) by heavens-gate.lucid.com id AA22634g; Mon, 27 Jul 92 18:21:19 PDT
Received: by watergate.lucid (4.1/SMI-4.1)
	id AA23761; Mon, 27 Jul 92 18:29:46 PDT
Date: Mon, 27 Jul 92 18:29:46 PDT
From: eb%watergate@lucid.com (Eric Benson)
Message-Id: <9207280129.AA23761@watergate.lucid>
To: mcgrant@isl.stanford.edu (Michael C. Grant)
Cc: help-lucid-emacs@lucid.com
Subject: Re: Change in point movement behavior
Newsgroups: alt.lucid-emacs.bug,alt.lucid-emacs.help
In-Reply-To: Michael C. Grant's message of nil 92-Jul-16 :22:50  <MCGRANT.92Jul27162250@isl.stanford.edu>
References: <MCGRANT.92Jul27153440@isl.stanford.edu>
	<MCGRANT.92Jul27162250@isl.stanford.edu>
Reply-To: eb@lucid.com

In Emacs 18 the cursor keys actually send the characters C-n and C-p
to Emacs.  In lemacs they are the X keysyms 'up and 'down.  We had
originally bound these keys to the commands previous-line and
next-line, but that doesn't work well for modes with local bindings
for C-n and C-p, since people usually expect the cursor keys to do
exactly the same thing as C-b, C-f, C-p and C-n, regardless of what
those keys are bound to.  So, we changed the cursor key bindings to be
keyboard macros containing exactly those characters instead.  This
works fine, except that next-line and previous-line check the variable
last-command to decide if it should keep the goal column at the same
place, and apparently the keyboard macro was causing this to fail.
However, it turns out that Emacs 18 has this extra special hack to
make keyboard macros containing exactly one character set last-command
to the command to which the character is bound.  Lemacs didn't have
this hack, so I added it.  It will appear in 19.3, but if you want it
now, in command_loop_1 in keyboard.c, change the line

  Vlast_command = Qt;

to

  if (!(!NILP(Vexecuting_macro) &&
	((XTYPE (Vexecuting_macro) == Lisp_String &&
	  XSTRING (Vexecuting_macro)->size == 1) ||
	 (XTYPE (Vexecuting_macro) == Lisp_Vector &&
	  XVECTOR (Vexecuting_macro)->size == 1))))
    Vlast_command = Qt;

From help-lucid-emacs-request@lucid.com  Mon Jul 27 21:39:02 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA14789; Mon, 27 Jul 92 21:39:02 PDT
Received: by heavens-gate.lucid.com id AA23052g; Mon, 27 Jul 92 21:29:25 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA23048g; Mon, 27 Jul 92 21:29:10 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA18138; Mon, 27 Jul 92 21:39:09 PDT
Date: Mon, 27 Jul 92 21:39:09 PDT
Message-Id: <9207280439.AA18138@thalidomide.lucid>
X-Windows: Japan's secret weapon.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: chabert%maupiti.imag.fr@lucid.com
Cc: help-lucid-emacs@lucid.com
Subject: Re: Problems using lucid-emacs-19.2
In-Reply-To: Annie CHABERT's message of Thu 23-Jul-92 17:36:17 +0200 <9207231536.AA07370@maupiti.imag.fr>
References: <9207231536.AA07370@maupiti.imag.fr>

In message <9207231536.AA07370@maupiti.imag.fr> Annie CHABERT wrote:
>
> 	Which are the main differences between Lucid-emacs 19.1 and 19.2 ?
> 	What is new and/or debugged?

The changes were mostly for portability, and to make compilation easier.
Also, the lisp directory was rearranged to speed startup.

> 	1 - I noticed a problem with the selective-display process. 
> 	Running lucid-emacs (19.1 or 19.2), I can change the value of the
> 	selective-display but nothing happened in my current buffer.
> 	Is there something wrong with my installation or ...?

Selective-display doesn't work right now in lemacs.  We plan to fix this as
a part of a general redisplay cleanup.

> 	2 - Adding new menu :
> 	I would like to add new menu in the menubar with 
> 	'add-menu-item. The result is the helps menu is moved near the Buffers
> 	menu and mine is at the right corner of the menu bar

Right now add-menu-item always adds the menu at the end of the menubar.  I'd
like it to take an argument which is the name of the menu to add it before.
I haven't had time to implement this yet.

> 	3 - overlay-arrow-string : I'd like to know if it's possible to change
> 	the default arrow by my own string . This was allowed in Emacs.  And
> 	is it possible to have many arrows (or "marks") at the same time ?
> 	How can I do it ?

Not yet, but stuff like this is planned.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Mon Jul 27 22:45:54 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA14936; Mon, 27 Jul 92 22:45:54 PDT
Received: by heavens-gate.lucid.com id AA23212g; Mon, 27 Jul 92 22:33:41 PDT
Received: from amil.co.il by heavens-gate.lucid.com id AA23208g; Mon, 27 Jul 92 22:33:19 PDT
Received: from ipc8.AMIL by amil.co.il (4.1/AMIL-M2)
	id AA07563; Tue, 28 Jul 92 08:42:03 IDT
Date: Tue, 28 Jul 92 08:42:03 IDT
From: danny@amil.co.il (Danny Bar-Dov)
Message-Id: <9207280542.AA07563@amil.co.il>
Received: by ipc8.AMIL (4.1/SMI-4.1)
	id AA04552; Tue, 28 Jul 92 08:42:26 IDT
To: help-lucid-emacs@lucid.com
Subject: Lucid 19.3

When is Lucid 19.3 supposed to come out ?

Lucid people keep saying this and that will be fixed
int it.

I currently use 19.1 out-of-the-box and intend to wait till 19.3
instead of going to 19.2. Should I ?

Please let us know what are your 19.3 release plans.

Danny.

--

---------------------
Dan Bar Dov

Applied Materials (Israel)

Email:        danny@amil.co.il
Phone: office 972-3-499573
       home   972-3-5469625
TimeZone:     GMT+2

From help-lucid-emacs-request@lucid.com  Tue Jul 28 04:07:07 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA16109; Tue, 28 Jul 92 04:07:07 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA23628g; Tue, 28 Jul 92 03:57:37 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA13088; Tue, 28 Jul 92 07:07:27 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA13082; Tue, 28 Jul 92 07:07:24 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA19555; Tue, 28 Jul 92 07:08:37 -0400
Path: uunet!mcsun!uknet!etherm!mt00
From: mt00@etherm.co.uk (Martin Tomes)
Newsgroups: alt.lucid-emacs.help
Subject: Where can I find lucid emacs.
Summary: Please help me find LICID emacs sources.
Keywords: emacs, lucid, location.
Message-Id: <mt00.712319130@chough>
Date: 28 Jul 92 10:25:30 GMT
Organization: Eurotherm Limited
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I just tried to get some of the Lucid emacs stuff from
labrea.stanford.edu but it appears to have been withdrawn from the
internet nameserver.  Is there anywhere else I can get it?

--
Martin Tomes
Janet:    mtomes@uk.co.eurotherm
Internet: mtomes@eurotherm.co.uk
UUCP:     {uknet,uunet}!etherm!mtomes

From help-lucid-emacs-request@lucid.com  Tue Jul 28 04:48:47 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA16181; Tue, 28 Jul 92 04:48:47 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA23704g; Tue, 28 Jul 92 04:36:27 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA14262; Tue, 28 Jul 92 07:46:16 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA14253; Tue, 28 Jul 92 07:46:14 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA19931; Tue, 28 Jul 92 07:47:28 -0400
Path: uunet!mcsun!corton!sophia!bagheera.inria.fr!colas
From: colas%bagheera.inria.fr@lucid.com (Colas Nahaboo)
Newsgroups: alt.lucid-emacs.help,alt.lucid-emacs.bug
Subject: PATCH for Re: lemacs is grabbing window focus when it isn't supposed to
Message-Id: <25652@sophia.inria.fr>
Date: 28 Jul 92 11:18:22 GMT
References: <2115@tymix.Tymnet.COM> <9207242311.AA01773@scylla.lucid>
Followup-To: alt.lucid-emacs.help
Organization: Koala Project, Bull Research France
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <9207242311.AA01773@scylla.lucid>, devin%scylla@lucid.com (Matthieu
Devin) writes:
|> We put a workaround for that in 19.3.

for people like me who also feel that this problem makes lemacs unusable, (and
do no understand why lemacs is managing the focus itself in the first place),
here a quick-and-dirty patch to #undefine the focus management in lemacs in the
meantime:
(apply in the 19.2 src directory and recompile)

PS: lucid emacs is GREAT!!!

*** event-Xt.c.orig     Tue Jul 28 11:01:48 1992
--- event-Xt.c  Tue Jul 28 11:57:59 1992
***************
*** 809,816 ****
--- 809,819 ----
        if (XGetWindowAttributes (x_current_display, event->xclient.window,
                                  &xwa)
            && xwa.map_state == IsViewable)
+ #ifdef MANAGE_FOCUS
          XSetInputFocus (x_current_display, event->xclient.window,
                          RevertToParent, event->xclient.data.l[1]);
+ #endif /* MANAGE_FOCUS */
+
        UNBLOCK_INPUT;
        }
      goto OTHER;
*** xfns.c.orig Tue Jul 28 10:58:36 1992
--- xfns.c      Tue Jul 28 11:58:11 1992
***************
*** 773,782 ****
--- 773,784 ----
    XtManageChild (pane_widget);
    XtRealizeWidget (shell_widget);

+ #ifdef MANAGE_FOCUS
    properties [0] = Xatom_WM_TAKE_FOCUS;
    XChangeProperty (XtDisplay (shell_widget), XtWindow (shell_widget),
                   Xatom_WM_PROTOCOLS, XA_ATOM, 32, PropModeAppend,
                   (unsigned char*)properties, 1);
+ #endif /* MANAGE_FOCUS */

    XtMapWidget (screen_widget);

*** xterm.c.orig        Tue Jul 28 11:01:38 1992
--- xterm.c     Tue Jul 28 11:58:21 1992
***************
*** 2619,2624 ****
--- 2619,2625 ----
  x_focus_screen (s)
       struct screen *s;
  {
+ #ifdef MANAGE_FOCUS
    XWindowAttributes xwa;
    struct x_display* x;

***************
*** 2672,2677 ****
--- 2673,2679 ----
        XUngrabServer (XtDisplay (x->widget));
      }
    UNBLOCK_INPUT;
+ #endif /* MANAGE_FOCUS */
  }

  /* Destroy the X window of screen S.


-- 
Colas Nahaboo, colas@sa.inria.fr, Bull Research Koala proj. Wool&Gwm Architect
Pho:(33) 93.65.77.70(.66 Fax), INRIA, B.P.93 - 06902 Sophia Antipolis, FRANCE.

From help-lucid-emacs-request@lucid.com  Tue Jul 28 12:04:43 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA17269; Tue, 28 Jul 92 12:04:43 PDT
Received: by heavens-gate.lucid.com id AA25158g; Tue, 28 Jul 92 11:54:59 PDT
Received: from sun2.nsfnet-relay.ac.uk by heavens-gate.lucid.com id AA25154g; Tue, 28 Jul 92 11:54:47 PDT
Via: uk.ac.city.cs; Tue, 28 Jul 1992 20:03:50 +0100
Received: from Messages.8.5.N.CUILIB.3.45.SNAP.NOT.LINKED.barney.cs.city.ac.uk.sun4.40 
          via MS.5.6.barney.cs.city.ac.uk.sun4_40;
          Tue, 28 Jul 1992 20:07:15 +0100 (BST)
Message-Id: <AeRNfX___5g8A60Bls@cs.city.ac.uk>
Date: Tue, 28 Jul 1992 20:07:15 +0100 (BST)
From: Nick Williams <njw@cs.city.ac.uk>
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
To: help-lucid-emacs@lucid.com
Subject: Finding highlit extent

I've been hacking up some nice modes for lucid, and I've run into some
difficulty with locating extents:

I've got several areas with highlight extents on them.  The user can
click button3 to pull up a popup menu.  Some options on that menu would
like to operate on the data found in the currently highlit extent.  But
how do you find this?

The point is off somewhere else entirely.

Highlight'ed extents aren't zmacs-regions, so I can't grab them that way.

Erm...?

Nick
Nick Williams                                   E-mail: njw@cs.city.ac.uk
Systems Architecture Research Centre,	        (MIME and ATK accepted)
City University, London, UK.		        Tel: +44 71 477 8551,
						Fax: +44 71 477 8587

From help-lucid-emacs-request@lucid.com  Tue Jul 28 12:19:59 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA17323; Tue, 28 Jul 92 12:19:59 PDT
Received: by heavens-gate.lucid.com id AA25256g; Tue, 28 Jul 92 12:09:58 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA25251g; Tue, 28 Jul 92 12:09:45 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA18794; Tue, 28 Jul 92 12:18:00 PDT
Date: Tue, 28 Jul 92 12:18:00 PDT
Message-Id: <9207281918.AA18794@thalidomide.lucid>
X-Windows: More than enough rope.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: Nick Williams <njw@cs.city.ac.uk>
Cc: help-lucid-emacs@lucid.com
Subject: Re: Finding highlit extent
In-Reply-To: Nick Williams's message of Tue 28-Jul-92 20:07:15 +0100 <AeRNfX___5g8A60Bls@cs.city.ac.uk>
References: <AeRNfX___5g8A60Bls@cs.city.ac.uk>

> I've got several areas with highlight extents on them.  The user can
> click button3 to pull up a popup menu.  Some options on that menu would
> like to operate on the data found in the currently highlit extent.  But
> how do you find this?

If you use (interactive "e") then you are passed the event object that
invoked this command.  Then you can use `event-point' on that to get the
buffer position at which the click occurred.  You can find the topmost
extent at a point with the `extent-at' function.

In 19.2 there is no way to find the face of an extent, but that is fixed
in 19.3 (real soon now...)

	-- Jamie

From help-lucid-emacs-request@lucid.com  Tue Jul 28 12:59:24 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA17478; Tue, 28 Jul 92 12:59:24 PDT
Received: by heavens-gate.lucid.com id AA25471g; Tue, 28 Jul 92 12:49:48 PDT
Received: from depot.cis.ksu.edu by heavens-gate.lucid.com id AA25464g; Tue, 28 Jul 92 12:48:53 PDT
Return-Path:  <frain@cis.ksu.edu>
Received:  by depot.cis.ksu.edu (5.65a) 
		id AA08801; Tue, 28 Jul 92 14:58:34 -0500
Date:  Tue, 28 Jul 92 14:58:34 -0500
From: frain@cis.ksu.edu (Jerry Frain)
Message-Id:  <9207281958.AA08801@depot.cis.ksu.edu>
To: help-lucid-emacs@lucid.com
Subject: Anyone ported GNU calc 2.02 yet?
Reply-To: frain@cis.ksu.edu
X-Organization: KSU Dept. of Computing and Information Sciences
X-Office: Nichols 117
X-Phone: (913) 532-6350 - ext. 45
X-Fax:   (913) 532-7353

The bug-lucid-emacs archive contains a couple of messages about
porting GNU calc 2.02.  Has anyone finished this port?

I started doing this myself, but I figured if someone else has already
completed it...

  --Jerry Frain, frain@cis.ksu.edu

From help-lucid-emacs-request@lucid.com  Tue Jul 28 13:34:49 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA17637; Tue, 28 Jul 92 13:34:49 PDT
Received: by heavens-gate.lucid.com id AA25662g; Tue, 28 Jul 92 13:25:23 PDT
Received: from whopper.lcs.mit.edu by heavens-gate.lucid.com id AA25640g; Tue, 28 Jul 92 13:23:05 PDT
Received: from [127.0.0.1] by whopper.lcs.mit.edu; Tue, 28 Jul 92 16:22:03 EDT
Message-Id: <9207282022.AA21939@whopper.lcs.mit.edu>
To: help-lucid-emacs@lucid.com
Subject: Opening a window on another display ??
Date: Tue, 28 Jul 92 16:22:02 -0400
From: sharma@whopper.lcs.mit.edu


Is it possible to have lemacs open up a window on another display (owned by
the same user) ?


thanks,

madhu sharma
sharma@lcs.mit.edu

From help-lucid-emacs-request@lucid.com  Tue Jul 28 13:43:49 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA17667; Tue, 28 Jul 92 13:43:49 PDT
Received: by heavens-gate.lucid.com id AA25723g; Tue, 28 Jul 92 13:33:34 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA25703g; Tue, 28 Jul 92 13:31:18 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA18941; Tue, 28 Jul 92 13:39:41 PDT
Date: Tue, 28 Jul 92 13:39:41 PDT
Message-Id: <9207282039.AA18941@thalidomide.lucid>
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: sharma@whopper.lcs.mit.edu
Cc: help-lucid-emacs@lucid.com
Subject: Re: Opening a window on another display ??
In-Reply-To: sharma@whopper.lcs.mit.edu's message of Tue 28-Jul-92 16:22:02 -0400 <9207282022.AA21939@whopper.lcs.mit.edu>
References: <9207282022.AA21939@whopper.lcs.mit.edu>

In message <9207282022.AA21939@whopper.lcs.mit.edu> sharma@whopper.lcs.mit.edu wrote:
>
> Is it possible to have lemacs open up a window on another display (owned by
> the same user) ?

No.  Eventually we intend for this to be possible, but it's trickier than you
might think.  We also want to be able to have one emacs running on multiple X
displays and multiple dumb ttys simultaniously.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Wed Jul 29 00:14:45 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA19211; Wed, 29 Jul 92 00:14:45 PDT
Received: by heavens-gate.lucid.com id AA28437g; Wed, 29 Jul 92 00:02:05 PDT
Received: from chenas.inria.fr by heavens-gate.lucid.com id AA28433g; Wed, 29 Jul 92 00:01:53 PDT
Received: from sid1.cenaath.cena.dgac.fr by chenas.inria.fr (5.65c8d/92.02.29)
	via Fnet-EUnet id AA04218; Wed, 29 Jul 1992 09:11:28 +0200 (MET)
Received: from geant.cenatls.cena.dgac.fr (geant-gw) by sid1.cenaath.cena.dgac.fr (4.1/SMI-4.1)
	id AA29884; Wed, 29 Jul 92 09:15:29 +0200
Received: from gogol.cenatls by geant.cenatls.cena.dgac.fr (4.1/SMI-4.1)
	id AA18776; Wed, 29 Jul 92 09:11:41 +0200
Date: Wed, 29 Jul 92 09:11:41 +0200
From: queinnec%geant.cenatls.cena.dgac.fr@lucid.com (Philippe Queinnec)
Message-Id: <9207290711.AA18776@geant.cenatls.cena.dgac.fr>
Received: by gogol.cenatls (4.1/SMI-4.1)
	id AA00487; Wed, 29 Jul 92 09:11:40 +0200
To: frain@cis.ksu.edu
Cc: help-lucid-emacs@lucid.com
Subject: Re: Anyone ported GNU calc 2.02 yet?
In-Reply-To: Your message of Tue 28 July 92, 14:58:34 -0500
References: <9207281958.AA08801@depot.cis.ksu.edu>

> The bug-lucid-emacs archive contains a couple of messages about
> porting GNU calc 2.02.  Has anyone finished this port?

I started doing it, and I manage to make quick calc (M-# q) to work.

However, there is a "small" problem with the general calc (M-# c): it uses
split-window-horizontally which doesn't work in Lucid emacs...

So I stopped porting it.

Phil

From help-lucid-emacs-request@lucid.com  Wed Jul 29 04:37:09 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA20426; Wed, 29 Jul 92 04:37:09 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA28995g; Wed, 29 Jul 92 04:24:47 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA05310; Wed, 29 Jul 92 07:34:36 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA05304; Wed, 29 Jul 92 07:34:34 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA00910; Wed, 29 Jul 92 07:35:59 -0400
Path: uunet!mcsun!corton!seti!margaux.inria.fr!murthy
From: murthy%margaux.inria.fr@lucid.com (Chet Murthy)
Newsgroups: alt.lucid-emacs.help
Subject: RPC protocols in LEmacs 19
Keywords: RPC
Message-Id: <4028@seti.UUCP>
Date: 29 Jul 92 11:19:02 GMT
Organization: INRIA Rocquencourt,Le Chesnay, France.
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


First off, I have to thank the guys behind lemacs 19 - it's a really
nice piece of work.  And now ... my question about an extension ...

I have been thinking about writing some RPC code, so that emacs can
act as an RPC/XDR server/client.  Not too hard - I just need to link
the XDR library, and write some code to (un)marshal LISP objects.

The problem is, I want this to be compatible with the rest of Emacs -
which means, if I am transporting a large object, and it comes over in
chunks, I would like for the unmarshaling to happen "in the
background".  This is rather difficult to make work, without
coroutining, and the only other way I have thought of is to transport
records, store the record until complete, and then unmarshal it all at
once.

Which incurs the allocation cost of the buffer/string list.  Does
anybody out there have a better idea?  Or, even better, has anybody
implemented this?

Thanks in advance,
--chet--

From help-lucid-emacs-request@lucid.com  Wed Jul 29 10:27:29 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA21064; Wed, 29 Jul 92 10:27:29 PDT
Received: by heavens-gate.lucid.com id AA00022g; Wed, 29 Jul 92 10:17:29 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA00018g; Wed, 29 Jul 92 10:17:08 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA22139; Wed, 29 Jul 92 10:27:03 PDT
Date: Wed, 29 Jul 92 10:27:03 PDT
Message-Id: <9207291727.AA22139@thalidomide.lucid>
X-Windows: Dissatisfaction guaranteed.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: murthy%margaux.inria.fr@lucid.com (Chet Murthy)
Cc: help-lucid-emacs@lucid.com
Subject: Re: RPC protocols in LEmacs 19
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Chet Murthy's message of  29-Jul-92 11:19:02 GMT <4028@seti.UUCP>
References: <4028@seti.UUCP>

In message <4028@seti.UUCP> Chet Murthy wrote:
>
> Which incurs the allocation cost of the buffer/string list.  Does
> anybody out there have a better idea?  Or, even better, has anybody
> implemented this?

There are two ways to deal with processes in emacs: one is to have a function
be called with a string of the process output as it arrives: this conses a
string.  The other is to have the text automagically added to a buffer: this
doesn't really cons anything, since buffers can easily be reused, but it
doesn't give you any way of noticing when new output has arrived.

I think there should be a third way, which puts the text into a buffer, and
then calls a function to tell you that it's there.  This seems to be what
you're asking for.

But unless you're dealing with really large amounts of data, the "call a
function with a string" method should be fine.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Wed Jul 29 13:09:29 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA21592; Wed, 29 Jul 92 13:09:29 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA00780g; Wed, 29 Jul 92 12:56:45 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA07136; Wed, 29 Jul 92 16:06:30 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA07128; Wed, 29 Jul 92 16:06:27 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA03718; Wed, 29 Jul 92 16:07:55 -0400
Path: uunet!elroy.jpl.nasa.gov!swrinde!mips!odin!fido!fido!rickb
From: rickb@farfle.farfle.asd.sgi.com (Rick Braumoeller)
Newsgroups: alt.lucid-emacs.help
Subject: Anyone get lemacs to work on an SGI?
Message-Id: <RICKB.92Jul29125251@farfle.farfle.asd.sgi.com>
Date: 29 Jul 92 20:52:51 GMT
Distribution: alt
Organization: Silicon Graphics, Inc.
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I've heard a lot about this Lucid Emacs thing, and I'd love
to give it a shot.  Unfortunately, it doesn't seem to be set
up to compile on an SGI.  For lemacs-19.2, the highest
verion configuration file for Irix is 3.6, and I'm
running 4.0.5.  It just doesn't compile without a lot of
hacking.  Has anyone done that, or gotten around it all somehow?

I'd appreciate any responses, however useful..

Thanks!

From help-lucid-emacs-request@lucid.com  Wed Jul 29 13:58:07 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA21789; Wed, 29 Jul 92 13:58:07 PDT
Received: by heavens-gate.lucid.com id AA01016g; Wed, 29 Jul 92 13:48:18 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA00995g; Wed, 29 Jul 92 13:44:53 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA22840; Wed, 29 Jul 92 13:53:19 PDT
Date: Wed, 29 Jul 92 13:53:19 PDT
Message-Id: <9207292053.AA22840@thalidomide.lucid>
X-Windows: There's got to be a better way.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: rickb@farfle.farfle.asd.sgi.com (Rick Braumoeller)
Cc: help-lucid-emacs@lucid.com
Subject: Re: Anyone get lemacs to work on an SGI?
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Rick Braumoeller's message of  29-Jul-92 20:52:51 GMT <RICKB.92Jul29125251@farfle.farfle.asd.sgi.com>
References: <RICKB.92Jul29125251@farfle.farfle.asd.sgi.com>

A few different people have ported it to SGIs; the changes will be in the next
release. Check the mailing list archives on labrea.stanford.edu for their
patches. 

From help-lucid-emacs-request@lucid.com  Wed Jul 29 15:10:11 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA22019; Wed, 29 Jul 92 15:10:11 PDT
Received: by heavens-gate.lucid.com id AA01394g; Wed, 29 Jul 92 14:57:25 PDT
Received: from canopus.cis.ksu.edu by heavens-gate.lucid.com id AA01380g; Wed, 29 Jul 92 14:54:56 PDT
Return-Path:  <frain@cis.ksu.edu>
Received:  by canopus.cis.ksu.edu (5.65a) 
		id AA12020; Wed, 29 Jul 92 17:04:43 -0500
Date:  Wed, 29 Jul 92 17:04:43 -0500
From: frain@cis.ksu.edu (Jerry Frain)
Message-Id:  <9207292204.AA12020@canopus.cis.ksu.edu>
To: help-lucid-emacs@lucid.com
Subject: where is oshell?
Reply-To: frain@cis.ksu.edu
X-Organization: KSU Dept. of Computing and Information Sciences
X-Office: Nichols 117
X-Phone: (913) 532-6350 - ext. 45
X-Fax:   (913) 532-7353

Tex-mode.el requires oshell, but I didn't get that in my Lucid Emacs
distribution, nor can I find it in any of my GNU Emacs 18 lisp files.

Where can I find oshell?

  --Jerry Frain, frain@cis.ksu.edu

From help-lucid-emacs-request@lucid.com  Wed Jul 29 16:00:28 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA22108; Wed, 29 Jul 92 16:00:28 PDT
Received: by heavens-gate.lucid.com id AA01716g; Wed, 29 Jul 92 15:50:49 PDT
Received: from acid-rain.lucid ([192.31.212.120]) by heavens-gate.lucid.com id AA01710g; Wed, 29 Jul 92 15:48:54 PDT
Received: by acid-rain.lucid (4.1/SMI-4.1)
	id AA16254; Wed, 29 Jul 92 15:58:46 PDT
Date: Wed, 29 Jul 92 15:58:46 PDT
From: hardy%acid-rain@lucid.com (Bob Hardy)
Message-Id: <9207292258.AA16254@acid-rain.lucid>
To: help-lucid-emacs@lucid.com
Subject: forwarded message from comp.emacs
Reply-To: hardy@lucid.com

From: rossini@biosun2.harvard.edu (Anthony Rossini)
Newsgroups: comp.emacs,gnu.emacs.help
Subject: lucid emacs
Date: 29 Jul 92 20:46:20 GMT
Followup-To: comp.emacs
Distribution: comp
Organization: Biostat Dept, HSPH, Boston MA, USA.


I'm having a bit of trouble compiling lemacs-19.2 on a SunOS 4.1.2 (sparc2)
with gcc-2.2.2.  I installed X11R5 last fall, havn't added any patches (due
to lack of disk space, unfortunately).  Anyhow, in compiling, I end up with
the error:

ld: Undefined symbol
   _XtStrings
   _XtShellStrings

which according to the README implies that I'm linking against the R4 Xt,
but with the R5 header files.  I can't seem to generate a libXt.a that would
be R5, but have the shared libraries (.so.4.10 and .sa.4.10) that should be
R5, but I'm guessing that since emacs wants everything statically linked,
that it doesn't want those two.  So does anyone have any suggestions, or am
I just being stupid? (which might be pretty likely!)

Or do I just need to snarf a set of R4 headers, or build the .a library
files? 

On a related note, is there a mailing list serving lucid-emacs?

thanks,
-tony
--
Anthony Rossini       -       rossini@biostat.harvard.edu
Department of Biostatistics, Harvard School of Public Health
677 Huntington Ave, Boston MA 02115  617-432-1056

From help-lucid-emacs-request@lucid.com  Wed Jul 29 16:25:15 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA22159; Wed, 29 Jul 92 16:25:15 PDT
Received: by heavens-gate.lucid.com id AA01826g; Wed, 29 Jul 92 16:15:30 PDT
Received: from CAMIS.Stanford.EDU by heavens-gate.lucid.com id AA01813g; Wed, 29 Jul 92 16:13:59 PDT
Received: from mcs-ipc-3.Stanford.EDU by CAMIS.Stanford.EDU (4.1/inc-1.0)
	id AA06064; Wed, 29 Jul 92 16:23:47 PDT
Date: Wed, 29 Jul 1992 16:22:33 -0700 (PDT)
From: Kevin Brock <Brock@sumex-aim.stanford.edu>
Reply-To: Brock@sumex-aim.stanford.edu
Subject: RE: where is oshell?
To: frain@cis.ksu.edu
Cc: help-lucid-emacs@lucid.com
In-Reply-To: Jerry Frain's message of Wed, 29 Jul 92 17:04:43 -0500: <9207292204.AA12020@canopus.cis.ksu.edu>
Message-Id: <Ximap.712452244.2781.brock@MCS-IPC-3>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

>Tex-mode.el requires oshell, but I didn't get that in my Lucid Emacs
>distribution, nor can I find it in any of my GNU Emacs 18 lisp files.
>
>Where can I find oshell?

I don't know that, *but*... I just commented out that line and
everything worked fine.  There may be some subtle problem that I
just haven't run across yet, but it *seems* to work.

Kevin Brock
brock@sumex-aim.stanford.edu

From help-lucid-emacs-request@lucid.com  Wed Jul 29 18:20:36 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA22403; Wed, 29 Jul 92 18:20:36 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA02439g; Wed, 29 Jul 92 18:10:55 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA24326; Wed, 29 Jul 92 21:20:45 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA24320; Wed, 29 Jul 92 21:20:44 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA05147; Wed, 29 Jul 92 21:22:15 -0400
Path: uunet!zaphod.mps.ohio-state.edu!rphroy!caen!sol.ctr.columbia.edu!The-Star.honeywell.com!umn.edu!umeecs!news-server.eecs.umich.edu!garath
From: garath@engin.umich.edu (morris)
Newsgroups: alt.lucid-emacs.help
Subject: Compiling on SunOS 4.1.1
Message-Id: <GARATH.92Jul29201949@morris.engin.umich.edu>
Date: 30 Jul 92 01:19:49 GMT
Organization: University of Michigan
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


	I'm trying to compile lemacs on a sun with some difficulty...I had
to change a few things to get it to get this far:

Makefile 
	CC=gcc -traditional

src/xmakefile
	Add -lXm

libsst.h
        Comment out multimedia directories as they don't exist

play.c
        #define SUNOS4_0_3

environ.c
        Make (const char*) be (char*) on lines 77 and 103


	The environ.c file is no problem, but the other two worry me.  If I
don't define SUNOS4_0_3 in play.c, it tells me that all the Audio things
are undefined.  When it runs the ld command to create the temacs binary, it
can't find the audio library, so I took that out.  Then I get an undefined
on ___fixunsdfsi
	Anyone know what I'm doing wrong?  And anyone know where the sound
libraries should be that it wants?  /usr/demo/SOUND doesn't exist, and I
can't find a libaudio.a file off hand.  Thanks

--
Scott Grosch                              Internet: garath@engin.umich.edu
Programmer                                         Bitnet: user7a4b@umichu
Computer Aided Engineering Network                  University of Michigan

From help-lucid-emacs-request@lucid.com  Wed Jul 29 18:36:42 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA22450; Wed, 29 Jul 92 18:36:42 PDT
Received: by heavens-gate.lucid.com id AA02533g; Wed, 29 Jul 92 18:25:59 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA02529g; Wed, 29 Jul 92 18:25:44 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA24466; Wed, 29 Jul 92 18:34:12 PDT
Date: Wed, 29 Jul 92 18:34:12 PDT
Message-Id: <9207300134.AA24466@thalidomide.lucid>
X-Windows: Even your dog won't like it.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: garath@engin.umich.edu (morris)
Cc: help-lucid-emacs@lucid.com
Subject: Re: Compiling on SunOS 4.1.1
Newsgroups: alt.lucid-emacs.help
In-Reply-To: morris's message of  30-Jul-92 01:19:49 GMT <GARATH.92Jul29201949@morris.engin.umich.edu>
References: <GARATH.92Jul29201949@morris.engin.umich.edu>

In message <GARATH.92Jul29201949@morris.engin.umich.edu> morris wrote:
>
> When it runs the ld command to create the temacs binary, it can't find the
> audio library, so I took that out.  Then I get an undefined on ___fixunsdfsi

This means you didn't link with the GCC library.  If you use gcc to do the
linking instead of ld, this should happen automatically.  Otherwise, you have
to set GCC_LIB in config.h to something appropriate.

> And anyone know where the sound libraries should be that it wants?
> /usr/demo/SOUND doesn't exist, and I can't find a libaudio.a file off hand.

That's where they go by default.  Whoever configured your machine didn't
install them.  You probably have them on a tape somewhere.  In the meantime,
don't define USE_SPARC_SOUND.  I doubt the 4.0.3 code will work in 4.1.1.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Wed Jul 29 19:31:40 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA22528; Wed, 29 Jul 92 19:31:40 PDT
Received: by heavens-gate.lucid.com id AA02727g; Wed, 29 Jul 92 19:19:04 PDT
Received: from srvr2.engin.umich.edu by heavens-gate.lucid.com id AA02714g; Wed, 29 Jul 92 19:17:15 PDT
Received: from mail4.engin.umich.edu by srvr2.engin.umich.edu (5.67/1.35)
	id AA25725; Wed, 29 Jul 92 22:26:58 -0400
Received: by mail4.engin.umich.edu (5.64/1.35)
	id 5a40631c4.000b141; Wed, 29 Jul 92 22:26:54 -0400
Message-Id: <5a40631c4.000b141@mail4.engin.umich.edu>
To: Jamie Zawinski <jwz@lucid.com>
Cc: help-lucid-emacs@lucid.com
Subject: Re: Compiling on SunOS 4.1.1 
In-Reply-To: Your message of "Wed, 29 Jul 92 18:34:12 PDT."
             <9207300134.AA24466@thalidomide.lucid> 
Date: Wed, 29 Jul 92 22:26:49 -0400
From: Scott Grosch <garath@engin.umich.edu>


	Ok, I made the changes you said, and it compiled, but then I get:

./temacs.....
.....
Dumping under names xemacs and emacs-19.1-Lucid
(fraser, Sun) % ./emacs-19.1-Lucid
Segmentation fault
(fraser, Sun) % ./xemacs
Segmentation fault

	Ideas from here?

From help-lucid-emacs-request@lucid.com  Wed Jul 29 19:55:22 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA22554; Wed, 29 Jul 92 19:55:22 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA02868g; Wed, 29 Jul 92 19:42:55 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA26413; Wed, 29 Jul 92 22:52:47 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA26407; Wed, 29 Jul 92 22:52:44 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA05460; Wed, 29 Jul 92 22:54:17 -0400
Path: uunet!mcsun!uknet!mucs!uts.mcc.ac.uk!ssurhode
From: ssurhode@suma1.rdg.ac.uk (Paul Rhodes)
Newsgroups: gnu.epoch.misc,alt.lucid-emacs.help
Subject: Hiliting
Message-Id: <SSURHODE.92Jul29160014@suma1.suma1.rdg.ac.uk>
Date: 29 Jul 92 15:00:14 GMT
Followup-To: gnu.epoch.misc
Distribution: gnu
Organization: Reading University, England
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Does anyone have hiliting code for latex, please ??????


Paul.

From help-lucid-emacs-request@lucid.com  Thu Jul 30 01:22:23 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA23057; Thu, 30 Jul 92 01:22:23 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA03943g; Thu, 30 Jul 92 01:09:18 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA06657; Thu, 30 Jul 92 04:19:10 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA06647; Thu, 30 Jul 92 04:19:08 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA06747; Thu, 30 Jul 92 04:20:43 -0400
Path: uunet!usc!sol.ctr.columbia.edu!ira.uka.de!chx400!sicsun!disuns2!disuns2.epfl.ch!simon
From: simon%lia.di.epfl.ch@lucid.com (Simon Leinen)
Newsgroups: alt.lucid-emacs.help
Subject: Re: Anyone get lemacs to work on an SGI?
Message-Id: <SIMON.92Jul30093349@liasg1.epfl.ch>
Date: 30 Jul 92 07:33:49 GMT
References: <RICKB.92Jul29125251@farfle.farfle.asd.sgi.com>
Distribution: alt
Organization: DI-LIA -- Ecole Polytechnique Federale de Lausanne
In-Reply-To: rickb@farfle.farfle.asd.sgi.com's message of 29 Jul 92 20:52:51 GMT
X-Md4-Signature: 75e71c3998c50ace8ff682baebb679eb
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <RICKB.92Jul29125251@farfle.farfle.asd.sgi.com>
rickb@farfle.farfle.asd.sgi.com (Rick Braumoeller) writes:

   I've heard a lot about this Lucid Emacs thing, and I'd love to give
   it a shot.  Unfortunately, it doesn't seem to be set up to compile
   on an SGI.  For lemacs-19.2, the highest verion configuration file
   for Irix is 3.6, and I'm running 4.0.5.  It just doesn't compile
   without a lot of hacking.  Has anyone done that, or gotten around
   it all somehow?

A port of Lucid GNU Emacs 19.2 to SGI 4D machines running IRIX 4.0.x
can be gotten via anonymous FTP from liasun3.epfl.ch.  The files are

2656767 Jul  7 17:29 /pub/gnu/lemacs-19.2-sgi.tar.Z

-- a binary distribution like the one for Sun-4 on labrea, only bigger
because everything has been compiled with -g, and

  43892 Jul  9 19:10 /pub/gnu/lemacs-19.2.udiff.sgi.Z

a (unified) context diff from the 19.2 sources.  This Lemacs also
contains support for the SGI audio library, and you can use e.g. your
Prosonus samples as beeps if you convert them to NeXT audio format
using sfconvert or SOX.

I think/hope 19.3 will be easier to port to other architectures.
-- 
Simon Leinen.
Laboratoire d'Intelligence Artificielle
Ecole Polytechnique Federale de Lausanne

From help-lucid-emacs-request@lucid.com  Thu Jul 30 02:19:43 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA23722; Thu, 30 Jul 92 02:19:43 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA04094g; Thu, 30 Jul 92 02:10:05 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA15508; Thu, 30 Jul 92 05:19:56 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA15502; Thu, 30 Jul 92 05:19:54 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA06998; Thu, 30 Jul 92 05:21:30 -0400
Path: uunet!cs.utexas.edu!qt.cs.utexas.edu!yale.edu!ira.uka.de!chx400!sicsun!disuns2!lglsun!nebbe
From: nebbe%lglsun.epfl.ch@lucid.com (Robb Nebbe)
Newsgroups: alt.lucid-emacs.help
Subject: 8 bit characters
Message-Id: <1992Jul30.101900@lglsun.epfl.ch>
Date: 30 Jul 92 08:19:00 GMT
Organization: Ecole Polytechnique Federale de Lausanne
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I'm having trouble getting lemacs 19.2 to display the graphic characters from
8 bit character sets.  I have files that contain the characters and they
show up in the other editors that I have around (including vi :o) but lemacs
always displays them in octal format.  

Robb Nebbe                     nebbe@lglsun.epfl.ch
                        Swiss Federal Institute of Technology

From help-lucid-emacs-request@lucid.com  Thu Jul 30 02:59:04 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA23848; Thu, 30 Jul 92 02:59:04 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA04190g; Thu, 30 Jul 92 02:42:47 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA18395; Thu, 30 Jul 92 05:52:39 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA18312; Thu, 30 Jul 92 05:46:35 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA07080; Thu, 30 Jul 92 05:48:11 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!cs.utexas.edu!qt.cs.utexas.edu!yale.edu!ira.uka.de!math.fu-berlin.de!informatik.tu-muenchen.de!LRZnews!urmel.vta.mw.tu-muenchen.de!wolfgg
From: wolfgg%mistral.vta.mw.tu-muenchen.de@lucid.com (Wolfgang Goettert)
Subject: Problems with Outline-Mode and hideif
Message-Id: <1992Jul30.092103.19599@news.lrz-muenchen.de>
Reply-To: wolfgg%mistral.vta.mw.tu-muenchen.de@lucid.com
Organization: Lehrstuhl A fuer Verfahrenstechnik (Inst. Chem. Engng.), TU Munich, Germany
Date: Thu, 30 Jul 1992 09:21:03 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I just tried the hideif Package distributed with lemacs and experienced a 
problem I already had in Outline Mode: The hidden lines are still visible,
but in one long line separated by ^M. Any hints?

Bye 
Wolfgang

From help-lucid-emacs-request@lucid.com  Thu Jul 30 03:03:06 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA23866; Thu, 30 Jul 92 03:03:06 PDT
Received: by heavens-gate.lucid.com id AA04224g; Thu, 30 Jul 92 02:53:29 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA04218g; Thu, 30 Jul 92 02:52:32 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA26405; Thu, 30 Jul 92 03:02:25 PDT
Date: Thu, 30 Jul 92 03:02:25 PDT
Message-Id: <9207301002.AA26405@thalidomide.lucid>
X-Windows: The defacto substandard.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: wolfgg%mistral.vta.mw.tu-muenchen.de@lucid.com
Cc: help-lucid-emacs@lucid.com
Subject: Re: Problems with Outline-Mode and hideif
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Wolfgang Goettert's message of Thu 30-Jul-92 09:21:03 GMT <1992Jul30.092103.19599@news.lrz-muenchen.de>
References: <1992Jul30.092103.19599@news.lrz-muenchen.de>

That's because selective-display doesn't work right now.  (Whoever suggested
using ifdef-mode hadn't tried it...)

From help-lucid-emacs-request@lucid.com  Thu Jul 30 03:15:05 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA23897; Thu, 30 Jul 92 03:15:05 PDT
Received: by heavens-gate.lucid.com id AA04256g; Thu, 30 Jul 92 03:05:23 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA04251g; Thu, 30 Jul 92 03:04:43 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA26432; Thu, 30 Jul 92 03:14:36 PDT
Date: Thu, 30 Jul 92 03:14:36 PDT
Message-Id: <9207301014.AA26432@thalidomide.lucid>
X-Windows: The problem for your problem.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: help-lucid-emacs@lucid.com, wolfgg%mistral.vta.mw.tu-muenchen.de@lucid.com
Subject: selective-display
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Jamie Zawinski's message of Thu 30-Jul-92 03:02:25 PDT <9207301002.AA26405@thalidomide.lucid>
References: <1992Jul30.092103.19599@news.lrz-muenchen.de>
	<9207301002.AA26405@thalidomide.lucid>

We plan to make selective-display work again once we finish a big cleanup of
redisplay.  But it might only take a few hours to make selective-display work
in the existing redisplay.  If any of you feel up to it, the relevant code 
is display_text_line() in xdisp.c.  This kind of thing tends to go wrong at
every possible juncture, so check it thoroughly before you decide that it
works (enter selective-display mode 1, 2, 3, and 4 columns from the right
margin, for example.)

It will at least a couple of months before the new redisplay code is done;
some other things have come up.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Thu Jul 30 05:09:36 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA24154; Thu, 30 Jul 92 05:09:36 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA04497g; Thu, 30 Jul 92 04:56:55 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA05932; Thu, 30 Jul 92 08:06:47 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA05926; Thu, 30 Jul 92 08:06:45 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA07616; Thu, 30 Jul 92 08:08:23 -0400
Path: uunet!mcsun!uknet!etherm!mt00
From: mt00@etherm.co.uk (Martin Tomes)
Newsgroups: alt.lucid-emacs.help
Subject: Interactive UNIX version 3.0
Message-Id: <1992Jul30.101238.1322@eurotherm.co.uk>
Date: 30 Jul 92 10:12:38 GMT
Distribution: alt
Organization: Eurotherm Limited
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Has anyone compiled Lucid Emacs on Interactive UNIX?  Or any 386 AT&T
3.2 type UNIX?  If you have *please mail me* I will be on holiday for
a while and I expire alt groups fast.

What I really want to know is it it worth me tying up the trailblazer
for hours to get it when I don't have a vast amount of time to devote
to getting it to compile.

Thanks
-- 
Martin Tomes
Janet:    mtomes@uk.co.eurotherm
Internet: mtomes@eurotherm.co.uk
UUCP:     {uknet,uunet}!etherm!mtomes

From help-lucid-emacs-request@lucid.com  Thu Jul 30 05:16:14 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA24183; Thu, 30 Jul 92 05:16:14 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA04521g; Thu, 30 Jul 92 05:06:33 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA06417; Thu, 30 Jul 92 08:16:25 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA06411; Thu, 30 Jul 92 08:16:24 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA07656; Thu, 30 Jul 92 08:18:00 -0400
Path: uunet!mcsun!corton!sophia!rhea.inria.fr!beust
From: beust%rhea.inria.fr@lucid.com (Cedric Beust)
Newsgroups: alt.lucid-emacs.help
Subject: Re: Opening a window on another display ??
Message-Id: <25926@sophia.inria.fr>
Date: 30 Jul 92 12:07:56 GMT
References: <9207282022.AA21939@whopper.lcs.mit.edu> <9207282039.AA18941@thalidomide.lucid>
Organization: University of Nice Sophia-Antipolis, France
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <9207282039.AA18941@thalidomide.lucid>, jwz@lucid.com (Jamie Zawinski) writes:
>In message <9207282022.AA21939@whopper.lcs.mit.edu> sharma@whopper.lcs.mit.edu wrote:
>>
>> Is it possible to have lemacs open up a window on another display (owned by
>> the same user) ?
>
>No.  Eventually we intend for this to be possible, but it's trickier than you
>might think.  We also want to be able to have one emacs running on multiple X
>displays and multiple dumb ttys simultaniously.

	That's roughly what I wanted to ask : is it possible to export
	a buffer to another display (to show it to someone else for
	example)?

--
Cedric BEUST, beust@sa.inria.fr, Bull Research Koala proj, KoalaBus & xforum
Pho:(33) 93.65.77.70(.66 Fax), INRIA, B.P.93 - 06902 Sophia Antipolis, FRANCE.

From help-lucid-emacs-request@lucid.com  Thu Jul 30 06:00:30 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA24311; Thu, 30 Jul 92 06:00:30 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA04600g; Thu, 30 Jul 92 05:50:55 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA08901; Thu, 30 Jul 92 09:00:46 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA08895; Thu, 30 Jul 92 09:00:44 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA07812; Thu, 30 Jul 92 09:02:22 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!sun-barr!cs.utexas.edu!zaphod.mps.ohio-state.edu!caen!umeecs!news-server.eecs.umich.edu!garath
From: garath@engin.umich.edu (gilasun)
Subject: Re: Problems with Outline-Mode and hideif
In-Reply-To: Jamie Zawinski's message of Thu, 30 Jul 92 03:02:25 PDT
Message-Id: <GARATH.92Jul30082310@gilasun.engin.umich.edu>
Organization: University of Michigan
References: <1992Jul30.092103.19599@news.lrz-muenchen.de>
	<9207301002.AA26405@thalidomide.lucid>
Date: Thu, 30 Jul 1992 13:23:10 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


	Well, only because I can't get lemacs compiled yet.  

--
Scott Grosch                              Internet: garath@engin.umich.edu
Programmer                                         Bitnet: user7a4b@umichu
Computer Aided Engineering Network                  University of Michigan

From help-lucid-emacs-request@lucid.com  Thu Jul 30 08:18:30 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA24587; Thu, 30 Jul 92 08:18:30 PDT
Received: by heavens-gate.lucid.com id AA04955g; Thu, 30 Jul 92 08:08:33 PDT
Received: from watergate.lucid ([192.31.212.117]) by heavens-gate.lucid.com id AA04951g; Thu, 30 Jul 92 08:08:12 PDT
Received: by watergate.lucid (4.1/SMI-4.1)
	id AA00842; Thu, 30 Jul 92 08:16:39 PDT
Date: Thu, 30 Jul 92 08:16:39 PDT
From: eb%watergate@lucid.com (Eric Benson)
Message-Id: <9207301516.AA00842@watergate.lucid>
To: help-lucid-emacs@lucid.com
Subject: Re: 8 bit characters
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Robb Nebbe's message of  30-Jul-92 08:19:00 GMT <1992Jul30.101900@lglsun.epfl.ch>
References: <1992Jul30.101900@lglsun.epfl.ch>
Reply-To: eb@lucid.com

(setq ctl-arrow 'any-non-t-non-nil-value)

From help-lucid-emacs-request@lucid.com  Thu Jul 30 08:20:38 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA24591; Thu, 30 Jul 92 08:20:38 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA04960g; Thu, 30 Jul 92 08:10:52 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA20680; Thu, 30 Jul 92 11:20:44 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA20666; Thu, 30 Jul 92 11:20:40 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA08405; Thu, 30 Jul 92 11:22:18 -0400
Path: uunet!mcsun!corton!sophia!rhea.inria.fr!beust
From: beust%rhea.inria.fr@lucid.com (Cedric Beust)
Newsgroups: alt.lucid-emacs.help
Subject: Setting the icon title properly
Message-Id: <25943@sophia.inria.fr>
Date: 30 Jul 92 15:05:42 GMT
Organization: University of Nice Sophia-Antipolis, France
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


	I want to write some elisp that would set the icon title with
	the name of the buffers. By setting the variable unmap-screen-hook,
	this seems to work fine for one screen but when I open a second
	screen, even though I give it another name, I can't seem to have
	two icons with distinct titles. The already iconified lemacs
	takes the title of the newly iconified one, so you can't
	distinguish one from the other.

	It seems the screen-icon-title-format variable doesn't act on
	a per-screen basis but is global to all screens. Did I miss
	something?

	Here is the code I wrote :

(defun ced-make-string (l sep)
  "Given a list of string, return one string composed of all its elements
   separated by the string sep"
  (if l
      (concat (car l)
	      (let ((result (ced-make-string (cdr l) sep)))
		(if result (concat sep result) "")))))

(defun ced-squeeze-empty (l)
  "Given a list of strings, return the list with each empty string removed"
  (if l
      (if (equal (car l) "") (ced-squeeze-empty (cdr l))
	                  (cons (car l) (ced-squeeze-empty (cdr l))))))
	

(defun ced-set-titles (screen) ;; (buffer &arg ignored)
  "Set the icon title according to the buffers currently displayed"
  (setq screen-icon-title-format
	(ced-make-string
	 (ced-squeeze-empty
	  (mapcar '(lambda (buffer)
		     (if (get-buffer-window buffer)
			 (buffer-name buffer)
		       ""))
		  (buffer-list)))
	 ",")))


(setq unmap-screen-hook 'ced-set-titles)


--
Cedric BEUST, beust@sa.inria.fr, Bull Research Koala proj, KoalaBus & xforum
Pho:(33) 93.65.77.70(.66 Fax), INRIA, B.P.93 - 06902 Sophia Antipolis, FRANCE.

From help-lucid-emacs-request@lucid.com  Thu Jul 30 09:00:25 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA24710; Thu, 30 Jul 92 09:00:25 PDT
Received: by heavens-gate.lucid.com id AA05127g; Thu, 30 Jul 92 08:49:32 PDT
Received: from scylla.lucid (scylla.lucid.com) by heavens-gate.lucid.com id AA05122g; Thu, 30 Jul 92 08:49:18 PDT
Received: by scylla.lucid (4.1/SMI-4.1)
	id AA14753; Thu, 30 Jul 92 08:59:12 PDT
Date: Thu, 30 Jul 92 08:59:12 PDT
From: devin%scylla@lucid.com (Matthieu Devin)
Message-Id: <9207301559.AA14753@scylla.lucid>
To: eb@lucid.com
Cc: help-lucid-emacs@lucid.com
Subject: Re: 8 bit characters
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Eric Benson's message of Thu 30-Jul-92 08:16:39 PDT <9207301516.AA00842@watergate.lucid>
References: <1992Jul30.101900@lglsun.epfl.ch>
	<9207301516.AA00842@watergate.lucid>

In message <9207301516.AA00842@watergate.lucid> Eric Benson wrote:
>
> (setq ctl-arrow 'any-non-t-non-nil-value)

BTW, in 19.3 this is the default if you load x-compose.el.  Check-it out it
makes inputing ISO characters a breeze.  Too bad they don't go through the
mail.

From help-lucid-emacs-request@lucid.com  Thu Jul 30 09:00:53 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA24716; Thu, 30 Jul 92 09:00:53 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA05128g; Thu, 30 Jul 92 08:49:48 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA22949; Thu, 30 Jul 92 11:59:39 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA22943; Thu, 30 Jul 92 11:59:37 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA08540; Thu, 30 Jul 92 12:01:15 -0400
Newsgroups: gnu.emacs.help,alt.lucid-emacs.help,comp.emacs
Path: uunet!stanford.edu!agate!ames!decwrl!deccrl!news.crl.dec.com!rdg.dec.com!ryn.mro4.dec.com!gambln.enet.dec.com!logemann
From: logemann@gambln.enet.dec.com (George Logemann)
Subject: Arrow-key bindings
Message-Id: <1992Jul30.153851.26912@ryn.mro4.dec.com>
Organization: Digital Equipment Corporation - Marlboro, MA
Date: 30 JUL 92 11:36:18 EST
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com



I'm running emacs-18.57 on a VAXstation 3100 (ULTRIX), and
do not know how to bind the arrow keys to 'previous-line,'
'next-line,' etc.

Can someone please mail me the correct bindings (or post them,
or tell me where they're posted) ??

Additionally, please tell me which file they go in.

Regards,
George.

| George Logemann -- george@bgm004.enet.dec.com                       |

| All views and opinions expressed are my own and do not neccessarily |
| reflect those of my clients or employer.                            |

From help-lucid-emacs-request@lucid.com  Thu Jul 30 11:33:41 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA25232; Thu, 30 Jul 92 11:33:41 PDT
Received: by heavens-gate.lucid.com id AA05844g; Thu, 30 Jul 92 11:23:19 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA05838g; Thu, 30 Jul 92 11:22:56 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA26704; Thu, 30 Jul 92 11:32:55 PDT
Date: Thu, 30 Jul 92 11:32:55 PDT
Message-Id: <9207301832.AA26704@thalidomide.lucid>
X-Windows: The first fully modular software disaster.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: beust%rhea.inria.fr@lucid.com (Cedric Beust)
Cc: help-lucid-emacs@lucid.com
Subject: Re: Setting the icon title properly
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Cedric Beust's message of  30-Jul-92 15:05:42 GMT <25943@sophia.inria.fr>
References: <25943@sophia.inria.fr>

In message <25943@sophia.inria.fr> Cedric Beust wrote:
>
> 	It seems the screen-icon-title-format variable doesn't act on
> 	a per-screen basis but is global to all screens.

Fixed in 19.3.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Thu Jul 30 11:33:37 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA25233; Thu, 30 Jul 92 11:33:37 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA05845g; Thu, 30 Jul 92 11:23:26 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA05190; Thu, 30 Jul 92 14:32:59 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA05180; Thu, 30 Jul 92 14:32:57 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA09149; Thu, 30 Jul 92 14:34:27 -0400
Path: uunet!dtix!darwin.sura.net!zaphod.mps.ohio-state.edu!sol.ctr.columbia.edu!The-Star.honeywell.com!umn.edu!csus.edu!netcomsv!mork!kemmer
From: kemmer@netcom.com (Todd Kemmerling)
Newsgroups: alt.lucid-emacs.help
Subject: Macintosh Key Bindings
Message-Id: <0ypmpak.kemmer@netcom.com>
Date: 30 Jul 92 16:49:57 GMT
Organization: Netcom - Online Communication Services  (408 241-9760 guest)
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

A friend asked me if it is possible to set the keybindings
for lemacs  to those of the Macintosh. Is this possible ?
And if so how to I do it ?


Thanks for any help,

Todd K.

From help-lucid-emacs-request@lucid.com  Thu Jul 30 14:47:11 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA25796; Thu, 30 Jul 92 14:47:11 PDT
Received: by heavens-gate.lucid.com id AA06784g; Thu, 30 Jul 92 14:37:38 PDT
Received: from motgate.mot.com by heavens-gate.lucid.com id AA06771g; Thu, 30 Jul 92 14:36:38 PDT
Received: from cadsun.corp.mot.com ([129.188.128.6]) by pobox.mot.com (4.1/SMI-4.0)
	id AA28863; Thu, 30 Jul 92 16:44:52 CDT
From: ramu@cadsun.corp.mot.com
Received: from munich.srd.mot by cadsun.corp.mot.com (4.0/SMI-4.0)
	id AA28145; Thu, 30 Jul 92 16:50:45 CDT
Date: Thu, 30 Jul 92 16:50:45 CDT
Message-Id: <9207302150.AA28145@cadsun.corp.mot.com>
Received: by munich.srd.mot (4.1/SMI-4.1)
	id AA01930; Thu, 30 Jul 92 16:50:42 CDT
To: help-lucid-emacs@lucid.com
In-Reply-To: Per Abrahamsen's message of Thu, 30 Jul 92 23:04:50 +0200 <9207302104.AA03648@iesd.auc.dk>
Subject: using multiple fonts within the same buffer

I am currently using Emacs version 18.55. 

I have a related question about Emacs.  I wish to use multiple fonts
within a single buffer (like a Symbolics).  For example, all the
comments in a Lisp program could be in "italic" font while all the 
code could be in "roman" font.  

Does Lucid emacs support this? 

If so, how can I enhance my Emacs to use Lucid Emacs? 

Thanks,

--Ramu Iyer

Email: ramu@cadsun.corp.mot.com

From help-lucid-emacs-request@lucid.com  Thu Jul 30 15:10:25 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA25834; Thu, 30 Jul 92 15:10:25 PDT
Received: by heavens-gate.lucid.com id AA06885g; Thu, 30 Jul 92 14:56:51 PDT
Received: from sol.mdl.com (port6.reston.pub-ip.psi.net) by heavens-gate.lucid.com id AA06875g; Thu, 30 Jul 92 14:56:23 PDT
Date: Thu, 30 Jul 92 18:06:23 EDT
From: phil@mdl.com (Phil Usatine)
Received: by sol.mdl.com (4.1/3.1.090690-XXXX)
	id AA27004; Thu, 30 Jul 92 18:06:23 EDT
Message-Id: <9207302206.AA27004@sol.mdl.com>
To: help-lucid-emacs@lucid.com
Subject: Unsubscribe from list please


Please unsubscribe me.

From help-lucid-emacs-request@lucid.com  Fri Jul 31 03:22:17 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA27743; Fri, 31 Jul 92 03:22:17 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA09068g; Fri, 31 Jul 92 03:07:43 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA20098; Fri, 31 Jul 92 06:17:33 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA20086; Fri, 31 Jul 92 06:17:27 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA15865; Fri, 31 Jul 92 06:19:14 -0400
Path: uunet!mcsun!corton!sophia!bagheera.inria.fr!colas
From: colas%bagheera.inria.fr@lucid.com (Colas Nahaboo)
Newsgroups: alt.lucid-emacs.help
Subject: Re: RPC protocols in LEmacs 19
Keywords: RPC
Message-Id: <26013@sophia.inria.fr>
Date: 31 Jul 92 09:49:27 GMT
References: <4028@seti.UUCP>
Organization: Koala Project, Bull Research France
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <4028@seti.UUCP>, murthy@margaux.inria.fr (Chet Murthy) writes:
|> I have been thinking about writing some RPC code, so that emacs can
|> act as an RPC/XDR server/client. 

in the same vein, having a way to send commands to lemacs via an x property
(just like the EPOCH_EXECUTE property of epoch) would be VERY nice, and trivial
to implement...

-- 
Colas Nahaboo, colas@sa.inria.fr, Bull Research Koala proj. Wool&Gwm Architect
Pho:(33) 93.65.77.70(.66 Fax), INRIA, B.P.93 - 06902 Sophia Antipolis, FRANCE.

From help-lucid-emacs-request@lucid.com  Fri Jul 31 03:49:52 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA27796; Fri, 31 Jul 92 03:49:52 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA09127g; Fri, 31 Jul 92 03:37:07 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA01926; Fri, 31 Jul 92 06:46:57 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA01912; Fri, 31 Jul 92 06:46:53 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA16097; Fri, 31 Jul 92 06:48:39 -0400
Path: uunet!mcsun!corton!sophia!rhea.inria.fr!beust
From: beust%rhea.inria.fr@lucid.com (Cedric Beust)
Newsgroups: alt.lucid-emacs.help
Subject: Re: RPC protocols in LEmacs 19
Keywords: RPC
Message-Id: <26014@sophia.inria.fr>
Date: 31 Jul 92 10:15:29 GMT
References: <4028@seti.UUCP> <26013@sophia.inria.fr>
Organization: University of Nice Sophia-Antipolis, France
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <26013@sophia.inria.fr>, colas@bagheera.inria.fr (Colas Nahaboo) writes:
>In article <4028@seti.UUCP>, murthy@margaux.inria.fr (Chet Murthy) writes:
>|> I have been thinking about writing some RPC code, so that emacs can
>|> act as an RPC/XDR server/client. 
>
>in the same vein, having a way to send commands to lemacs via an x property
>(just like the EPOCH_EXECUTE property of epoch) would be VERY nice, and trivial
>to implement...

	It would be really great if, in the shell, we could type something
	like

le file.c

	and see the already launched lemacs display this file just like if
	it had been loaded with \C-x\C-f. This kind of behavior could be
	extended to many other uses.

--
Cedric BEUST, beust@sa.inria.fr, Bull Research Koala proj, KoalaBus & xforum
Pho:(33) 93.65.78.10(.66 Fax), INRIA, B.P.93 - 06902 Sophia Antipolis, FRANCE.

From help-lucid-emacs-request@lucid.com  Fri Jul 31 07:16:17 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA28183; Fri, 31 Jul 92 07:16:17 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA09553g; Fri, 31 Jul 92 07:03:45 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA02491; Fri, 31 Jul 92 10:13:39 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA02483; Fri, 31 Jul 92 10:13:35 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA17662; Fri, 31 Jul 92 10:15:24 -0400
Path: uunet!mcsun!corton!loria!news.loria.fr!bosch
From: bosch%loria.fr@lucid.com (Guido Bosch)
Newsgroups: alt.lucid-emacs.help
Subject: Re: 8 bit characters
Message-Id: <BOSCH.92Jul31160813@moebius.loria.fr>
Date: 31 Jul 92 14:08:13 GMT
References: <1992Jul30.101900@lglsun.epfl.ch>
Reply-To: Guido BOSCH <bosch%loria.fr@lucid.com>
Organization: INRIA-Lorraine / CRIN, Nancy, France
In-Reply-To: nebbe@lglsun.epfl.ch's message of 30 Jul 92 08:19:00 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <1992Jul30.101900@lglsun.epfl.ch> nebbe@lglsun.epfl.ch (Robb Nebbe) writes:

   I'm having trouble getting lemacs 19.2 to display the graphic characters from
   8 bit character sets.  I have files that contain the characters and they
   show up in the other editors that I have around (including vi :o) but lemacs
   always displays them in octal format.  


(setq ctl-arrow 'foo) in your .emacs will do it.

ctl-arrow Documentation:
*Non-nil means display control chars with uparrow.
Nil means use backslash and octal digits.
Non-t and non-nil means display 8-bit characters (that is, characters
whose code is greater than 160 (SPC with the high bit on) will be
displayed as a single glyph.)
Automatically becomes buffer-local when set in any fashion.
This variable does not apply to characters whose display is specified
in the current display table (if there is one).

--
Guido BOSCH, INRIA-Lorraine/CRIN
Institut National de Recherche en Informatique et en Automatique (INRIA)
Centre de Recherche en Informatique de Nancy (CRIN)
Campus scientifique, B.P. 239            
54506 Vandoeuvre-les-Nancy CEDEX       	
Tel.: (+33) 83.91.24.24
Fax.: (+33) 83.41.30.79                	
email: bosch@loria.fr             	

From help-lucid-emacs-request@lucid.com  Fri Jul 31 08:05:35 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA28268; Fri, 31 Jul 92 08:05:35 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA09665g; Fri, 31 Jul 92 07:53:10 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA05771; Fri, 31 Jul 92 11:03:04 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA05730; Fri, 31 Jul 92 11:03:01 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA17984; Fri, 31 Jul 92 11:04:20 -0400
Path: uunet!haven.umd.edu!darwin.sura.net!mips!swrinde!news.dell.com!math.utexas.edu!emil.ma.utexas.edu!chari
From: chari@emil.ma.utexas.edu (Christopher M. Whatley)
Newsgroups: alt.lucid-emacs.help
Subject: Re: RPC protocols in LEmacs 19
Message-Id: <CHARI.92Jul31095244@emil.ma.utexas.edu>
Date: 31 Jul 92 15:52:44 GMT
References: <4028@seti.UUCP> <26013@sophia.inria.fr> <26014@sophia.inria.fr>
Organization: /d5/staff/chari/.organization
In-Reply-To: beust@rhea.inria.fr's message of 31 Jul 92 10: 15:29 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


In article <26014@sophia.inria.fr> beust@rhea.inria.fr (Cedric Beust) writes:

	   It would be really great if, in the shell, we could type something
	   like

   le file.c

	   and see the already launched lemacs display this file just like if
	   it had been loaded with \C-x\C-f. This kind of behavior could be
	   extended to many other uses.

Emacsclient (in $LEMACS/etc) does this exact thing if you have run
(server-start) in your .emacs. 


-- 
Chris Whatley                            |  "With sex, at least, if you are
UT-Austin Mathematics			 |  not sure about what you are
Ph: 512/471-7107(O),499-0475(H)		 |  doing, by all means, don't do
E-mail: chari@{math,emx,cs}.utexas.edu,	 |  it harder!"
	chari@gnu.ai.mit.edu		 |        -Merril Markoe

From help-lucid-emacs-request@lucid.com  Fri Jul 31 08:58:19 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA28402; Fri, 31 Jul 92 08:58:19 PDT
Received: by heavens-gate.lucid.com id AA09873g; Fri, 31 Jul 92 08:48:44 PDT
Received: from scylla.lucid (scylla.lucid.com) by heavens-gate.lucid.com id AA09869g; Fri, 31 Jul 92 08:48:31 PDT
Received: by scylla.lucid (4.1/SMI-4.1)
	id AA18617; Fri, 31 Jul 92 08:58:28 PDT
Date: Fri, 31 Jul 92 08:58:28 PDT
From: devin%scylla@lucid.com (Matthieu Devin)
Message-Id: <9207311558.AA18617@scylla.lucid>
To: colas%bagheera.inria.fr@lucid.com (Colas Nahaboo)
Cc: help-lucid-emacs@lucid.com
Subject: Re: RPC protocols in LEmacs 19
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Colas Nahaboo's message of  31-Jul-92 09:49:27 GMT <26013@sophia.inria.fr>
References: <26013@sophia.inria.fr>
	<4028@seti.UUCP>

> in the same vein, having a way to send commands to lemacs via an x property
> (just like the EPOCH_EXECUTE property of epoch) would be VERY nice, and trivial
> to implement...
> 
> -- 
> Colas Nahaboo, colas@sa.inria.fr, Bull Research Koala proj. Wool&Gwm Architect
> Pho:(33) 93.65.77.70(.66 Fax), INRIA, B.P.93 - 06902 Sophia Antipolis, FRANCE.

From help-lucid-emacs-request@lucid.com  Fri Jul 31 08:59:52 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA28406; Fri, 31 Jul 92 08:59:52 PDT
Received: by heavens-gate.lucid.com id AA09882g; Fri, 31 Jul 92 08:50:14 PDT
Received: from scylla.lucid (scylla.lucid.com) by heavens-gate.lucid.com id AA09878g; Fri, 31 Jul 92 08:50:02 PDT
Received: by scylla.lucid (4.1/SMI-4.1)
	id AA18626; Fri, 31 Jul 92 08:59:58 PDT
Date: Fri, 31 Jul 92 08:59:58 PDT
From: devin%scylla@lucid.com (Matthieu Devin)
Message-Id: <9207311559.AA18626@scylla.lucid>
To: colas%bagheera.inria.fr@lucid.com (Colas Nahaboo)
Cc: help-lucid-emacs@lucid.com
Subject: Re: RPC protocols in LEmacs 19
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Colas Nahaboo's message of  31-Jul-92 09:49:27 GMT <26013@sophia.inria.fr>
References: <26013@sophia.inria.fr>
	<4028@seti.UUCP>

> in the same vein, having a way to send commands to lemacs via an x property
> (just like the EPOCH_EXECUTE property of epoch) would be VERY nice, and
> trivial to implement...

[Sorry for the previous mail I hit ^C^C too fast]

Wouldn't it be better to revive the old emacs_server thing that was with an
older emacs18 version?  With this thing Emacs open a listening TCP socket and
other clients can send lisp to it with the help of a small C program.

From help-lucid-emacs-request@lucid.com  Fri Jul 31 09:03:55 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA28421; Fri, 31 Jul 92 09:03:55 PDT
Received: by heavens-gate.lucid.com id AA09899g; Fri, 31 Jul 92 08:54:21 PDT
Received: from sgi.sgi.com (SGI.COM) by heavens-gate.lucid.com id AA09895g; Fri, 31 Jul 92 08:54:09 PDT
Received: from athos.pei.com by sgi.sgi.com via UUCP (920330.SGI/910110.SGI)
	for help-lucid-emacs@lucid.com id AA20485; Fri, 31 Jul 92 09:04:04 -0700
Received: from athos.pei.com by pei.pei.com (5.52/900721.SGI)
	for sgi!lucid.com!help-lucid-emacs id AA01926; Fri, 31 Jul 92 09:04:40 PDT
Received: by athos (4.1/SMI-4.1)
	id AA04348; Fri, 31 Jul 92 09:06:11 PDT
Date: Fri, 31 Jul 92 09:06:11 PDT
From: berry@athos.pei.com (Berry Kercheval)
Message-Id: <9207311606.AA04348@athos>
To: help-lucid-emacs@lucid.com
Subject: Re: RPC protocols in LEmacs 19
Newsgroups: alt.lucid-emacs.help
In-Reply-To: <9207311558.AA18617@scylla.lucid>
References: <26013@sophia.inria.fr>
	<4028@seti.UUCP>
	<9207311558.AA18617@scylla.lucid>
Reply-To: berry@pei.com


Colas Nahaboo wrote:
> in the same vein, having a way to send commands to lemacs via an x property
> (just like the EPOCH_EXECUTE property of epoch) would be VERY nice, and trivial
> to implement...

I dunno.  Maybe I'm an old fuddy-duddy, but knowing the level of
security in the X system, the idea of anyone being able to send
arbitrary commands to my emacs makes me very nervous.

  --berry

--
Berry Kercheval :: berry@pei.com :: Protocol Engines, Inc.  Mt. View, CA
"And there's more where that came from!"


From help-lucid-emacs-request@lucid.com  Fri Jul 31 09:11:14 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA28446; Fri, 31 Jul 92 09:11:14 PDT
Received: by heavens-gate.lucid.com id AA09937g; Fri, 31 Jul 92 09:01:26 PDT
Received: from sun2.nsfnet-relay.ac.uk by heavens-gate.lucid.com id AA09933g; Fri, 31 Jul 92 09:01:07 PDT
Via: uk.ac.edinburgh.cogsci; Fri, 31 Jul 1992 17:10:31 +0100
From: rjc@cogsci.edinburgh.ac.uk
Date: Fri, 31 Jul 92 17:04:19 BST
Message-Id: <29103.9207311604@daiches.cogsci.ed.ac.uk>
Subject: Re: RPC protocols in LEmacs 19
To: help-lucid-emacs@lucid.com
In-Reply-To: Berry Kercheval's message of Fri, 31 Jul 92 09: 06: 11 PDT
X-Dragon: Mnemouth

> I dunno.  Maybe I'm an old fuddy-duddy, but knowing the level of
> security in the X system, the idea of anyone being able to send
> arbitrary commands to my emacs makes me very nervous.

X security is much better than (start-server) security. 

If anyone is looking for a spare time project, a really good lemacs
server package using the Xauth library for security (so that I can get
at my lemacs iff I can get at my X server) would be a boon.

      ^_^
     (O O) 
     \_/@@\
      \\~~/ 
        ~~
		- RJC

From help-lucid-emacs-request@lucid.com  Fri Jul 31 09:19:20 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA28467; Fri, 31 Jul 92 09:19:20 PDT
Received: by heavens-gate.lucid.com id AA09998g; Fri, 31 Jul 92 09:09:13 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA09988g; Fri, 31 Jul 92 09:08:46 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA28473; Fri, 31 Jul 92 09:18:40 PDT
Date: Fri, 31 Jul 92 09:18:40 PDT
Message-Id: <9207311618.AA28473@thalidomide.lucid>
X-Windows: Live the nightmare.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: rjc@cogsci.edinburgh.ac.uk
Cc: help-lucid-emacs@lucid.com
Subject: Re: RPC protocols in LEmacs 19
In-Reply-To: rjc@cogsci.edinburgh.ac.uk's message of Fri 31-Jul-92 17:04:19 BST <29103.9207311604@daiches.cogsci.ed.ac.uk>
References: <29103.9207311604@daiches.cogsci.ed.ac.uk>

In message <29103.9207311604@daiches.cogsci.ed.ac.uk> rjc@cogsci.edinburgh.ac.uk wrote:
>
> If anyone is looking for a spare time project, a really good lemacs
> server package using the Xauth library for security (so that I can get
> at my lemacs iff I can get at my X server) would be a boon.

Hack something up that works by sending synthetic keypress events to lemacs.
The variable `x-allow-sendevents' controls whether they are listened to.
(This is a kludge of the first order, but so is X.)

	-- Jamie

From help-lucid-emacs-request@lucid.com  Fri Jul 31 10:13:53 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA28621; Fri, 31 Jul 92 10:13:53 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA10257g; Fri, 31 Jul 92 10:02:20 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA13850; Fri, 31 Jul 92 13:12:04 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA13834; Fri, 31 Jul 92 13:11:49 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA18585; Fri, 31 Jul 92 13:13:29 -0400
Path: uunet!utcsri!bonnie.concordia.ca!hobbit.ireq.hydro.qc.ca!NetNews.ireq.hydro.qc.ca!gamin
From: gamin%ireq-robot.hydro.qc.ca@lucid.com (Martin Boyer)
Newsgroups: alt.lucid-emacs.help
Subject: Re: 8 bit characters
Message-Id: <GAMIN.92Jul31130124@pellan.ireq-robot.hydro.qc.ca>
Date: 31 Jul 92 17:01:24 GMT
References: <1992Jul30.101900@lglsun.epfl.ch> <9207301516.AA00842@watergate.lucid>
	<9207301559.AA14753@scylla.lucid>
Organization: Le laboratoire de robotique de l'Institut de recherche
	d'Hydro-Quebec
In-Reply-To: devin%scylla@lucid.com's message of 30 Jul 92 15:59:12 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

>>>>> Matthieu Devin writes:

>BTW, in 19.3 [(setq ctl-arrow 'any-non-t-non-nil-value)] is the
>default if you load x-compose.el.  Check-it out it makes inputing ISO
>characters a breeze.  Too bad they don't go through the mail.

On SunOS 4.1.1 they do.

--
Martin Boyer                            mboyer@ireq-robot.hydro.qc.ca
Institut de recherche d'Hydro-Quebec    mboyer@ireq-robot.uucp
Varennes, QC, Canada   J3X 1S1
+1 514 652-8412

From help-lucid-emacs-request@lucid.com  Fri Jul 31 18:34:33 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA29789; Fri, 31 Jul 92 18:34:33 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA01400g; Fri, 31 Jul 92 18:21:54 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA00319; Fri, 31 Jul 92 21:31:39 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA00310; Fri, 31 Jul 92 21:31:33 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA22121; Fri, 31 Jul 92 21:33:17 -0400
Path: uunet!elroy.jpl.nasa.gov!usc!zaphod.mps.ohio-state.edu!magnus.acs.ohio-state.edu!usenet.ins.cwru.edu!agate!ames!think.com!paperboy.osf.org!hsdndev!rossini
From: rossini@biosun4.harvard.edu (Anthony Rossini)
Newsgroups: alt.lucid-emacs.help
Subject: help compiling
Message-Id: <ROSSINI.92Jul29085951@biosun4.harvard.edu>
Date: 29 Jul 92 12:59:51 GMT
Distribution: alt
Organization: Biostat Dept, HSPH, Boston MA, USA.
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


(reposting, as I've not seen it appear.  If this shows up twice, my
apologies -> I must've mis-posted the first time?)


I'm having a bit of trouble compiling lemacs-19.2 on a SunOS 4.1.2 (sparc2)
with gcc-2.2.2.  I installed X11R5 last fall, havn't added any patches (due
to lack of disk space, unfortunately).  Anyhow, in compiling, I end up with
the error:

ld: Undefined symbol
   _XtStrings
   _XtShellStrings

which according to the README implies that I'm linking against the R4 Xt,
but with the R5 header files.  I can't seem to generate a libXt.a that would
be R5, but have the shared libraries (.so.4.10 and .sa.4.10) that should be
R5, but I'm guessing that since emacs wants everything statically linked,
that it doesn't want those two.  So does anyone have any suggestions, or am
I just being stupid? (which might be pretty likely!)

Or do I just need to snarf a set of R4 headers?

thanks,
-tony
--
Anthony Rossini       -       rossini@biostat.harvard.edu
Department of Biostatistics, Harvard School of Public Health
677 Huntington Ave, Boston MA 02115  617-432-1056

From help-lucid-emacs-request@lucid.com  Fri Jul 31 22:06:00 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA00261; Fri, 31 Jul 92 22:06:00 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA01952g; Fri, 31 Jul 92 21:56:29 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA15685; Sat, 1 Aug 92 01:06:24 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA15644; Sat, 1 Aug 92 01:06:15 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA23692; Sat, 1 Aug 92 01:08:11 -0400
Path: uunet!mcsun!corton!babbage!imag!maupiti!chabert
From: chabert%maupiti.imag.fr@lucid.com (Annie Chabert)
Newsgroups: alt.lucid-emacs.help
Subject: Popup menus and info.el
Message-Id: <37759@imag.imag.fr>
Date: 31 Jul 92 15:25:29 GMT
Organization: IMAG, University of Grenoble, France
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

-- 

I have tried the new version of info.el (received 2 or 3 days ago) on Sun 4 and DEC machine for lucid-emacs 19.2.
Now I can display once a popup, but the next time I tried to open the same one or another one ( by selecting a node or not) : nothing happens... Except for the cursor : it 's displayed as an arrow for 1 or 2 seconds, and after becomes a cross again. At this stage you can reuse emacs normally.

I'd like to use the popup menus, how can I arrange this ?

Thanks,  Annie.


-------------------------------------------------------------------------
 		Annie CHABERT    chabert@imag.fr,
 Unite Mixte Bull-Imag,   ZI de Mayencin,  2 rue Vignate,  38610 Gieres.
 	   Ph. (33) 76 63 48 50,	Fax. (33) 76 54 76 15		
-------------------------------------------------------------------------

From help-lucid-emacs-request@lucid.com  Sat Aug  1 10:38:17 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01892; Sat, 1 Aug 92 10:38:17 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA03651g; Sat, 1 Aug 92 10:28:38 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA04768; Sat, 1 Aug 92 13:38:35 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA04762; Sat, 1 Aug 92 13:38:34 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA29361; Sat, 1 Aug 92 13:40:36 -0400
Path: uunet!haven.umd.edu!mimsy!lhc!lhc!warsaw
From: warsaw@nlm.nih.gov (Barry A. Warsaw)
Newsgroups: alt.lucid-emacs.help
Subject: Re: RPC protocols in LEmacs 19
Message-Id: <WARSAW.92Aug1120514@anthem.nlm.nih.gov>
Date: 1 Aug 92 17:05:14 GMT
References: <4028@seti.UUCP> <26013@sophia.inria.fr> <26014@sophia.inria.fr>
Reply-To: warsaw@nlm.nih.gov (Barry A. Warsaw)
Organization: Century Computing, Inc.
In-Reply-To: beust@rhea.inria.fr's message of 31 Jul 92 10:15:29 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


What would be really cool is for me to be able to keep my (l)emacs
running at work, go home and log in with my Graphon Xterm, connect to
that running (l)emacs and be able to edit files with a new screen that
pops up on my home display.  Is this possible?

From help-lucid-emacs-request@lucid.com  Sat Aug  1 19:03:57 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA02640; Sat, 1 Aug 92 19:03:57 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA04679g; Sat, 1 Aug 92 18:53:21 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA25649; Sat, 1 Aug 92 22:03:19 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA25643; Sat, 1 Aug 92 22:03:17 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA03802; Sat, 1 Aug 92 22:05:23 -0400
Path: uunet!usc!rpi!bu.edu!nntp-read!jbw
From: jbw@bigbird.bu.edu (Joe Wells)
Newsgroups: alt.lucid-emacs.help
Subject: Re: RPC protocols in LEmacs 19
Message-Id: <JBW.92Aug1213845@bigbird.bu.edu>
Date: 2 Aug 92 02:38:45 GMT
References: <4028@seti.UUCP> <26013@sophia.inria.fr> <26014@sophia.inria.fr>
 <WARSAW.92Aug1120514@anthem.nlm.nih.gov>
Organization: Boston University Computer Science Department
In-Reply-To: warsaw@nlm.nih.gov's message of 1 Aug 92 17:05:14 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <WARSAW.92Aug1120514@anthem.nlm.nih.gov> warsaw@nlm.nih.gov (Barry A. Warsaw) writes:

   What would be really cool is for me to be able to keep my (l)emacs
   running at work, go home and log in with my Graphon Xterm, connect to
   that running (l)emacs and be able to edit files with a new screen that
   pops up on my home display.  Is this possible?

This is possible right now if you don't try to run Emacs as an X client.
In other words, it isn't possible if you use Lucid Emacs, because that
doesn't run on a tty yet.

I'm using iScreen 3.2.1 right now to allow attaching and detaching from
entire login sessions.  Aside from the fact that I'm using a dumb
terminal, the only really ugly thing is that I have to redo my key
bindings when I switch terminal types.  (Sun 3 or NCD at work, VT320 at
home.)

-- 
Enjoy,

Joe Wells <jbw@cs.bu.edu>
Member of the League for Programming Freedom --- send e-mail for details

From help-lucid-emacs-request@lucid.com  Sat Aug  1 19:11:51 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA02650; Sat, 1 Aug 92 19:11:51 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA04696g; Sat, 1 Aug 92 19:01:47 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA25761; Sat, 1 Aug 92 22:11:44 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA25755; Sat, 1 Aug 92 22:11:43 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA03857; Sat, 1 Aug 92 22:13:46 -0400
Path: uunet!zaphod.mps.ohio-state.edu!darwin.sura.net!mips!decwrl!bu.edu!nntp-read!jbw
From: jbw@bigbird.bu.edu (Joe Wells)
Newsgroups: alt.lucid-emacs.help
Subject: Re: lemacs 19.2 and evi (vi emulator)
Message-Id: <JBW.92Aug1220316@bigbird.bu.edu>
Date: 2 Aug 92 03:03:16 GMT
References: <15171tINNrk7@early-bird.think.com>
 <9207271853.AA16545@thalidomide.lucid>
Organization: Boston University Computer Science Department
In-Reply-To: jwz@lucid.com's message of 27 Jul 92 18:53:28 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <9207271853.AA16545@thalidomide.lucid> jwz@lucid.com (Jamie Zawinski) writes:

   The "quick fix" is this:

   	(let ((meta-prefix-char -1))
   	  (load-library "evi"))

   [...]

   You don't really want to know why this is necessary.

Yes, we do!

-- 
Joe Wells <jbw@cs.bu.edu>
Member of the League for Programming Freedom --- send e-mail for details

From help-lucid-emacs-request@lucid.com  Sat Aug  1 19:11:55 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA02653; Sat, 1 Aug 92 19:11:55 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA04697g; Sat, 1 Aug 92 19:01:52 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA25771; Sat, 1 Aug 92 22:11:49 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA25765; Sat, 1 Aug 92 22:11:48 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA03861; Sat, 1 Aug 92 22:13:54 -0400
Path: uunet!usc!zaphod.mps.ohio-state.edu!darwin.sura.net!mips!decwrl!bu.edu!nntp-read!jbw
From: jbw@bigbird.bu.edu (Joe Wells)
Newsgroups: alt.lucid-emacs.help
Subject: Re: Change in point movement behavior
Message-Id: <JBW.92Aug1220510@bigbird.bu.edu>
Date: 2 Aug 92 03:05:10 GMT
References: <MCGRANT.92Jul27153440@isl.stanford.edu>
 <MCGRANT.92Jul27162250@isl.stanford.edu> <9207280129.AA23761@watergate.lucid>
Organization: Boston University Computer Science Department
In-Reply-To: eb%watergate@lucid.com's message of 28 Jul 92 01:29:46 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <9207280129.AA23761@watergate.lucid> eb%watergate@lucid.com (Eric Benson) writes:

   However, it turns out that Emacs 18 has this extra special hack to
   make keyboard macros containing exactly one character set last-command
   to the command to which the character is bound.  Lemacs didn't have
   this hack, so I added it.

The test should not be for one-character macros, but instead for macros
that involve one key binding lookup.  In other words, a macro of
"\C-x\C-f" should qualify for special treatment also.

-- 
Joe Wells <jbw@cs.bu.edu>
Member of the League for Programming Freedom --- send e-mail for details

From help-lucid-emacs-request@lucid.com  Sat Aug  1 19:21:58 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA02665; Sat, 1 Aug 92 19:21:58 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA04713g; Sat, 1 Aug 92 19:12:18 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA25803; Sat, 1 Aug 92 22:11:56 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA25796; Sat, 1 Aug 92 22:11:54 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA03868; Sat, 1 Aug 92 22:14:00 -0400
Path: uunet!zaphod.mps.ohio-state.edu!darwin.sura.net!mips!decwrl!bu.edu!nntp-read!jbw
From: jbw@bigbird.bu.edu (Joe Wells)
Newsgroups: alt.lucid-emacs.help
Subject: Re: Opening a window on another display ??
Message-Id: <JBW.92Aug1220708@bigbird.bu.edu>
Date: 2 Aug 92 03:07:08 GMT
References: <9207282022.AA21939@whopper.lcs.mit.edu>
 <9207282039.AA18941@thalidomide.lucid>
Organization: Boston University Computer Science Department
In-Reply-To: jwz@lucid.com's message of 28 Jul 92 20:39:41 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <9207282039.AA18941@thalidomide.lucid> jwz@lucid.com (Jamie Zawinski) writes:

   We also want to be able to have one emacs running on multiple X
   displays and multiple dumb ttys simultaniously.

When you do this, try to allow for Emacs to be running on 0 X displays and
0 dumb ttys.  In other words, allow for Emacs to be "detached".

-- 
Joe Wells <jbw@cs.bu.edu>
Member of the League for Programming Freedom --- send e-mail for details

From help-lucid-emacs-request@lucid.com  Sat Aug  1 19:33:04 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA02669; Sat, 1 Aug 92 19:33:04 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA04733g; Sat, 1 Aug 92 19:23:34 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA26295; Sat, 1 Aug 92 22:33:32 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA26289; Sat, 1 Aug 92 22:33:30 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA04049; Sat, 1 Aug 92 22:35:35 -0400
Path: uunet!cs.utexas.edu!usc!rpi!bu.edu!nntp-read!jbw
From: jbw@bigbird.bu.edu (Joe Wells)
Newsgroups: alt.lucid-emacs.help
Subject: Re: RPC protocols in LEmacs 19
Message-Id: <JBW.92Aug1220959@bigbird.bu.edu>
Date: 2 Aug 92 03:09:59 GMT
References: <29103.9207311604@daiches.cogsci.ed.ac.uk>
Organization: Boston University Computer Science Department
In-Reply-To: rjc@cogsci.edinburgh.ac.uk's message of 31 Jul 92 16:04:19 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <29103.9207311604@daiches.cogsci.ed.ac.uk> rjc@cogsci.edinburgh.ac.uk writes:

   If anyone is looking for a spare time project, a really good lemacs
   server package using the Xauth library for security (so that I can get
   at my lemacs iff I can get at my X server) would be a boon.

I suggest adding MIT-MAGIC-COOKIE support to Andy Norman's `gnuserv'
package.  It already supports using a magic cookie, but neither keeps the
cookie in a secure place nor generates it in a secure manner.

-- 
Joe Wells <jbw@cs.bu.edu>
Member of the League for Programming Freedom --- send e-mail for details

From help-lucid-emacs-request@lucid.com  Sun Aug  2 11:26:16 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA04372; Sun, 2 Aug 92 11:26:16 PDT
Received: by heavens-gate.lucid.com id AA06451g; Sun, 2 Aug 92 11:16:12 PDT
Received: from watergate.lucid ([192.31.212.117]) by heavens-gate.lucid.com id AA06446g; Sun, 2 Aug 92 11:16:02 PDT
Received: by watergate.lucid (4.1/SMI-4.1)
	id AA00422; Sun, 2 Aug 92 11:23:07 PDT
Date: Sun, 2 Aug 92 11:23:07 PDT
From: eb%watergate@lucid.com (Eric Benson)
Message-Id: <9208021823.AA00422@watergate.lucid>
To: jbw@bigbird.bu.edu (Joe Wells)
Cc: help-lucid-emacs@lucid.com
Subject: Re: Change in point movement behavior
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Joe Wells's message of  2-Aug-92 03:05:10 GMT <JBW.92Aug1220510@bigbird.bu.edu>
References: <9207280129.AA23761@watergate.lucid>
	<JBW.92Aug1220510@bigbird.bu.edu>
	<MCGRANT.92Jul27153440@isl.stanford.edu>
	<MCGRANT.92Jul27162250@isl.stanford.edu>
Reply-To: eb@lucid.com

In message <JBW.92Aug1220510@bigbird.bu.edu> Joe Wells wrote:
> The test should not be for one-character macros, but instead for
> macros that involve one key binding lookup.  In other words, a macro
> of "\C-x\C-f" should qualify for special treatment also.

You're absolutely right, but I wasn't trying to create the ideal
solution, but rather just make it compatible with Emacs 18.  The
correct solution is much more difficult.

From help-lucid-emacs-request@lucid.com  Mon Aug  3 08:38:31 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA06317; Mon, 3 Aug 92 08:38:31 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA09031g; Mon, 3 Aug 92 08:24:45 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA11148; Mon, 3 Aug 92 11:34:46 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA11136; Mon, 3 Aug 92 11:34:43 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA12760; Mon, 3 Aug 92 11:34:51 -0400
Path: uunet!mcsun!corton!seti!margaux.inria.fr!murthy
From: murthy%margaux.inria.fr@lucid.com (Chet Murthy)
Newsgroups: alt.lucid-emacs.help
Subject: Zero-width characters in Lemacs?
Message-Id: <4038@seti.UUCP>
Date: 3 Aug 92 14:35:47 GMT
Reply-To: murthy%margaux.inria.fr@lucid.com (Chet Murthy)
Distribution: alt
Organization: INRIA Rocquencourt France
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


The subject line says it all.  I want to make a custom font, with some
characters defined to be of zero width.  The reason is to store hidden
information in the buffer.  Is this possible in Lemacs?

Thanks in advance,
--chet--

From help-lucid-emacs-request@lucid.com  Mon Aug  3 11:32:09 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA07211; Mon, 3 Aug 92 11:32:09 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA09981g; Mon, 3 Aug 92 11:22:23 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA25708; Mon, 3 Aug 92 14:32:06 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA25679; Mon, 3 Aug 92 14:32:01 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA13822; Mon, 3 Aug 92 14:31:59 -0400
Path: uunet!usc!sol.ctr.columbia.edu!The-Star.honeywell.com!umn.edu!noc.msc.net!uc.msc.edu!shamash!bjdunlop
From: bjdunlop@shamash.cdc.com (Bruce Dunlop)
Newsgroups: alt.lucid-emacs.help
Subject: Default font
Message-Id: <45983@shamash.cdc.com>
Date: 3 Aug 92 17:41:33 GMT
Distribution: usa
Organization: Control Data, Arden Hills, MN
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


I would like to have lemacs start up with a larger font and a
correspondingly larger screen.  Can this be done in the .emacs
file?

Jim Dahlberg
jad@verdin.gsd.cdc.com

From help-lucid-emacs-request@lucid.com  Mon Aug  3 14:28:52 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA07989; Mon, 3 Aug 92 14:28:52 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA10679g; Mon, 3 Aug 92 14:19:13 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA08976; Mon, 3 Aug 92 17:28:48 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA08927; Mon, 3 Aug 92 17:28:38 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA15655; Mon, 3 Aug 92 17:28:38 -0400
Path: uunet!sun-barr!sh.wide!wnoc-tyo-news!rena!tdo!newsgate!chdasic.sps.mot.com!jennings
From: jennings@chdasic.sps.mot.com (Tim Jennings)
Newsgroups: alt.lucid-emacs.help
Subject: hiliting
Message-Id: <1992Aug3.203737.2493@newsgate.sps.mot.com>
Date: 3 Aug 92 20:37:37 GMT
Organization: SPS
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I just found out about hiliting in Lemacs.  I would like to know if anyone has written
control code to intelligently hilite only the parens around a function in Lisp.  I am 
writing code in Skill which is very similar to Lisp and would like to control the hiliting
of the let/prog variable field that spans several lines among other things. 

If anyone has a control file for Lisp I would like to see it.
-- 
----------------------
Timothy J. Jennings 			"I Yam What I Yam."
Motorola ASIC Division			--Popeye
email: jennings@chdasic.sps.mot.com

From help-lucid-emacs-request@lucid.com  Mon Aug  3 15:50:56 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA08155; Mon, 3 Aug 92 15:50:56 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA10999g; Mon, 3 Aug 92 15:36:05 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA14878; Mon, 3 Aug 92 18:45:51 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA12264; Mon, 3 Aug 92 18:39:46 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA16574; Mon, 3 Aug 92 18:39:56 -0400
Path: uunet!mcsun!uknet!edcastle!edcogsci!cogsci!rjc
From: rjc@cogsci.ed.ac.uk (Richard Caley)
Newsgroups: alt.lucid-emacs.help
Subject: Re: RPC protocols in LEmacs 19
Message-Id: <RJC.92Aug3174241@daiches.cogsci.ed.ac.uk>
Date: 3 Aug 92 16:42:41 GMT
References: <29103.9207311604@daiches.cogsci.ed.ac.uk>
	<9207311618.AA28473@thalidomide.lucid>
Organization: Human Communication Research Center
In-Reply-To: jwz@lucid.com's message of 31 Jul 92 16:18:40 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <9207311618.AA28473@thalidomide.lucid>, Jamie Zawinski (jz) writes:

jz> Hack something up that works by sending synthetic keypress events
jz> to lemacs.  The variable `x-allow-sendevents' controls whether
jz> they are listened to.  (This is a kludge of the first order, but
jz> so is X.)

Seems easier to hack gnuserv etc. They do all the hard bits already.

--
rjc@cogsci.ed.ac.uk			_O_
					 |<

From help-lucid-emacs-request@lucid.com  Mon Aug  3 15:51:00 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA08156; Mon, 3 Aug 92 15:51:00 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA11000g; Mon, 3 Aug 92 15:36:20 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA15091; Mon, 3 Aug 92 18:46:18 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA12546; Mon, 3 Aug 92 18:40:14 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA16590; Mon, 3 Aug 92 18:40:21 -0400
Path: uunet!mcsun!uknet!edcastle!edcogsci!cogsci!rjc
From: rjc@cogsci.ed.ac.uk (Richard Caley)
Newsgroups: alt.lucid-emacs.help
Subject: Highlight lisp code
Message-Id: <RJC.92Aug3191718@daiches.cogsci.ed.ac.uk>
Date: 3 Aug 92 18:17:18 GMT
Distribution: alt
Organization: Human Communication Research Center
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


Here is a different aproach to highlighting lisp code. It hooks into
the indentation functions of (emacs-)lisp-mode and so will highlight
code as it is typed in, so long as you indent it. It doesn't notice
forms which are entirely on one line though.

highlight-lisp-buffer is something to put into emacs-lisp-mode-hook to
do the highlighting on the entire buffer when you start.

 --- 8< --- 8< --- 8< --- CUT HERE  --- 8< --- 8< --- 8< ---

 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 ;;                                                                  ;;
 ;; Code to make lisp and elisp modes highlight special forms.       ;;
 ;;                                                                  ;;
 ;;                 R.Caley@ed.ac.uk                                 ;;
 ;;                                                                  ;;
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 ;; 
 ;; $Log: highlight-lisp.el,v $
 ;; Revision 1.1  1992/08/03  18:10:10  rjc
 ;; Initial revision
 ;;
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

(put 'defun 'lisp-face 'bold)
(put 'lambda 'lisp-face 'bold)
(put 'progn 'lisp-face 'bold)
(put 'prog1 'lisp-face 'bold)
(put 'prog2 'lisp-face 'bold)
(put 'save-excursion 'lisp-face 'bold)
(put 'save-window-excursion 'lisp-face 'bold)
(put 'save-restriction 'lisp-face 'bold)
(put 'let 'lisp-face 'bold)
(put 'let* 'lisp-face 'bold)
(put 'while 'lisp-face 'bold)
(put 'if 'lisp-face 'bold)
(put 'catch 'lisp-face 'bold)
(put 'condition-case 'lisp-face 'bold)
(put 'unwind-protect 'lisp-face 'bold)
(put 'with-output-to-temp-buffer 'lisp-face 'bold)
(put 'comment 'lisp-face 'italic)

;; the following is a version of lisp-indent-fucntion from
;; lisp-mode.el which looks to see if the form we are indenting
;; is a special form with a face defined as above.

(defun lisp-highlighting-indent-function (indent-point state &optional dont)
  (let ((normal-indent (current-column)))
    (goto-char (1+ (elt state 1)))
    (parse-partial-sexp (point) last-sexp 0 t)
    (if (and (elt state 2)
             (not (looking-at "\\sw\\|\\s_")))
        ;; car of form doesn't seem to be a a symbol
        (progn
          (if (not (> (save-excursion (forward-line 1) (point))
                      last-sexp))
              (progn (goto-char last-sexp)
                     (beginning-of-line)
                     (parse-partial-sexp (point) last-sexp 0 t)))
	  ;; Indent under the list or under the first sexp on the
          ;; same line as last-sexp.  Note that first thing on that
          ;; line has to be complete sexp since we are inside the
          ;; innermost containing sexp.
          (backward-prefix-chars)
          (current-column))
      (let* ((start (point))
	     (end   (progn (forward-sexp 1) (point)))
	     (function (buffer-substring start end))
	     method face)
	(setq method (get (intern-soft function) 'lisp-indent-function))
	(setq face (get (intern-soft function) 'lisp-face))
	(if face
	    (let ((extent (extent-at start)))
	      (if (not (and extent 
			    (eq (extent-start-position extent) start)
			    (eq (extent-end-position extent) end)
			    ))
		  (setq extent (make-extent start end))
		)
	      (set-extent-face extent face)
	      )
	  )
	(if (not dont)
	    (cond ((or (eq method 'defun)
		   (and (null method)
			(> (length function) 3)
			(string-match "\\`def" function)))
	       (lisp-indent-defform state indent-point))
	      ((integerp method)
	       (lisp-indent-specform method state
				     indent-point normal-indent))
	      (method
	       (funcall method state indent-point)))
	  )
	))))


(defun lisp-indent-line (&optional whole-exp)
  "Indent current line as Lisp code.
With argument, indent any additional lines of the same expression
rigidly along with this one."
  (interactive "P")
  (let ((indent (calculate-lisp-indent)) shift-amt beg end
	(pos (- (point-max) (point))))
    (beginning-of-line)
    (setq beg (point))
    (skip-chars-forward " \t")
    (if (looking-at "\\s<\\s<\\s<")
	;; Don't alter indentation of a ;;; comment line.
	nil
      (if (looking-at "\\s<")
	  ;; comment lines should be indented as comment lines
	  (progn (indent-for-comment) (forward-char -1))
	(if (listp indent) (setq indent (car indent)))
	(setq shift-amt (- indent (current-column)))
	(if (zerop shift-amt)
	    nil
	  (delete-region beg (point))
	  (indent-to indent)))
      ;; If initial point was within line's indentation,
      ;; position after the indentation.  Else stay at same point in text.
      (if (> (- (point-max) pos) (point))
	  (goto-char (- (point-max) pos)))
      ;; If desired, shift remaining lines of expression the same amount.
      (and whole-exp (not (zerop shift-amt))
	   (save-excursion
	     (goto-char beg)
	     (forward-sexp 1)
	     (setq end (point))
	     (goto-char beg)
	     (forward-line 1)
	     (setq beg (point))
	     (> end beg))
	   (indent-code-rigidly beg end shift-amt)))))
  

(defun highlight-lisp-buffer ()

  (interactive)

  (message "Highlighting")
  (save-excursion
    (let (line state (last-sexp 0 ))
      (beginning-of-buffer)
      (while (not (eobp))
	(setq line (save-excursion (next-line 1) (beginning-of-line) (point)))
	(setq state (parse-partial-sexp (point) line nil nil state))
	(setq last-sexp (nth 2 state))
	(if (and last-sexp (nth 1 state))
	    (lisp-highlighting-indent-function line state t)
	  )
	)
      )
    )
  (message "... done")
  )


 --- 8< --- 8< --- 8< --- CUT HERE  --- 8< --- 8< --- 8< ---

From help-lucid-emacs-request@lucid.com  Mon Aug  3 21:03:41 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA08731; Mon, 3 Aug 92 21:03:41 PDT
Received: by heavens-gate.lucid.com id AA12329g; Mon, 3 Aug 92 20:50:14 PDT
Received: from clouso.crim.ca by heavens-gate.lucid.com id AA12325g; Mon, 3 Aug 92 20:50:00 PDT
Received: from fatman.crim.ca by clouso.crim.ca (4.1/SMI-4.1)
	id AA27202; Mon, 3 Aug 92 23:59:41 EDT
Received: by fatman.crim.ca (4.1/SMI-4.1)
	id AA03147; Mon, 3 Aug 92 23:59:32 EDT
Date: Mon, 3 Aug 92 23:59:32 EDT
From: paquette%fatman.crim.ca@lucid.com (Marc Paquette)
Message-Id: <9208040359.AA03147@fatman.crim.ca>
To: help-lucid-emacs@lucid.com
Subject: lhilit.el


One thing I wanted lhilit to do since the first time I used it,
is to highlight only subregions from the regular expression that
is given for a specific mode (to highlight only the filename part
of each line in a dired buffer for example).

The patch to lhilit.el at the end of this message does just that:
I've implemented this idea by providing support for selecting
which parenthesized expression from the regular expression should
be affected by the highlighting.  The changes do not introduce
any incompatibility on the format of the hilit::mode-list
variable.

As a pratical example, consider the following mode-list for
dired-mode (note that my variable dired-listing-switches is set
to "-alFg", my ls program is /usr/bin/ls, SunOS 4.1.2, so the
first filename character is at column 56)

(setq dired-mode-hilit
    '(;; regular files
      (".......................................................\\(.*[^/*~]\\)$" 
      nil bold 1)
      ;; directories
      (".......................................................\\(.*/\\)$" 
      nil bold-italic 1)))

So regular files will have their names displayed with the face
bold, and directories with the face bold-italic (provided that
you have created those faces).

Note that the patch given contains the changes posted by
Phillippe Queinnec on Monday July 27th.  

I have also modified further hilit::hilit-buffer to do a quick
rejection on the mode-name so that we don't go through every
defined patterns of every mode when we don't have to.


PS: Lucid Emacs is really great.  Thanks guys.

Marc Paquette
Conseiller Technique, UNIX
Centre de recherche informatique de Montreal (CRIM)
Tel   : (514) 340-5758
Fax   : (514) 340-5777
email : paquette@crim.ca


*** 1.0	1992/07/28 21:42:32
--- lhilit.el	1992/08/04 03:24:52
***************
*** 32,37 ****
--- 32,47 ----
  ;;;  is nil the end of line terminates the region hilited.  (See examples in
  ;;;  the initialization section below).
  ;;;
+ ;;;  An alternate form for hilit::mode-list is also supported
+ ;;;   ("modename" ("pstart" nil face which)
+ ;;;               ("pstart" nil face which)...)
+ ;;; pstart is a regular expression that can contain parenthesized
+ ;;; (grouped) expressions.  which is either a single number, or a list of
+ ;;; numbers.  Highlighting with face will only occur on parenthesized
+ ;;; expressions listed in which.  Note that 0 means the whole expression.
+ ;;; This is usefull for things like highlighting file names in a Dired
+ ;;; buffer. 
+ ;;;
  ;;;  Default key bindings
  ;;;  --------------------
  ;;;  \C-c \C-h    - rehighlight the current buffer
***************
*** 58,68 ****
  ;;;  emacs mode name in order for highlighting to be performed.
  ;;;
  
- ;;------------------------------------------
- ;; Load required Common Lisp extensions.
- ;;------------------------------------------
- (require 'cl)
- 
  (defvar hilit::init-done nil
    "Flag signifying that hilit subsystem has been initialized.")
  
--- 68,73 ----
***************
*** 90,95 ****
--- 95,101 ----
  (defmacro pattern-start (p) (` (nth 0 (, p))))
  (defmacro pattern-end   (p) (` (nth 1 (, p))))
  (defmacro pattern-attr  (p) (` (nth 2 (, p))))
+ (defmacro pattern-which-parenthesized-exp (p) (` (nth 3 (, p))))
  
  ;;------------------------------------------
  ;; Install a new set of mode regexps.
***************
*** 110,142 ****
    "Highlights regions of a buffer specific to the buffer's mode."
    (interactive)
    (if hilit::mode-list
!       (let ((modes hilit::mode-list))
          (while (setq m (car modes))
            (setq mode (car m))
!           (setq patterns (cdr m))
!           (while (setq p (car patterns))
!             (let ((pstart (pattern-start p))
!                   (pend (pattern-end p))
!                   (pattr (pattern-attr p)))
!               (if (string= mode mode-name)
!                   (save-excursion
!                     (goto-char 0)
!                     (if pend
!                         (while (re-search-forward pstart nil t nil)
!                           (setq hilit::buffer-hilited t)
!                           (goto-char (setq start (match-beginning 0)))
!                           (re-search-forward pend nil t nil)
! 			  (set-extent-face
! 			   (make-extent start (match-end 0))
! 			   pattr))
!                       (while (re-search-forward pstart nil t nil)
!                         (setq hilit::buffer-hilited t)
! 			(set-extent-face
! 			 (make-extent (match-beginning 0) (match-end 0))
! 			 pattr)
! 			(goto-char (match-end 0)))
! 		      )))
! 	      (setq patterns (cdr patterns))))
  	  (setq modes (cdr modes))))))
  
  ;;------------------------------------------
--- 116,171 ----
    "Highlights regions of a buffer specific to the buffer's mode."
    (interactive)
    (if hilit::mode-list
!       (let ((modes hilit::mode-list)
! 	    m p patterns mode start)
          (while (setq m (car modes))
            (setq mode (car m))
! 	  (if (string= mode mode-name)
! 	      (progn
! 		(setq patterns (cdr m))
! 		(while (setq p (car patterns))
! 		  (let ((pstart (pattern-start p))
! 			(pend (pattern-end p))
! 			(pattr (pattern-attr p))
! 			(pexp-list (or (pattern-which-parenthesized-exp p)
! 				       0))) ; might not result as a list
! 		    ;; discriminating between pexp's makes sense
! 		    ;; only when there is no pend, IMHO, so don't bother
! 		    ;; with pexp-list unless pend is null.
! 		    ;; --paquette@crim.ca, Mon Aug  3 21:52:29 1992
! 		    (and (null pend)
! 			 (not (listp pexp-list))
! 			 ;; make sure `pexp-list' is indeed a list
! 			 (setq pexp-list (cons pexp-list nil)))
! 		    (save-excursion
! 		      (goto-char 0)
! 		      (if pend
! 			  (while (re-search-forward pstart nil t nil)
! 			    (setq hilit::buffer-hilited t)
! 			    (goto-char (setq start (match-beginning 0)))
! 			    (re-search-forward pend nil t nil)
! 			    (set-extent-face
! 			     (make-extent start (match-end 0))
! 			     pattr))
! 			(while (re-search-forward pstart nil t nil)
! 			  (setq hilit::buffer-hilited t)
! 			  (mapcar
! 			   '(lambda (pexp)
! 			      ;; provide fail-safe operation: if any of the
! 			      ;; numbers in the pexp-list exceed the real
! 			      ;; number of parenthesized expressions, use
! 			      ;; pexp 0, i.e. the whole regexp.
! 			      ;; --paquette@crim.ca, Mon Aug  3 22:51:14 1992
! 			      (let ((start (or (match-beginning pexp)
! 					       (match-beginning 0)))
! 				    (end (or (match-end pexp)
! 					     (match-end 0))))
! 				(set-extent-face (make-extent start end)
! 						 pattr)
! 				(goto-char end)))
! 			   pexp-list))
! 			))
! 		    (setq patterns (cdr patterns))))))
  	  (setq modes (cdr modes))))))
  
  ;;------------------------------------------
***************
*** 225,232 ****
        ;;------------------------------------------
        ;; Install read/write hooks.
        ;;------------------------------------------
!       (push 'hilit::hilit-after-find find-file-hooks)
!       (push 'hilit::unhilit-before-save write-file-hooks)
  
        ;;------------------------------------------
        ;; Create several different-colored faces.
--- 254,263 ----
        ;;------------------------------------------
        ;; Install read/write hooks.
        ;;------------------------------------------
!       (setq find-file-hooks
!             (cons 'hilit::hilit-after-find find-file-hooks))
!       (setq write-file-hooks
!             (cons 'hilit::unhilit-before-save write-file-hooks))
  
        ;;------------------------------------------
        ;; Create several different-colored faces.

From help-lucid-emacs-request@lucid.com  Mon Aug  3 22:32:12 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA08844; Mon, 3 Aug 92 22:32:12 PDT
Received: by heavens-gate.lucid.com id AA12606g; Mon, 3 Aug 92 22:18:54 PDT
Received: from amil.co.il by heavens-gate.lucid.com id AA12602g; Mon, 3 Aug 92 22:18:34 PDT
Received: from ipc8.AMIL ([192.86.90.18]) by amil.co.il (4.1/AMIL-M2)
	id AA18463; Tue, 4 Aug 92 08:26:53 IDT
Date: Tue, 4 Aug 92 08:26:53 IDT
From: danny@amil.co.il (Danny Bar-Dov)
Message-Id: <9208040526.AA18463@amil.co.il>
Received: by ipc8.AMIL (4.1/SMI-4.1)
	id AA20914; Tue, 4 Aug 92 08:26:49 IDT
To: help-lucid-emacs@lucid.com
Subject: Hiliting in monochrom

Has anybody figured out a reasonable set of faces to
use lhilit.el on a monochrome display ?

Danny.

--

---------------------
Dan Bar Dov

Applied Materials (Israel)

Email:        danny@amil.co.il
Phone: office 972-3-499573
       home   972-3-5469625
TimeZone:     GMT+2

From help-lucid-emacs-request@lucid.com  Tue Aug  4 04:01:27 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA10024; Tue, 4 Aug 92 04:01:27 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA13443g; Tue, 4 Aug 92 03:48:56 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA12852; Tue, 4 Aug 92 06:58:58 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA12846; Tue, 4 Aug 92 06:58:56 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA24729; Tue, 4 Aug 92 06:59:10 -0400
Path: uunet!mcsun!corton!loria!news.loria.fr!bosch
From: bosch%loria.fr@lucid.com (Guido Bosch)
Newsgroups: alt.lucid-emacs.help
Subject: #<destroyed extent>
Message-Id: <BOSCH.92Aug4123959@moebius.loria.fr>
Date: 4 Aug 92 10:39:59 GMT
Reply-To: Guido BOSCH <bosch%loria.fr@lucid.com>
Distribution: alt
Organization: INRIA-Lorraine / CRIN, Nancy, France
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Is there a function that verifies if an extent has been removed?
`extentp' cannot be used for that: 

-------------------- *scratch* --------------------

(setq ext (make-extent 1 (point)))
#<extent [1, 35) (flags=0x0) in buffer *scratch*>

(extentp ext)
t

(delete-extent ext)
nil
ext
#<destroyed extent>
(extentp ext)
t
----------------------------------------------------

--
Guido BOSCH, INRIA-Lorraine/CRIN
Institut National de Recherche en Informatique et en Automatique (INRIA)
Centre de Recherche en Informatique de Nancy (CRIN)
Campus scientifique, B.P. 239            
54506 Vandoeuvre-les-Nancy CEDEX       	
Tel.: (+33) 83.91.24.24
Fax.: (+33) 83.41.30.79                	
email: bosch@loria.fr             	

From help-lucid-emacs-request@lucid.com  Tue Aug  4 05:20:25 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA10150; Tue, 4 Aug 92 05:20:25 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA13672g; Tue, 4 Aug 92 05:07:48 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA15852; Tue, 4 Aug 92 08:17:51 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA15845; Tue, 4 Aug 92 08:17:48 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA25431; Tue, 4 Aug 92 08:18:05 -0400
Path: uunet!mcsun!corton!sophia!bagheera.inria.fr!colas
From: colas%bagheera.inria.fr@lucid.com (Colas Nahaboo)
Newsgroups: alt.lucid-emacs.help
Subject: Re: RPC protocols in LEmacs 19
Message-Id: <26192@sophia.inria.fr>
Date: 4 Aug 92 11:53:10 GMT
References: <26013@sophia.inria.fr> <9207311559.AA18626@scylla.lucid>
Organization: Koala Project, Bull Research France
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <9207311559.AA18626@scylla.lucid>, devin%scylla@lucid.com (Matthieu
Devin) writes:
|> > in the same vein, having a way to send commands to lemacs via an x
|> property
|> > (just like the EPOCH_EXECUTE property of epoch) would be VERY nice, and
|> > trivial to implement...
|> Wouldn't it be better to revive the old emacs_server thing that was with an
|> older emacs18 version?  

we did this for epoch (modified the emacsclient code to work from different
hosts), but we still found both approaches useful in different ways:
(we made them add later the EPOCH_EXECUTE stuff)

1) emacs client is great for replacing an editor in another command (xrn)

... lets call this providing an editing service

2) sending X properties is natural when you want to communicate with a precise
emacs buffer on the screen: for instance menus and scrollbars are much more
natural to implement this way (and you don't have problems with conflicting
keybindings as with the send-keys-to-window hack... which is not so simple to
do properly BTW with all keymapping that can happen)
The advantage there is that the emacs screen on which you put the properties is
"the one" to deal with...

... lets call this remote controlling emacs

-- 
Colas Nahaboo, colas@sa.inria.fr, Bull Research Koala proj. Wool&Gwm Architect
Pho:(33) 93.65.77.70(.66 Fax), INRIA, B.P.93 - 06902 Sophia Antipolis, FRANCE.

From help-lucid-emacs-request@lucid.com  Tue Aug  4 05:20:53 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA10155; Tue, 4 Aug 92 05:20:53 PDT
Received: by heavens-gate.lucid.com id AA13692g; Tue, 4 Aug 92 05:11:17 PDT
Received: from bietel.uia.ac.be by heavens-gate.lucid.com id AA13687g; Tue, 4 Aug 92 05:10:48 PDT
Received: by bietel.uia.ac.be (5.4.1/5.40/1.0)
	id AA19318; Tue, 4 Aug 1992 14:19:02 +0200
Date: Tue, 4 Aug 1992 14:19:02 +0200
From: makke%bietel.uia.ac.be@lucid.com (Marc Gemis)
Message-Id: <9208041219.AA19318@bietel.uia.ac.be>
To: dg-users@ilinx.wimsey.bc.ca, help-lucid-emacs@lucid.com
Subject: lucid emacs 19.2

We have DG AViiON 200 and 300 computers (m88k) with DG/UX 5.4.1.

Has someone installed lucid emacs 19.2 on a similar system ?

My problem is that each time temacs wants to dump xemacs it gives the error: 

>> emacs: Couldn't find segment next to .bss in /usr/local/emacs19/src/temacs

Since we have DG/UX 5.4.1. I use unexelf.c to make the dump.

Any suggestions ?



--------------------------------------------------------------------------
Marc Gemis                                   Tel: + 32 (3) 820.24.18
University of Antwerp (UIA)                  Fax: + 32 (3) 820.22.44
Dept. Math. and Comp. Science                Telex 33.646
Universiteitsplein 1                         Email: gemis@bietel.uia.ac.be
B-2610 Wilrijk - Antwerpen
BELGIUM
                A dog is for life... not just for Christmas
--------------------------------------------------------------------------


From help-lucid-emacs-request@lucid.com  Tue Aug  4 09:01:56 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA10824; Tue, 4 Aug 92 09:01:56 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA14315g; Tue, 4 Aug 92 08:51:10 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA05887; Tue, 4 Aug 92 12:01:08 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA05867; Tue, 4 Aug 92 12:01:00 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA27232; Tue, 4 Aug 92 12:01:19 -0400
Path: uunet!mcsun!corton!sophia!rhea.inria.fr!beust
From: beust%rhea.inria.fr@lucid.com (Cedric Beust)
Newsgroups: alt.lucid-emacs.help
Subject: Re: Hiliting in monochrom
Message-Id: <26228@sophia.inria.fr>
Date: 4 Aug 92 15:33:04 GMT
References: <9208040526.AA18463@amil.co.il>
Organization: University of Nice Sophia-Antipolis, France
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <9208040526.AA18463@amil.co.il>, danny@amil.co.il (Danny Bar-Dov) writes:
>Has anybody figured out a reasonable set of faces to
>use lhilit.el on a monochrome display ?

	I installed the following little patch for this, including the
	default preferences for monochrome displays (sorry, I don't
	know where I put the original so I can't provide a patch file) :

(function create-face-if-needed)
...
  (if (x-color-display-p)
      (set-face-foreground name-of-face fg)
      (set-face-font name-of-face fg)))
...
      (if (x-color-display-p)
	  (progn
	    (create-face-if-needed 'hilit0 "brown")
	    (create-face-if-needed 'hilit1 "yellow")
	    (create-face-if-needed 'hilit2 "blue")
	    (create-face-if-needed 'hilit3 "white")

	    (create-face-if-needed 'hilit4 "royalblue")
	    (create-face-if-needed 'hilit7 "darkgoldenrod")
	    (create-face-if-needed 'hilit6 "firebrick")
	    (create-face-if-needed 'hilit5 "darkorange")
	    (create-face-if-needed 'hilit8 "deeppink")
	    (create-face-if-needed 'hilit9 "forestgreen")
	    )
	  (create-face-if-needed 'hilit0 "7x14")
          (create-face-if-needed 'hilit1 "-adobe-courier-bold-r-normal--14-100-100-100-m-90-iso8859-1")
          (create-face-if-needed 'hilit2 "Cour.b.14")
          (create-face-if-needed 'hilit3 "Cour.b.14")
          (create-face-if-needed 'hilit4 "serif.r.14")
          (create-face-if-needed 'hilit7 "Cour.b.14")
          (create-face-if-needed 'hilit6 "Cour.b.14")
          (create-face-if-needed 'hilit5 "serif.r.14")
          (create-face-if-needed 'hilit8 "Cour.b.14")
          (create-face-if-needed 'hilit9 "Cour.b.14"))
	  

--
Cedric BEUST, beust@sa.inria.fr, Bull Research Koala proj, KoalaBus & xforum
Pho:(33) 93.65.77.70(.66 Fax), INRIA, B.P.93 - 06902 Sophia Antipolis, FRANCE.

From help-lucid-emacs-request@lucid.com  Tue Aug  4 16:09:45 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA11916; Tue, 4 Aug 92 16:09:45 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA16223g; Tue, 4 Aug 92 15:59:45 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA11907; Tue, 4 Aug 92 19:09:43 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA11901; Tue, 4 Aug 92 19:09:42 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA01853; Tue, 4 Aug 92 19:10:00 -0400
Path: uunet!mcsun!corton!loria!news.loria.fr!bosch
From: bosch%loria.fr@lucid.com (Guido Bosch)
Newsgroups: alt.lucid-emacs.help
Subject: Re: Hiliting in monochrom
Message-Id: <BOSCH.92Aug4214036@moebius.loria.fr>
Date: 4 Aug 92 19:40:36 GMT
References: <9208040526.AA18463@amil.co.il> <26228@sophia.inria.fr>
Organization: INRIA-Lorraine / CRIN, Nancy, France
In-Reply-To: beust@rhea.inria.fr's message of 4 Aug 92 15:33:04 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I applied your patch by hand and modified it, because the font
specifications you gave seem to be verry special for your installation
and didn't work for me.

In order to avoid all installation dependencies I got the fonts from
the three predefined faces `bold', `italic' and `bold-italic'. Halas,
there are only four different standard faces available (the above one
+ `default').


Here is a diff -c that can  be applied by the patch program.

------------------------------ cut here ------------------------------
*** lhilit.el.orig	Tue Aug  4 21:22:27 1992
--- lhilit.el	Tue Aug  4 21:35:44 1992
***************
*** 216,224 ****
  face foreground color is set to color FG."
    (if (not (assoc name-of-face global-face-data))
        (make-face name-of-face))
!   (set-face-foreground name-of-face fg))
  
- 
  (if (not hilit::init-done)
      (progn
        (setq hilit::init-done t)
--- 216,225 ----
  face foreground color is set to color FG."
    (if (not (assoc name-of-face global-face-data))
        (make-face name-of-face))
!   (if (x-color-display-p)
!       (set-face-foreground name-of-face fg)
!       (set-face-font name-of-face fg)))
  
  (if (not hilit::init-done)
      (progn
        (setq hilit::init-done t)
***************
*** 232,248 ****
        ;;------------------------------------------
        ;; Create several different-colored faces.
        ;;------------------------------------------
-       (create-face-if-needed 'hilit0 "red")
-       (create-face-if-needed 'hilit1 "magenta")
-       (create-face-if-needed 'hilit2 "blue")
-       (create-face-if-needed 'hilit3 "purple")
-       (create-face-if-needed 'hilit4 "royalblue")
-       (create-face-if-needed 'hilit5 "darkgoldenrod")
-       (create-face-if-needed 'hilit6 "firebrick")
-       (create-face-if-needed 'hilit7 "darkorange")
-       (create-face-if-needed 'hilit8 "deeppink")
-       (create-face-if-needed 'hilit9 "forestgreen")
  
        ;;------------------------------------------
        ;; Mode definitions.
        ;;------------------------------------------
--- 233,265 ----
        ;;------------------------------------------
        ;; Create several different-colored faces.
        ;;------------------------------------------
  
+       (if (x-color-display-p)
+ 	  (progn
+ 	    (create-face-if-needed 'hilit0 "red")
+ 	    (create-face-if-needed 'hilit1 "magenta")
+ 	    (create-face-if-needed 'hilit2 "blue")
+ 	    (create-face-if-needed 'hilit3 "purple")
+ 	    (create-face-if-needed 'hilit4 "royalblue")
+ 	    (create-face-if-needed 'hilit5 "darkgoldenrod")
+ 	    (create-face-if-needed 'hilit6 "firebrick")
+ 	    (create-face-if-needed 'hilit7 "darkorange")
+ 	    (create-face-if-needed 'hilit8 "deeppink")
+ 	    (create-face-if-needed 'hilit9 "forestgreen"))
+ 	  (let ((bold 		(face-font (find-face 'bold)))
+ 		(italic 	(face-font (find-face 'italic)))
+ 		(bold-italic 	(face-font (find-face 'bold-italic))))
+ 	  (create-face-if-needed 'hilit0 italic)
+           (create-face-if-needed 'hilit1 bold)
+           (create-face-if-needed 'hilit2 bold)
+           (create-face-if-needed 'hilit3 bold)
+           (create-face-if-needed 'hilit4 bold)
+           (create-face-if-needed 'hilit7 bold)
+           (create-face-if-needed 'hilit6 bold)
+           (create-face-if-needed 'hilit5 bold)
+           (create-face-if-needed 'hilit8 bold)
+           (create-face-if-needed 'hilit9 bold-italic)))
+ 
        ;;------------------------------------------
        ;; Mode definitions.
        ;;------------------------------------------
***************
*** 297,304 ****
        (hilit::mode-list-update "Makefile" makefile-mode-hilit)
  
        (setq emacs-lisp-mode-hilit
! 	    '(("^;.*" nil hilit0)
! 	      (";;.*" nil hilit0)
  	      ("\(defun.*" nil hilit2)
  	      ("\(defmacro.*" nil hilit7)
  	      ("\(defvar.*" nil hilit1)
--- 314,320 ----
        (hilit::mode-list-update "Makefile" makefile-mode-hilit)
  
        (setq emacs-lisp-mode-hilit
! 	    '((";.*$" nil hilit0)
  	      ("\(defun.*" nil hilit2)
  	      ("\(defmacro.*" nil hilit7)
  	      ("\(defvar.*" nil hilit1)
------------------------------ cut here ------------------------------
--
Guido BOSCH, INRIA-Lorraine/CRIN
Institut National de Recherche en Informatique et en Automatique (INRIA)
Centre de Recherche en Informatique de Nancy (CRIN)
Campus scientifique, B.P. 239            
54506 Vandoeuvre-les-Nancy CEDEX       	
Tel.: (+33) 83.91.24.24
Fax.: (+33) 83.41.30.79                	
email: bosch@loria.fr             	

From help-lucid-emacs-request@lucid.com  Tue Aug  4 21:05:32 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA12592; Tue, 4 Aug 92 21:05:32 PDT
Received: by heavens-gate.lucid.com id AA17206g; Tue, 4 Aug 92 20:52:39 PDT
Received: from lynx (lynx.csis.dit.csiro.au) by heavens-gate.lucid.com id AA17202g; Tue, 4 Aug 92 20:52:23 PDT
Received: from argo.csis.dit.csiro.au by lynx (4.1/1.0)
	id AA20708; Wed, 5 Aug 92 14:02:21 EST
Received: by argo.csis.dit.csiro.au (4.1/1.0)
	id AA06924; Wed, 5 Aug 92 14:02:20 EST
Date: Wed, 5 Aug 92 14:02:20 EST
From: stuarth%csis.dit.csiro.au@lucid.com
Message-Id: <9208050402.AA06924@argo.csis.dit.csiro.au>
Apparently-To: help-lucid-emacs@lucid.com

Can anybody offer me any suggestions/hints/advice for these Lucid emacs problems
I'm having and things I'd like to do:


Problem 1:

I'm trying to replace the standard menubar using the function set-screen-menubar
and the following menu definition:

(defconst my-menubar
    '(
        ("File"
            ["Open..."               find-file                        t]
            ["Save"                  save-buffer                      t]
            ["Save as..."            write-file                       t]
            ["Save all"              save-all-buffers                 t] 
            ["Revert"                revert-buffer                    t]
            ["Close"                 kill-buffer                      t]
            "-----"
            ["Print"                 lpr-buffer                       t]
            ["Print region"          print-region                     t]
            "-----"
            ["Edit .emacs"           load-dot-emacs                   t]
            ["Edit .cshrc"           load-dot-cshrc                   t]
            ["Edit .setenvs"         load-dot-setenvs                 t]
            ["Edit .aliases"         load-dot-aliases                 t]
            ["Edit .Xdefaults"       load-dot-xdefs                   t]
            ["Edit .login"           load-dot-login                   t]
            "-----"
            ["Exit"                  save-buffers-kill-emacs          t]
        )


(set-screen-menubar my-menubar)

This causes the menubar to be updated but when I try to make a selection the
entire menubar dissapears without any error message.  Has anybody successfully
replaced the menubar in their .emacs, and if so what advice can you offer?


Problem 2:

I'm using the compile function to build C++ programs and when I do a next-error
to visit errors emacs will sometimes load the relevant file, even though it's
already loaded!  If you're not paying close attention and miss the <2> on the
buffer name it can cause all sorts of hassles.  I can't seem to predict when
this will happen and when it will work "normally".


Problem 3:

When using dired (with the SunOS binary of 19.2) linked directories are treated
differently to "normal" directories when doing a dired-advertised-find-file.
A normal subdirectory is opened in dired mode but a linked directory is 
treated as a file.  My dired listing switches are "-aFS".


Problem 4:

I have a whole bunch of functions that look like this:

(defun make-some-program ()
   "Make some program."
    (interactive)
    (cd "/foo/bar/prog1")
    (set-buffer (get-buffer-create "*compilation*"))
    (delete-other-windows)
    (compile compile-command)
)

each of them does a "cd" to a different directory and runs compile.  Sometimes
though the function cd's to the *wrong* directory before running compile.  
I can't seem to predict when this will happen and when it will cd to the
directory encoded in the function.


Question 1:

It would be really neat to be able to use lhilit in dired, compilation and
other modes.  The trick seems to be to find the correct "hook" to call the
lhilit stuff for each mode.  Is there some general principle I can follow to
find the correct hook or does it differ widely from mode to mode?


Question 2:

One thing I've been wanting to do is create a single emacs screen which will
receive all compilation output, another one which will take only help output and
so on.  Is it possible to create "dedicated" screens in this way?


Question 3:

Anybody out there using the c++ mode?  How can I stop the electric colon
from breaking constructs like:

    Foo::Bar() 

over several lines, while still allowing:

   class Foo
   {
   public:
        Bar();


In fact, is there a better c++ mode out there somewhere?


Any advice much appreciated...


Stu

/-----------------------------------------------------------------------------\
| Stuart Hungerford | Internet : stuarth@csis.dit.csiro.au                    |
| CSIRO DIT         | Voice    : +61-6-2750941                                |
| Australia         | Fax      : +61-6-2571052                                |
\-----------------------------------------------------------------------------/
  "Being a 7 foot robot means never having to say you're sorry" --
   REX-1 to Teenage Mutant Ninja Turtles

From help-lucid-emacs-request@lucid.com  Wed Aug  5 00:56:21 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA13124; Wed, 5 Aug 92 00:56:21 PDT
Received: by heavens-gate.lucid.com id AA17738g; Wed, 5 Aug 92 00:42:18 PDT
Received: from amil.co.il by heavens-gate.lucid.com id AA17729g; Wed, 5 Aug 92 00:41:42 PDT
Received: from ipc8.AMIL ([192.86.90.18]) by amil.co.il (4.1/AMIL-M2)
	id AA14527; Wed, 5 Aug 92 10:49:10 IDT
Date: Wed, 5 Aug 92 10:49:10 IDT
From: danny@amil.co.il (Danny Bar-Dov)
Message-Id: <9208050749.AA14527@amil.co.il>
Received: by ipc8.AMIL (4.1/SMI-4.1)
	id AA24414; Wed, 5 Aug 92 10:48:56 IDT
To: help-lucid-emacs@lucid.com
Subject: reading changed files

We use RCS for version control.

Does anybody know if there is a variable that answers "yes"
to the frequent question
"File XXX changed on disk, read the new file (yes or no) ?"

Is there some lisp code which supports RCS ? maybe some
dired mode which shows locked/unlocked files and allows
to perform rcs operatpions ?

Thanks
Danny.

--

---------------------
Dan Bar Dov

Applied Materials (Israel)

Email:        danny@amil.co.il
Phone: office 972-3-499573
       home   972-3-5469625
TimeZone:     GMT+2

From help-lucid-emacs-request@lucid.com  Wed Aug  5 05:01:18 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA14178; Wed, 5 Aug 92 05:01:18 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA18204g; Wed, 5 Aug 92 04:48:31 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA24282; Wed, 5 Aug 92 07:58:34 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA24270; Wed, 5 Aug 92 07:58:31 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA08693; Wed, 5 Aug 92 07:58:54 -0400
Path: uunet!mcsun!corton!loria!news.loria.fr!bosch
From: bosch%loria.fr@lucid.com (Guido Bosch)
Newsgroups: alt.lucid-emacs.help
Subject: mode-motion package
Message-Id: <BOSCH.92Aug5135209@moebius.loria.fr>
Date: 5 Aug 92 11:52:09 GMT
Distribution: alt
Organization: INRIA-Lorraine / CRIN, Nancy, France
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Hi,

Here is a new version of my mode-motion package for Lucid Emacs. It
allows mouse motion handling on a per mode or even a per buffer basis.

To install it, uudecode and uncompress the message body. 

The tar file contains 8 files: 

rw-r--r--167/27   9735 Aug  5 13:08 1992 mode-motion/mode-motion-handlers.el
r--r--r--167/27   3175 Aug  5 13:22 1992 mode-motion/mode-motion-install.el
r--r--r--167/27   2457 Aug  5 13:18 1992 mode-motion/mode-motion.el
r--r--r--167/27   4088 Jul  3 11:06 1992 mode-motion/thing.el
rw-r--r--167/27   5326 Aug  5 13:22 1992 mode-motion/mode-motion-handlers.elc
rw-r--r--167/27   1467 Aug  5 13:22 1992 mode-motion/mode-motion-install.elc
rw-r--r--167/27   1418 Aug  5 13:23 1992 mode-motion/mode-motion.elc
rw-r--r--167/27   3193 Aug  5 13:23 1992 mode-motion/thing.elc

Put the mode-motion directory in the lisp directory of Lucid Emacs. 

Start lemacs and load the file mode-motion-install

	(load-library "mode-motion-install")

Then visit a lisp file an see what happens when you move around with the
mouse. Use `Meta button2' to copy a highlighted region to the point
(verry fancy for programming). 

See the file "mode-motion-install.el" for how to custommize other
modes. 

Known bug: uncompatible with the lhilit package. See the file
"mode-motion-handlers.el" for an explication of the problem (any help
would be apreciated). 


Comments, remarks, bug fixes etc. are welcome. 

	Guido

-------------------- cut here --------------------
begin 644 mode-motion.tar.Z
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
L'O4N.HMI(UNH]%$U9DJ&F#*YG>9AW-B[S8V\C^:9BWJ= TSGN3=BF6HFU 9C
 
end
-------------------- end --------------------



--
Guido BOSCH, INRIA-Lorraine/CRIN
Institut National de Recherche en Informatique et en Automatique (INRIA)
Centre de Recherche en Informatique de Nancy (CRIN)
Campus scientifique, B.P. 239            
54506 Vandoeuvre-les-Nancy CEDEX       	
Tel.: (+33) 83.91.24.24
Fax.: (+33) 83.41.30.79                	
email: bosch@loria.fr             	

From help-lucid-emacs-request@lucid.com  Wed Aug  5 05:01:46 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA14188; Wed, 5 Aug 92 05:01:46 PDT
Received: by heavens-gate.lucid.com id AA18215g; Wed, 5 Aug 92 04:52:00 PDT
Received: from amil.co.il by heavens-gate.lucid.com id AA18210g; Wed, 5 Aug 92 04:51:25 PDT
Received: from ipc8.AMIL ([192.86.90.18]) by amil.co.il (4.1/AMIL-M2)
	id AA18022; Wed, 5 Aug 92 14:59:34 IDT
Date: Wed, 5 Aug 92 14:59:34 IDT
From: danny@amil.co.il (Danny Bar-Dov)
Message-Id: <9208051159.AA18022@amil.co.il>
Received: by ipc8.AMIL (4.1/SMI-4.1)
	id AA24760; Wed, 5 Aug 92 14:59:28 IDT
To: bosch%loria.fr@lucid.com (Guido Bosch)
Cc: help-lucid-emacs@lucid.com
Subject: Re: Hiliting in monochrom
Newsgroups: alt.lucid-emacs.help
In-Reply-To: <BOSCH.92Aug4214036@moebius.loria.fr>
References: <26228@sophia.inria.fr>
	<9208040526.AA18463@amil.co.il>
	<BOSCH.92Aug4214036@moebius.loria.fr>

Thanks for the patch for lhilit on monochrome.
It is very helpful but this is not exactly what I meant.
(I did the same by setting the hilitN faces' fonts).

What I'm looking for is a set of fonts in
different shapes/sizes/slant etc for setting
these hilit faces. I need a reasonable set
I could give all the local users as a nice starting
point.
The patch Guido Bosch sent has most of the faces set to bold.
I'm asking for bells & whistles on monochrome.

(Isn't it too much to ask ? How nice I have color :-)

Danny.

--

---------------------
Dan Bar Dov

Applied Materials (Israel)

Email:        danny@amil.co.il
Phone: office 972-3-499573
       home   972-3-5469625
TimeZone:     GMT+2

From help-lucid-emacs-request@lucid.com  Wed Aug  5 05:27:53 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA14252; Wed, 5 Aug 92 05:27:53 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA18263g; Wed, 5 Aug 92 05:18:15 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA25350; Wed, 5 Aug 92 08:28:20 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA25344; Wed, 5 Aug 92 08:28:19 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA08992; Wed, 5 Aug 92 08:28:47 -0400
Path: uunet!decwrl!bu.edu!transfer!sw.stratus.com!wayne
From: wayne@sw.stratus.com (Wayne Newberry)
Newsgroups: alt.lucid-emacs.help
Subject: Sun Function Key Bindings for Lucid Emacs
Message-Id: <5369@transfer.stratus.com>
Date: 5 Aug 92 12:00:06 GMT
Organization: Stratus Computer, Inc.
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

This may be a FAQ, but I've been unable to find the answer
anywhere.  I've just installed Lucid, having been on GNU
emacs 18.55.2, and I'm trying to find out how Lucid refers
to function keys in the .emacs startup file.  I have a set
of keybindings that work fine for GNU Emacs, and those same
bindings are recognized by Lucid.  They show up when you do
a "Help" followed by a "List Keybindings".  However, instead
of being bound to the function keys, they are tied to the
character sequences associated with those keys.

Example: In my .emacs file, I bind function key F1 to the
         emacs command execute-extended-command by using
         the following:

(define-key esc-map "[11~" 'execute-extended-command)

When Lucid Emacs starts, it reads the .emacs file, and when
I ask what the current key bindings are it says that the 
command execute-extended-command is bound to the character
sequence  M-[-1-1-~ (this is the character sequence generated
by F1 on my Sun/SLC).  It also says that f1 (Lucid's way of
referring to that function key) is undefined.  By the way,
I've tried to use f1 as the name of the key in the .emacs
file, but I was unsuccessful.

I have drawn the conclusion that there is some naming con-
vention which Lucid uses and I simply don't know what it is.
The other thought I've had is that there is some key-map in
which the function keys are defined, and I'm unaware of it.

Based on this, it seems that this should be an easily-solved
problem.  I sure hope there isn't a document laying around 
somewhere that has this info in it.  I don't look good in
"egg-on-face".

Thanks in advance for any help anyone can provide.

Wayne

From help-lucid-emacs-request@lucid.com  Wed Aug  5 06:19:22 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA14384; Wed, 5 Aug 92 06:19:22 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA18376g; Wed, 5 Aug 92 06:06:55 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA28056; Wed, 5 Aug 92 09:16:52 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA28050; Wed, 5 Aug 92 09:16:50 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA09344; Wed, 5 Aug 92 09:17:19 -0400
Path: uunet!mcsun!corton!sophia!rhea.inria.fr!beust
From: beust%rhea.inria.fr@lucid.com (Cedric Beust)
Newsgroups: alt.lucid-emacs.help
Subject: Help with "exited abnormally"
Message-Id: <26304@sophia.inria.fr>
Date: 5 Aug 92 12:55:38 GMT
Organization: University of Nice Sophia-Antipolis, France
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


	This is probably more a general emacs question than a lucid one.
	Since a few days, I can't seem to be able to use grep, compile
	or gdb on lemacs 19.2. I'm invariably replied :


grep exited abnormally with code 1 at Wed Aug  5 14:49:11

	or

Compilation exited abnormally with code 1 at Wed Aug  5 14:52:36

	Any ideas?


--
Cedric BEUST, beust@sa.inria.fr, Bull Research Koala proj, KoalaBus & xforum
Pho:(33) 93.65.77.70(.66 Fax), INRIA, B.P.93 - 06902 Sophia Antipolis, FRANCE.

From me@Sunburn.Stanford.EDU  Wed Aug  5 18:13:29 1992
Received: from Sunburn.Stanford.EDU by labrea.Stanford.EDU (4.1/1.34)
	id AA18963; Wed, 5 Aug 92 18:13:29 PDT
Received:  by Sunburn.Stanford.EDU (5.61+IDA/25-eef) id AA21538; Wed, 5 Aug 92 18:12:31 -0700
To: help-lucid-emacs-archive@labrea.Stanford.EDU
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA18645; Wed, 5 Aug 92 16:14:02 PDT
Received: by heavens-gate.lucid.com id AA20606g; Wed, 5 Aug 92 16:04:09 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA20587g; Wed, 5 Aug 92 16:01:33 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA01501; Wed, 5 Aug 92 16:10:16 PDT
Date: Wed, 5 Aug 92 16:10:16 PDT
Message-Id: <9208052310.AA01501@thalidomide.lucid>
X-Windows: Putting new limits on productivity.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
Xto: rjc@cogsci.ed.ac.uk (Richard Caley)
Xcc: help-lucid-emacs@lucid.com
Subject: Re: Hiliting in monochrom
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Richard Caley's message of  5-Aug-92 21:28:48 GMT <RJC.92Aug5222848@daiches.cogsci.ed.ac.uk>
References: <26228@sophia.inria.fr>
	<9208040526.AA18463@amil.co.il>
	<9208051159.AA18022@amil.co.il>
	<BOSCH.92Aug4214036@moebius.loria.fr>
	<RJC.92Aug5222848@daiches.cogsci.ed.ac.uk>


> I wasthinking of producing a stippled out font so that some extents
> could be faded out.

It wouldn't be too hard to add another face attribute which was the
foreground stipple.

	-- Jamie

------- End of forwarded message -------


From help-lucid-emacs-request@lucid.com  Thu Aug  6 01:32:13 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA19665; Thu, 6 Aug 92 01:32:13 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA22128g; Thu, 6 Aug 92 01:18:20 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA16047; Thu, 6 Aug 92 04:28:25 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA16038; Thu, 6 Aug 92 04:28:21 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA28240; Thu, 6 Aug 92 04:28:44 -0400
Path: uunet!mcsun!corton!loria!news.loria.fr!bosch
From: bosch%loria.fr@lucid.com (Guido Bosch)
Newsgroups: alt.lucid-emacs.help
Subject: Re: reading changed files
Message-Id: <BOSCH.92Aug6101637@moebius.loria.fr>
Date: 6 Aug 92 08:16:37 GMT
References: <9208050749.AA14527@amil.co.il>
Organization: INRIA-Lorraine / CRIN, Nancy, France
In-Reply-To: danny@amil.co.il's message of 5 Aug 92 13:11:01 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <9208050749.AA14527@amil.co.il> danny@amil.co.il (Danny Bar-Dov) writes:
 >
 >
 >   We use RCS for version control.
 >
 >   ... 
 >
 >   Is there some lisp code which supports RCS ? maybe some
 >   dired mode which shows locked/unlocked files and allows
 >   to perform rcs operatpions ?
 >


There are a lot of rcs-modes for GNU Emacs out there (too many, after
my opinion). I played around with most of them and found the one of
Sebastian Kremer most satisfactory for my needs (not to big, the command
key bindings are not interferring with other modes)


Here is it, together with the corresponding part of my .emacs and an
rcs-log-mode package extracted from Edward V. Simpson's rcs.el. 

Enjoy,

	Guido



------------------------------- .emacs -------------------------------
;; RCS 
;; author: Sebastian Kremer 

;; This makes load up rcs at the first file access. A better solution
;; would be to seperate the postprocessor stuff from the rest of
;; rcs.el.  In this case, rcs-postprocessor.el should define autoloads
;; for rcs commands.

(autoload 'rcs-load-postprocessor "rcs" nil t)
(add-hook 'find-file-hooks  'rcs-load-postprocessor)

;; use my own rcs log stuff
(setq rcs-read-log-function 'rcs-get-log-string)
(autoload 'rcs-get-log-string "rcs-log-mode")
(setq rcsdiff-switches '("-c")))

;; end RCS

----------------------------- rcs-sk.el -----------------------------
;;;; rcs.el - RCS interface for GNU Emacs.

;; Originally written by James J. Elliott <elliott@cs.wisc.edu>
;; Rewritten by Sebastian Kremer <sk@thp.uni-koeln.de>.

;; Copyright (C) 1990 James J. Elliott
;; Copyright (C) 1991 Sebastian Kremer

;; This program is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation; either version 1, or (at your option)
;; any later version.
;;
;; This program is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
;; GNU General Public License for more details.
;;
;; You should have received a copy of the GNU General Public License
;; along with this program; if not, write to the Free Software
;; Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

;; LISPDIR ENTRY for the Elisp Archive ===============================
;;    LCD Archive Entry:
;;    rcs|Sebastian Kremer|sk@thp.uni-koeln.de
;;    |RCS interface for GNU Emacs
;;    |$Date: 1992/02/10 10:29:26 $|$Revision: 1.55 $|

;; INSTALLATION ======================================================
;;
;; Put this file into your load-path and the following in your ~/.emacs:
;;
;;   (load "rcs")

;; USAGE =============================================================

;; C-x C-q to make an RCS-controlled file writable by checking it out locked
;; C-c I   * check in
;; C-c O   * check out without locking, C-u C-c O checkout locked
;; C-c U   unlock (revert to last checked-in version, flushing changes)
;; C-c D   * rcsdiff
;; C-c L   * rlog
;; C-c S   * show or set rcs status
;; C-c W   rcswho (list of lockers of all files in a directory)
;;
;; C-x C-f on a non-existent working file will offer to check it out from RCS

;; Prefix arg to commands marked with * lets you edit the switches,
;; making it very flexible (e.g. to check in new branches or with
;; specified revision numbers [-uREV, -lREV], or even in case the file
;; didn't change [-f]).

;; Read the manual for more info.

(defconst rcs-version  (substring "$Revision: 1.55 $" 11 -2)
  "$Id: rcs.el,v 1.55 1992/02/10 10:29:26 sk Exp $

Report bugs to: Sebastian Kremer <sk@thp.uni-koeln.de>

Available for anonymous FTP from
     ftp.cs.buffalo.edu:pub/Emacs/rcs.tar.Z
and
     ftp.uni-koeln.de:/pub/gnu/emacs/rcs.tar.Z")


;; Customization variables

(defvar rcs-bind-keys t
  "If nil, rcs.el will not bind any keys.
Has to be set before rcs.el is loaded.")

(defvar rcs-active t
  "*If non-nil, RCS controlled files are treated specially by Emacs.")

(defvar rcs-ange-ftp-ignore t
  "*If non-nil, remote ange-ftp files are never considered RCS controlled.
This saves a lot of time for slow connections.")

(defvar rcsdiff-switches nil
  "*If non-nil, a string specifying switches to be be passed to rcsdiff.
A list of strings (or nil) means that the commandline can be edited
after inserting those strings.")

(defvar rcs-default-co-switches nil
  "List of switches (strings) for co(1) to use on every `rcs-check-out'.")

(defvar rcs-default-ci-switches nil
  "List of switches (strings) for ci(1) to use on every `rcs-check-in'.
You can use the `-f' switch to force new revision with RCS 5.6 even if
the file did not change.")

(defvar rcs-default-rlog-switches nil
  "List of switches (strings) for rlog(1) to use on every `rcs-log'.")
 
(defvar rcs-read-log-function nil
  "*If non-nil, function of zero args to read an RCS log message.
If nil, log messages are read from the minibuffer.
Possible value: 'rcs-read-log-string-with-recursive-edit.")

;; End of customization variables

;; Buffer-local modeline variables, and hooking into Emacs.

(defvar rcs-mode nil
  "If non-nil, the current buffer's file is RCS-controlled:

If the emptry string, it is unlocked, and the modeline display the
head revision number.

Else it is a string of lockers as returned by function `rcs-status',
which is displayed in the modeline, in the format LOCKER:REV.")

(defvar rcs-mode-string nil)		; for use in modeline

;; In case you are using Joe Well's kill-fix.el, available from the
;; Elisp archive archive.cis.ohio-state.edu:pub/gnu/emacs/elisp-archive/,
;; this will prevent killing rcs modeline variables in a major mode change:
(put 'rcs-mode 'preserved t)
(put 'rcs-mode-string 'preserved t)

;; Tell Emacs about this new kind of minor mode
(if (not (assoc 'rcs-mode minor-mode-alist))
    (progn
      (setq minor-mode-alist (cons '(rcs-mode rcs-mode-string)
				   minor-mode-alist))
      ;; make-variable-buffer-local also initializes to nil (in 18.55),
      ;; but we better don't rely on this since it is not documented.
      (set-default (make-variable-buffer-local 'rcs-mode) nil)
      (set-default (make-variable-buffer-local 'rcs-mode-string) nil)))

(defun rcs-file-not-found ()
  ;; If current buffer's file is RCS controlled, check it out.
  ;; Called when find-file has not been able to find the specified file.
  ;; Return t if found, nil else for use as hook.
  (and rcs-active
       (rcs-status buffer-file-name)
       ;; No good asking user here since he shouldn't create a
       ;; new empty file when there is actually an RCS file for it.
       (rcs-check-out
	buffer-file-name
	(and (y-or-n-p "Check out writable and locked for editing? ")
	     '("-l")))
       ;; Indicate if file was found so that other not-found hooks
       ;; aren't run in that case
       t))

;; Install the above routine, making it the first hook
(or (memq 'rcs-file-not-found find-file-not-found-hooks)
      (setq find-file-not-found-hooks
            (cons 'rcs-file-not-found find-file-not-found-hooks)))

(defun rcs-status (fname &optional switches)
  "Returns the locker and version of this file if it is locked, an empty
string if it is not locked, and nil if it is not an RCS controlled file.
If several lockers, they are returned as one string, separated by SPC.

With a prefix arg, set the status instead of querying it.  This works
by passing the prompted-for SWITCHES to the `rcs' program."
  (interactive
   (list (rcs-read-file-name (concat (if current-prefix-arg "Set" "Query")
				     " RCS status of: "))
	 (and current-prefix-arg
	      (rcs-read-switches "Switches for rcs: "))))
  (setq fname (expand-file-name fname))
  (if switches
      (let ((output-buffer (rcs-get-output-buffer fname)))
	(save-excursion
	  (set-buffer output-buffer)
	  (apply 'call-process "rcs" nil t nil
		 (append switches (list "-q" fname)))
	  (if (> (buffer-size) 0)
	      (rcs-error "rcs" fname output-buffer))))
    (let (rname status head)
      (if (and rcs-ange-ftp-ignore
	       (fboundp 'ange-ftp-ftp-path)
	       (ange-ftp-ftp-path fname))
	  (setq status nil)		; remote file not considered for RCS
	(setq rname (rcs-data-file fname))
	(if rname
	    ;; parse contents of the RCS (`,v') file
	    (save-excursion
	      (set-buffer (rcs-get-output-buffer rname " *RCS-temp*"))
	      (insert-file-contents rname nil)
	      (goto-char (point-min))
	      (setq status
		    (if (re-search-forward "^locks[ \t\n\r\f]+\\([^;]*\\)" nil t)
			(save-restriction ;; ^J in `rcs-mode-string' looks ugly
			  (narrow-to-region (match-beginning 1) (match-end 1))
			  (goto-char (point-min))
			  (while (re-search-forward "[ \t\n\r\f]+" nil t)
			    (replace-match " " t t))
			  (buffer-string))
		      ""))
	      (goto-char (point-min))
	      (if (re-search-forward "^head[ \t\n\r\f]+\\([0-9.]+\\)")
		  (setq head (buffer-substring (match-beginning 1)
					       (match-end 1))))
	      ;; more useful information could be gleaned here
	      (erase-buffer)))
	(if (interactive-p)
	    (cond ((null status)
		   (message "Not an RCS-controlled file: %s" fname))
		  ((equal "" status)
		   (message "No current locker for %s" fname))
		  (t
		   (message "%s -- %s" fname status)))))
      ;; See if the STATUS we just computed so hard can be used to
      ;; update a buffer's modeline:
      (let ((buffer (get-file-buffer fname)))
	(and buffer
	     (save-excursion
	       (set-buffer buffer)
	       (rcs-set-modeline status head))))
      status)))

(defun rcs-we-locked (fname &optional status)
  ;; Return non-nil if current user has a lock on the specified file.
  ;; Value returned is the revision level that is locked (as string).
  ;; Optional 2nd arg STATUS precomputed value of (rcs-status FNAME)
  ;; can be passed for efficiency.
  (or status (setq status (rcs-status fname)))
  (and status;; STATUS is "" or string of lockers
       (string-match (concat (regexp-quote (user-login-name))
			     ":[ \t\n]*\\([0-9.]+\\)")
		     status)
       (substring status (match-beginning 1) (match-end 1))))

(defun rcs-load-postprocessor ()
  "Peeks at files after they are loaded to see if they merit special
treatment by virtue of being active RCS files.

You can also call this interactively to refresh the modeline, e.g.
after a major mode change that killed all local variables."
  (interactive)
  ;; If rcs-active is nil, the buffer local variables below stay nil.
  (and rcs-active
       buffer-file-name
       ;; this will also set the modeline:
       (rcs-status buffer-file-name)))

(defun rcs-set-modeline (status &optional head)
  ;; Set modeline of current buffer according to STATUS (see `rcs-status').
  ;; If non-nil, HEAD is the head revision to be displayed in case of
  ;; an unlocked file.  If HEAD is not given, just "RCS" is displayed.
  (setq rcs-mode status
	rcs-mode-string (and status
			     (if (equal "" status);; unlocked but under RCS
				 (if head
				     ;;(concat " RCS " head)
				     (concat " " head)
				   " RCS")
			       (concat " " status)))))

;; Install above routine
(or (memq 'rcs-load-postprocessor find-file-hooks)
      (setq find-file-hooks
            (cons 'rcs-load-postprocessor find-file-hooks)))


;; RCS utility functions

(defun rcs-read-switches (prompt &optional default)
  ;; Read a list of switches (strings), prompting with PROMPT.
  ;; User enters a single string, a space-separated list of switches.
  ;; Split on whitespace and return list of strings.
  ;; So it would not be possible to include whitespace in a switch
  ;; unless we hadn't added the escape to line mode if just a single
  ;; SPC is entered.
  (let ((answer (read-string prompt default))
	(beg 0)
	end result switch)
    (if (equal " " answer)
	(rcs-read-switches-allowing-space prompt default)
      (while (setq end (string-match "[ \t]+" answer beg))
	(setq switch (substring answer beg end)
	      beg (match-end 0))
	(or (equal "" switch)
	    (setq result (cons switch result))))
      (setq switch (substring answer beg))
      (or (equal "" switch)
	  (setq result (cons switch result)))
      (nreverse result))))

(defun rcs-read-switches-allowing-space (prompt &optional default)
  ;; Read switches, each separately, thus allowing whitespace.
  ;; DEFAULT is ignored.
  (let (answer result done (count 0))
    (while (not done)
      (setq answer (read-string
		    (concat prompt
			    "(#"
			    (int-to-string (setq count (1+ count)))
			    ", just RET for last) "))
	    done (equal "" answer))
      (or done (setq result (cons answer result))))
    (nreverse result)))

(defun rcs-read-file-name (prompt)
  ;; Read a file name prompting with PROMPT.
  ;; Default is current buffer's file, if any.
  (if buffer-file-name
      (let ((dir (file-name-nondirectory buffer-file-name)))
	(read-file-name (format (concat prompt "(default %s) ") dir)
			nil
			dir))
    (read-file-name prompt)))

(defun rcs-read-log-string (prompt)
  (if rcs-read-log-function
      (funcall rcs-read-log-function)
    (read-string prompt)))

(defun rcs-read-log-string-with-recursive-edit ()
  "Useful as value of `rcs-read-log-function'."
  (let ((buffer (get-buffer-create "*RCS log message*")))
    (save-window-excursion
      (switch-to-buffer buffer)
      ;;?(erase-buffer)
      (with-output-to-temp-buffer "*Help*"
	(princ (substitute-command-keys
		"\
Enter the RCS log message.
Type \\[mark-whole-buffer] \\[kill-region] to kill old entry.
Type \\[exit-recursive-edit] when finished editing or \\[abort-recursive-edit] to abort.")))
      (recursive-edit)
      (buffer-string))))

(defun rcs-revert-buffer (&optional arg no-confirm)
  ;; Revert buffer, try to keep point where user expects it in spite
  ;; of changes because of expanded RCS key words.
  ;; This is quite important since otherwise typeahead won't work as expected.
  (interactive "P")
  (widen)
  (let* ((opoint (point))
	 (osize (buffer-size))
	 (obobp (bobp))
	 diff
	 (context 100)
	 (ostring (buffer-substring (point)
				    (min (point-max)
					 (+ (point) context))))
	 (l (length ostring)))
    (revert-buffer arg no-confirm)
    (setq diff (- osize (buffer-size)))
    (if (< diff 0) (setq diff (- diff)))
    (goto-char opoint)
    (cond (obobp
	   (goto-char (point-min)))
	  ((equal "" ostring)		; i.e., originally at eob
	   (goto-char  (point-max)))
	  ((or (search-forward ostring nil t)
	       ;; Can't use search-backward since the match may continue
	       ;; after point.
	       (progn (goto-char (- (point) diff l))
		      ;; goto-char doesn't signal an error at
		      ;; beginning of buffer like backward-char would
		      (search-forward ostring nil t)))
	   ;; to beginning of OSTRING
	   (backward-char l)))))

(defun rcs-refresh-buffer (filename)
  ;; Revert FILENAME's buffer from disk.
  (let ((output-buffer (get-file-buffer filename))
	(obuf (current-buffer)))
    (if output-buffer
	;; Can't use save-excursion here, want to move point inside
	;; rcs-revert-buffer
	(unwind-protect
	    (progn
	      (set-buffer output-buffer)
	      (rcs-revert-buffer t t))
	  (set-buffer obuf)))))

(defun rcs-get-output-buffer (file &optional name)
  ;; Get a buffer for RCS output for FILE, make it writable and clean it up.
  ;; Optional NAME is name to use instead of `*RCS-output*'.
  (let* ((default-major-mode 'fundamental-mode);; no frills!
	 (buf (get-buffer-create (or name "*RCS-output*"))))
    (save-excursion
      (set-buffer buf)
      (setq buffer-read-only nil
	    default-directory (file-name-directory (expand-file-name file)))
      (erase-buffer))
    buf))

(defun rcs-error (program fname buffer)
  ;; Display BUFFER (contains output from failed commmand) and signal
  ;; an RCS error.
  (display-buffer buffer)
  (error "RCS command `%s' failed on %s" program fname))


;; Functions that know about RCS working and data files.
;; If the `,v' extension etc. ever changes, here is the place to fix it.

(defun rcs-data-file (filename)
  "Return the name of the RCS data file for FILENAME, or nil."
  (setq filename (expand-file-name filename))
  ;; Try first `RCS/FILENAME,v', then `FILENAME,v'.
  ;; In RCS 5.6 should also try `RCS/FILENAME' as last possibility, or look
  ;; at the rcs -x extension option or RCSINIT environment variable.
  (let ((rname (concat (file-name-directory filename) "RCS/"
		       (file-name-nondirectory filename) ",v")))
    (or (file-readable-p rname)
	(setq rname (concat filename ",v")))
    (and (file-readable-p rname)
	 rname)))

;; here unused, but other packages need it (e.g dired-rcs.el)
(defun rcs-working-file (filename)
  "Convert an RCS file name to a working file name.
That is, convert `...foo,v' and `...RCS/foo,v' to `...foo'.
If FILENAME doesn't end in `,v' it is returned unchanged."
  (if (not (string-match ",v$" filename))
      filename
    (setq filename (substring filename 0 -2))
    (let ((dir (file-name-directory filename)))
      (if (null dir)
	  filename
	(let ((dir-file (directory-file-name dir)))
	  (if (equal "RCS" (file-name-nondirectory dir-file))
	      ;; Working file for ./RCS/foo,v is ./foo.
	      ;; Don't use expand-file-name as this converts "" -> pwd
	      ;; and thus forces a relative FILENAME to be relative to
	      ;; the current value of default-directory, which may not
	      ;; what the caller wants.  Besides, we want to change
	      ;; FILENAME only as much as necessary.
	      (concat (file-name-directory dir-file)
		      (file-name-nondirectory filename))
	    filename))))))

(defun rcs-files (directory)
  "Return list of RCS data files for all RCS controlled files in DIRECTORY."
  (setq directory (file-name-as-directory directory))
  (let ((rcs-dir (file-name-as-directory (expand-file-name "RCS" directory)))
	(rcs-files (directory-files directory t ",v$")))
    (if (file-directory-p rcs-dir)
	(setq rcs-files
	      (append (directory-files rcs-dir t ",v$")
		      rcs-files)))
    rcs-files))

;; here unused, but other packages need it (e.g dired-rcs.el)
(defun rcs-locked-files (directory)
  "Return list of RCS data file names of all RCS-locked files in DIRECTORY."
  (let ((output-buffer (rcs-get-output-buffer directory))
	(rcs-files (rcs-files directory))
	result)
    (and rcs-files
	 (save-excursion
	   (set-buffer output-buffer)
	   (apply (function call-process) "rlog" nil t nil "-L" "-R" rcs-files)
	   (goto-char (point-min))
	   (while (not (eobp))
	     (setq result (cons (buffer-substring (point)
						  (progn (forward-line 1)
							 (1- (point))))
				result)))
	   result))))


;; Operations on RCS-controlled files (check in, check out, logs, etc.)

(defun rcs-check-out (filename &optional switches)
  "Attempt to check the specified file out using RCS.
If a prefix argument is supplied, will let you edit the `co' switches
used, defaulting to \"-l\" to check out locked.
Use \"-rREV\" or \"-lREV\" to check out specific revisions."
  ;; Returns non-nil for success, signals an error else.
  (interactive (list (rcs-read-file-name "Check out file: ")
		     (and current-prefix-arg
			  (rcs-read-switches "Switches for co: " "-l"))))
  (message "Working...")
  (setq filename (expand-file-name filename))
  (let ((output-buffer (rcs-get-output-buffer filename)))
    (delete-windows-on output-buffer)
    (save-excursion
      (set-buffer output-buffer)
      (apply 'call-process "co" nil t nil
	     ;; -q: quiet (no diagnostics)
	     (append switches rcs-default-co-switches (list "-q" filename)))
      (if (or (not (file-readable-p filename))
	      (> (buffer-size) 0))
	  (rcs-error "co" filename output-buffer)))
    (rcs-refresh-buffer filename))
  (message ""))

(defun rcs-check-in (filename switches log)
  "Attempt to check the specified file back in using RCS.
If a prefix argument is supplied, will let you edit the `ci' switches used,
with default \"-l\" switch to keep file locked.
Use \"-uREV\" or \"-lREV\" to check in as specific revision."
  (interactive (list (rcs-read-file-name "Check in file: ")
		     (and current-prefix-arg
			  (rcs-read-switches "Switches for ci: " "-l"))
		     (rcs-read-log-string "Log message: ")))
  (setq filename (expand-file-name filename))
  (setq switches (cons "-u" switches))
  ;; A "-l" in SWITCHES will override this "-u", so we can
  ;; unconditionally prepend it to SWITCHES.  We always need an
  ;; existing working file, to have something to put in the buffer
  ;; afterwards.
  (let* ((output-buffer (rcs-get-output-buffer filename))
	 (f-buffer (get-file-buffer filename)))
    (and (interactive-p)
	 f-buffer
	 (buffer-modified-p f-buffer)
	 (not (and (y-or-n-p "Save buffer first? ")
		   (save-excursion
		     (set-buffer f-buffer)
		     (save-buffer)
		     t)))
	 (not (y-or-n-p "Check in despite unsaved changes to file? "))
	 (error "Check-in aborted"))
    (message "Working...")
    (delete-windows-on output-buffer)
    (save-excursion
      (set-buffer output-buffer)
      (setq log (concat "-m" log))	; -m: log message, -q: quiet
      (apply 'call-process "ci" nil t nil
	     (append switches rcs-default-ci-switches (list log "-q" filename)))
      (if (> (buffer-size) 0)
	  (rcs-error "ci" filename output-buffer)))
    (rcs-refresh-buffer filename))
  (message ""))

(defun rcs-unlock (filename)
  "Attempt to remove your RCS lock on the specified file.
Requires confirmation if there are changes since the last checkin."
  (interactive (list (rcs-read-file-name "Unlock RCS file: ")))
  (setq filename (expand-file-name filename))
  (if (not (rcs-we-locked filename))
      (error "File was not locked to begin with"))
  (let* ((output-buffer (rcs-get-output-buffer filename))
	 (f-buffer (get-file-buffer filename))
	 (modified nil))
    ;;See if they've made any changes to the file. If so, double-check that
    ;;they want to discard them.
    (setq modified (and f-buffer (buffer-modified-p f-buffer)))
    (delete-windows-on output-buffer)
    (save-excursion
      (set-buffer output-buffer)
      (message "Examining file...")
      (call-process "rcsdiff" nil t nil filename)
      (goto-char (point-min))
      (re-search-forward "^diff +-r.*$")
      (forward-char 1)			;Skip past command itself
      (delete-region (point-min) (point)) ;Get rid of all but results
      (if modified			;There are changes to the buffer itself too.
	  (progn
	    (goto-char (point-max))
	    (insert "\nThere are unsaved changes to the buffer itself!\n"))
	(setq modified (< (point) (point-max))))
      (message "")
      (if modified
	  (display-buffer output-buffer))
      (if (and modified (not (yes-or-no-p;; not y-or-n-p since this
			      ;; gives a chance to use M-C-v to look at
			      ;; the diffs.  Also, it is safer.
			      "Discard changes made since file locked? ")))
	  (error "Unlock aborted"))
      (erase-buffer)			; clean up output buffer
      ;; -u: unlock, -q: quiet
      (call-process "rcs" nil t nil "-u" "-q" filename)
      (if (> (buffer-size) 0)
	  (rcs-error "rcs" filename output-buffer))))
  ;; Finally, check out a current copy.
  ;; -f: overwrite working file, even if it is writable (as it probably is)
  (rcs-check-out filename '("-f")))

(defun rcs-toggle-read-only ()
  "If the buffer is read-only and under RCS, adjust RCS status.
That is, make buffer writable and check file out locked for editing."
  (interactive)
  (if (and rcs-active
	   rcs-mode
	   buffer-read-only
	   buffer-file-name
	   (not (rcs-we-locked buffer-file-name rcs-mode)))
      (if (y-or-n-p "Check buffer out from RCS for edit? ")
	  (if (and (file-exists-p buffer-file-name)
		   (file-writable-p buffer-file-name))
	      (if (yes-or-no-p "\
Illegally writable copy of RCS controlled file - force checkout anyway? ")
		  (rcs-check-out buffer-file-name '("-f" "-l"))
		(error "Illegally writable copy of RCS controlled file %s"
		       buffer-file-name))
	    ;; Try to get a locked version. May error.
	    (rcs-check-out buffer-file-name '("-l")))
	(if (y-or-n-p
	     "File is RCS controlled - make buffer writable anyway? ")
	    (toggle-read-only)		; this also updates the modeline
	  (barf-if-buffer-read-only)))
    (toggle-read-only))
  (message ""))

(defun rcs-log (fname &optional switches)
  "Show the RCS log of changes for the specified file.
With an arg you can pass additional switches to the `rlog' program."
  (interactive (list (rcs-read-file-name "Show RCS log of: ")
		     (and current-prefix-arg
			  (rcs-read-switches "Switches for rlog: "))))
  (setq fname (expand-file-name fname))
  (if (not (rcs-status fname))
      (error "File is not under RCS control"))
  (save-excursion
    (let ((output-buffer (rcs-get-output-buffer fname)))
      (set-buffer output-buffer)
      (message "Requesting log...")
      (apply 'call-process "rlog" nil t nil
	     (append switches rcs-default-rlog-switches (list fname)))
      (goto-char (point-min))
      (message "")
      (display-buffer output-buffer))))

(defun rcs-diff (fname &optional switches)
  "Show the differences between current file and the last revision checked in.
With prefix arg, edit the `rcsdiff' commandline.
See also variable `rcsdiff-switches'."
  (interactive
   (list (rcs-read-file-name "Show RCS diffs for: ")
	 (if (or current-prefix-arg (listp rcsdiff-switches))
	     (rcs-read-switches "Switches for rcsdiff: "
				(if (stringp rcsdiff-switches)
				    rcsdiff-switches
				  (if (listp rcsdiff-switches)
				      (mapconcat 'identity rcsdiff-switches " ")
				    ""))))))
  (setq fname (expand-file-name fname))
  (if (not (rcs-status fname))
      (error "File is not under RCS control"))
  (or switches
      (setq switches (if (listp rcsdiff-switches)
			 rcsdiff-switches
		       (list rcsdiff-switches))))
  (let ((output-buffer (rcs-get-output-buffer fname))
	(f-buffer (get-file-buffer fname)))
    (if (and (interactive-p)
	     f-buffer
	     (buffer-modified-p f-buffer)
	     (y-or-n-p "Save file before comparing? "))
	(save-buffer))
    (save-excursion
    (set-buffer output-buffer)
    (message "Comparing files...")
    (apply 'call-process "rcsdiff" nil t nil
	   (append switches (list fname)))
    (message "Comparing files...done")
    (goto-char (point-max))		; shell-command does not drag point
    (insert (make-string 67 ?=) "\n")
    (goto-char (point-min))
    (display-buffer output-buffer))))

(defun rcs-who (directory)
  "Display list of RCS-locked files and their lockers in DIRECTORY."
  (interactive "DRcswho (directory): ")
  (or directory (setq directory default-directory))
  (setq directory (expand-file-name directory))
  (setq directory (file-name-as-directory directory))
  (let ((rcs-files (rcs-files directory)))
    (if (null rcs-files)
	(message "No RCS controlled files in %s" directory)
      (rcs-who-1 directory rcs-files))))

(defun rcs-who-1 (directory rcs-files)
  ;; Parse `rlog -L -h' output for `Working file:' and
  ;; `locks:' fields, flush the other fields.  The remaining rlog
  ;; output is presented to the user.
  ;; The -R and -L options are also understood by RCS 3 and 4, though
  ;; the output format is slightly different.  This code parses both
  ;; formats, but the output is slightly different in the case of
  ;; several lockers per file:  in V5, each locker gets a separate line.
  (save-excursion
    (let ((output-buffer (rcs-get-output-buffer directory "*RCS-who*")))
      ;; Name OUTPUT-BUFFER different from the usual RCS output buffers
      ;; since user may want to keep it around a while.  Else each RCS
      ;; command would flush it.
      (set-buffer output-buffer)
      (message "rcs-who %s..." directory)
      (apply 'call-process "rlog" nil t nil
	     "-L" "-h"			; -L: locked only, -h: head only
	     ;;"-V3" ; use this to test the code for older RCS versions
	     rcs-files)
      (goto-char (point-min))
      (if (and (not (zerop (buffer-size)))
	       (not (search-forward "Working file" nil t)))
	  (progn
	    (display-buffer output-buffer)
	    (error "Rlog error")))
      (goto-char (point-min))
      (let ((pos (point)))
	(while (re-search-forward "Working file: *" nil t)
	  (delete-region pos (point))	; flush anything before filename
	  (end-of-line 1)
	  (insert "\t")
	  (setq pos (point))
	  (if (re-search-forward "locks:[ \t\n]*\\(strict[ \t\n]*\\)?" nil t)
	      (progn
		(delete-region pos (point)))
	    (display-buffer output-buffer)
	    (error "Cannot parse this rlog format"))
	  ;; Now skip over the list of lockers.  In V5 this will be one
	  ;; line per locker, in V3 and V4 all lockers will be on the
	  ;; same line.
	  ;; In V5 the (optional) `strict' token comes before the list
	  ;; of lockers (we have already skipped over it and use the
	  ;; `access list' token as delimiter).
	  ;; In V3,4 the `strict' token comes after the list of lockers
	  ;; (skip over it now, if present).
	  ;; In any case, the `access list' terminates the lockers.
	  (re-search-forward ";[ \t\n]*strict\\|\naccess list:")
	  (goto-char (match-beginning 0))
	  (insert "\n")
	  ;; set POS so that next iteration will flush from here on
	  (setq pos (point)))
	(delete-region pos (point-max)))
      (message "")
      (if (/= 0 (buffer-size))
	  (display-buffer output-buffer)
	(message "No files locked in %s" directory)))))

;; Parsing RCS data files directly is too slow and too hard on Emacs' memory
;; usage.  A single invocation of rcs-status is OK, but not on a whole
;; directory.

;; (defun rcs-who-1-slow (directory rcs-files)
;;   (let ((output-buffer (rcs-get-output-buffer directory))
;; 	file status)
;;     (save-excursion
;;       (set-buffer output-buffer)
;;       (let (buffer-read-only)
;; 	(while rcs-files
;; 	  (setq file (car rcs-files)
;; 		rcs-files (cdr rcs-files)
;; 		status (rcs-status file))
;; 	  (if (> (length status) 0)
;; 	      (insert file
;; 		      "\t"
;; 		      status
;; 		      "\n"))))
;;       (display-buffer output-buffer))))

(if (null rcs-bind-keys)
    nil
  ;; Local maps will override this, since C-c is usually a local prefix.
  (global-set-key "\C-cD" 'rcs-diff)
  (global-set-key "\C-cI" 'rcs-check-in)
  (global-set-key "\C-cL" 'rcs-log)
  (global-set-key "\C-cO" 'rcs-check-out)
  (global-set-key "\C-cS" 'rcs-status)
  (global-set-key "\C-cU" 'rcs-unlock)
  (global-set-key "\C-cW" 'rcs-who)
  (global-set-key "\C-x\C-q" 'rcs-toggle-read-only))

(provide 'rcs)
(provide 'rcs-sk)			; there are so many RCS packages...

-------------------------- rcs-log-mode.el --------------------------
;;;   -*- Syntax: Emacs-Lisp; Mode: emacs-lisp -*-  	          	  ;;;
;;;									  ;;;

;; Stuff picket form Edward V. Simpson's rcs.el to get a nice
;; rcs-log-mode. Made stand alone to be usable with other rcs packages 
;; by Guido Bosch, 1991


(defvar rcs-log-ring " RCS Log Ring")
(defvar rcs-log-buffer "*RCS log message*")

(defvar rcs-log-other-window t
  "If t switch to other window for editing a log string.")

(defvar rcs-max-log-size 1500
  "*Maximum allowable size (chars) + 1 of an rcs log message.")



(defun rcs-get-log-string ()
  "Switch to the buffer \"*RCS log message*\" and let edit a Log string."
  (let ((buffer (get-buffer-create rcs-log-buffer)))
    (save-window-excursion
      (if rcs-log-other-window
	  (switch-to-buffer-other-window buffer)
	(switch-to-buffer buffer))
      (erase-buffer)
      (with-output-to-temp-buffer "*Help*"
	(princ (substitute-command-keys
		"\\<rcs-log-mode-map>
Enter the RCS log message.
Type \\[rcs-exit] when finished editing or \\[rcs-abort] to abort.
To step through the log message histotry, first type \\[rcs-insert-log],
then \\[rcs-next-log] and \\[rcs-previous-log] to move back and forth.")))
      (rcs-log-mode)
      (recursive-edit)
      (buffer-string))))


(defvar rcs-log-mode-map nil)
(if rcs-log-mode-map
    nil
  (setq rcs-log-mode-map (copy-keymap text-mode-map))
  (define-key rcs-log-mode-map "\C-c?" 	'describe-mode)
  (define-key rcs-log-mode-map "\C-x\e" 'rcs-insert-log)
  (define-key rcs-log-mode-map "\en" 	'rcs-next-log)
  (define-key rcs-log-mode-map "\ep" 	'rcs-previous-log)
  (define-key rcs-log-mode-map "\C-c\C-g" 'rcs-abort)
  (define-key rcs-log-mode-map "\C-c\C-c" 'rcs-exit)
  (define-key rcs-log-mode-map "\C-x\C-s" 'rcs-exit)
  (save-excursion			; initialize log ring
    (set-buffer (get-buffer-create rcs-log-ring))
    (erase-buffer)
    (make-local-variable 'page-delimiter)
    (setq page-delimiter "\f")))

(defun rcs-log-mode ()
  "Major mode for editing RCS logs (to do an rcs check-in).
Calls the value of text-mode-hook then rcs-log-mode-hook.
Like Text Mode but with these additional comands:
\\{rcs-log-mode-map}

Every time a check-in is attempted the current log message is appended to
the \"log ring.\"

Global user options:
	rcs-max-log-size	specifies the maximum allowable size
				of a log message plus one."
  (interactive)
  (use-local-map rcs-log-mode-map)
  (setq major-mode 'rcs-log-mode)
  (setq mode-name "RCS Log")
  (run-hooks 'text-mode-hook 'rcs-log-mode-hook))

 

(defun rcs-abort ()
  "Abort the recursive edit of an rcs log message."
  (interactive)
  (if (y-or-n-p "Do you really want to abort RCS logging? ")
      (abort-recursive-edit)
    (message "Continuing.")))



(defun rcs-exit ()
  "Leave the recursive edit of an rcs log message.
Append the log message to the end of the rcs log ring."
  (interactive)
  (if (< (buffer-size) rcs-max-log-size)
      (let ((min (point-min))
	    (max (point-max))
	    (rcs-log-hist (get-buffer-create rcs-log-ring)))
	(set-buffer rcs-log-hist)
	(goto-char (point-max))
	(insert-buffer-substring rcs-log-buffer min max)
	(insert-string "\f")
	(mark-page)
	(set-buffer rcs-log-buffer)
	(exit-recursive-edit)
	(bury-buffer))
    (goto-char rcs-max-log-size)
    (error
     "Log must be less than %d characters. Point is now at character %d."
     rcs-max-log-size rcs-max-log-size)))


(defun rcs-insert-log ()
  "Insert a log message from the rcs log ring at point."
  (interactive)
  (let (min max)
    (save-excursion
      (set-buffer rcs-log-ring)
      (if (= 0 (buffer-size))
	  (error "Log ring is empty.")
	(setq min (region-beginning))
	(setq max (- (region-end) 1))))
    (push-mark)
    (insert-buffer-substring rcs-log-ring min max))
)

(defun rcs-next-log ()
  "Replace the inserted log message with the next message in the log ring.
The last command must have been `rcs-insert-log,'
`rcs-next-log,' or `rcs-previous-log.'"
  (interactive)
  (if (not (equal last-command 'rcs-insert-log))
      (error "Last command was not `rcs-insert-log.'")
    (delete-region (region-beginning) (region-end))
    (set-buffer rcs-log-ring)
    (forward-page)
    (if (= (point) (point-max))
	(goto-char (point-min)))
    (mark-page)
    (set-buffer rcs-log-buffer)
    (rcs-insert-log)
    (setq this-command 'rcs-insert-log)))

(defun rcs-previous-log ()
  "Replace the inserted log message with the previous message in the log ring.
The last command must have been `rcs-insert-log,'
`rcs-next-log,' or `rcs-previous-log.'"
  (interactive)
  (if (not (equal last-command 'rcs-insert-log))
      (error "Last command was not `rcs-insert-log.'")
    (delete-region (region-beginning) (region-end))
    (set-buffer rcs-log-ring)
    (if (= (point) (point-min))
	(goto-char (point-max)))
    (backward-page)
    (mark-page)
    (set-buffer rcs-log-buffer)
    (rcs-insert-log)
    (setq this-command 'rcs-insert-log)))

--
Guido BOSCH, INRIA-Lorraine/CRIN
Institut National de Recherche en Informatique et en Automatique (INRIA)
Centre de Recherche en Informatique de Nancy (CRIN)
Campus scientifique, B.P. 239            
54506 Vandoeuvre-les-Nancy CEDEX       	
Tel.: (+33) 83.91.24.24
Fax.: (+33) 83.41.30.79                	
email: bosch@loria.fr             	

From help-lucid-emacs-request@lucid.com  Thu Aug  6 03:15:46 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA20419; Thu, 6 Aug 92 03:15:46 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA22337g; Thu, 6 Aug 92 03:02:56 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA05430; Thu, 6 Aug 92 06:12:56 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA05424; Thu, 6 Aug 92 06:12:54 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA29847; Thu, 6 Aug 92 06:13:33 -0400
Path: uunet!mcsun!corton!loria!news.loria.fr!bosch
From: bosch%loria.fr@lucid.com (Guido Bosch)
Newsgroups: alt.lucid-emacs.help
Subject: enhancement for rcs-diff
Message-Id: <BOSCH.92Aug6120447@moebius.loria.fr>
Date: 6 Aug 92 10:04:47 GMT
References: <9208050749.AA14527@amil.co.il> <BOSCH.92Aug6101637@moebius.loria.fr>
Reply-To: Guido BOSCH <bosch%loria.fr@lucid.com>
Organization: INRIA-Lorraine / CRIN, Nancy, France
In-Reply-To: bosch@loria.fr's message of 6 Aug 92 08:16:37 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Hi,

Here is a small enhancement of the rcs package I posted today. It
contains two patches: one for rcs.el and one for diff.el. It makes
that the output of an rcs-diff command is automatically vieved in diff
mode.

To make it work, the function `diff-mode' must be made autoloadable.

	Guido


------------------------- rcs-diff-patch -------------------------
*** rcs.el.orig		Wed Jun  3 16:35:48 1992
--- rcs.el		Thu Aug  6 11:05:37 1992
***************
*** 649,655 ****
      (goto-char (point-max))		; shell-command does not drag point
      (insert (make-string 67 ?=) "\n")
      (goto-char (point-min))
!     (display-buffer output-buffer))))
  
  (defun rcs-who (directory)
    "Display list of RCS-locked files and their lockers in DIRECTORY."
--- 649,656 ----
      (goto-char (point-max))		; shell-command does not drag point
      (insert (make-string 67 ?=) "\n")
      (goto-char (point-min))
!     (display-buffer output-buffer)
!     (if (fboundp 'diff-mode) (diff-mode)))))
  
  (defun rcs-who (directory)
    "Display list of RCS-locked files and their lockers in DIRECTORY."





-------------------------- diff-mode-patch --------------------------
*** diff.el.orig	Thu Aug  6 11:01:28 1992
--- diff.el		Thu Aug  6 11:18:06 1992
***************
*** 18,23 ****
--- 18,29 ----
  ;; along with GNU Emacs; see the file COPYING.  If not, write to
  ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
  
+ ;; The function `diff-mode' can be used to examin diff output in a buffer
+ ;; (patches, e.g.). 
+ ;; To do this, put 
+ ;; 	(autoload 'diff-mode "diff" "Major mode to view diff output." t)
+ ;; in your .emacs or default.el. 
+ 
  ;; todo: diff-switches flexibility:
  ;; (defconst diff-switches-function
  ;;   '(lambda (file)
***************
*** 91,104 ****
  	  ;; strip leading filenames from context diffs
  	  (progn (forward-line 2) (delete-region (point-min) (point))))
        (setq sw (cdr sw))))
!   (diff-mode)
!   (if (string= "0" diff-total-differences)
!       (insert (message "There are no differences."))
!     (narrow-to-region (point) (progn
! 				(forward-line 1)
! 				(re-search-forward diff-search-pattern nil)
! 				(goto-char (match-beginning 0))))
!     (setq diff-current-difference "1")))
  
  ;; Take a buffer full of Unix diff output and go into a mode to easily 
  ;; see the next and previous difference
--- 97,103 ----
  	  ;; strip leading filenames from context diffs
  	  (progn (forward-line 2) (delete-region (point-min) (point))))
        (setq sw (cdr sw))))
!   (diff-mode))
  
  ;; Take a buffer full of Unix diff output and go into a mode to easily 
  ;; see the next and previous difference
***************
*** 123,129 ****
  	'(" " diff-current-difference "/" diff-total-differences))
    (make-local-variable 'diff-current-difference)
    (set (make-local-variable 'diff-total-differences)
!        (int-to-string (diff-count-differences))))
  
  (defun diff-next-difference (n)
    "In diff-mode go the the beginning of the next difference as delimited
--- 122,135 ----
  	'(" " diff-current-difference "/" diff-total-differences))
    (make-local-variable 'diff-current-difference)
    (set (make-local-variable 'diff-total-differences)
!        (int-to-string (diff-count-differences)))
!   (if (string= "0" diff-total-differences)
!       (insert (message "There are no differences."))
!     (narrow-to-region (point) (progn
! 				(forward-line 1)
! 				(re-search-forward diff-search-pattern nil)
! 				(goto-char (match-beginning 0))))
!     (setq diff-current-difference "1")))
  
  (defun diff-next-difference (n)
    "In diff-mode go the the beginning of the next difference as delimited




--
Guido BOSCH, INRIA-Lorraine/CRIN
Institut National de Recherche en Informatique et en Automatique (INRIA)
Centre de Recherche en Informatique de Nancy (CRIN)
Campus scientifique, B.P. 239            
54506 Vandoeuvre-les-Nancy CEDEX       	
Tel.: (+33) 83.91.24.24
Fax.: (+33) 83.41.30.79                	
email: bosch@loria.fr             	

From help-lucid-emacs-request@lucid.com  Thu Aug  6 03:34:22 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA20464; Thu, 6 Aug 92 03:34:22 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA22365g; Thu, 6 Aug 92 03:18:43 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA08449; Thu, 6 Aug 92 06:28:39 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA07906; Thu, 6 Aug 92 06:25:37 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA00167; Thu, 6 Aug 92 06:26:14 -0400
Path: uunet!mcsun!uknet!edcastle!dltest
From: dltest@castle.ed.ac.uk (Kevin Davidson)
Newsgroups: alt.lucid-emacs.help
Subject: Newer rcs-sk.el (was Re: reading changed files)
Message-Id: <24582@castle.ed.ac.uk>
Date: 6 Aug 92 10:18:46 GMT
References: <9208050749.AA14527@amil.co.il> <BOSCH.92Aug6101637@moebius.loria.fr>
Organization: Edinburgh University
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <BOSCH.92Aug6101637@moebius.loria.fr> bosch@loria.fr (Guido Bosch) writes:
|In article <9208050749.AA14527@amil.co.il> danny@amil.co.il (Danny Bar-Dov) writes:
| > [looking for rcs-mode]
|
|There are a lot of rcs-modes for GNU Emacs out there (too many, after
|my opinion). I played around with most of them and found the one of
|Sebastian Kremer most satisfactory for my needs (not to big, the command
|key bindings are not interferring with other modes)
|

|;; LISPDIR ENTRY for the Elisp Archive ===============================
|;;    LCD Archive Entry:
|;;    rcs|Sebastian Kremer|sk@thp.uni-koeln.de
|;;    |RCS interface for GNU Emacs
|;;    |$Date: 1992/02/10 10:29:26 $|$Revision: 1.55 $|
|
.....
|
|(defconst rcs-version  (substring "$Revision: 1.55 $" 11 -2)
|  "$Id: rcs.el,v 1.55 1992/02/10 10:29:26 sk Exp $
|

Is it wise to post this ? The version I have is:

;; LISPDIR ENTRY for the Elisp Archive ===============================
;;    LCD Archive Entry:
;;    rcs|Sebastian Kremer|sk@thp.uni-koeln.de
;;    |Simple yet flexible RCS interface for GNU Emacs
;;    |$Date: 1992/05/15 14:09:27 $|$Revision: 1.67 $|

...
(defconst rcs-version  (substring "$Revision: 1.67 $" 11 -2)
  "$Id: rcs.el,v 1.67 1992/05/15 14:09:27 sk Exp $
...

  Perhaps someone else can say what's changed.

|--
|Guido BOSCH, INRIA-Lorraine/CRIN
|Institut National de Recherche en Informatique et en Automatique (INRIA)
|Centre de Recherche en Informatique de Nancy (CRIN)
|Campus scientifique, B.P. 239            
|54506 Vandoeuvre-les-Nancy CEDEX       	
|Tel.: (+33) 83.91.24.24
|Fax.: (+33) 83.41.30.79                	
|email: bosch@loria.fr             	

From help-lucid-emacs-request@lucid.com  Thu Aug  6 07:04:25 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA20930; Thu, 6 Aug 92 07:04:25 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA22833g; Thu, 6 Aug 92 06:50:54 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA19101; Thu, 6 Aug 92 10:01:01 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA19095; Thu, 6 Aug 92 10:01:00 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA03378; Thu, 6 Aug 92 10:01:39 -0400
Path: uunet!cs.utexas.edu!zaphod.mps.ohio-state.edu!magnus.acs.ohio-state.edu!usenet.ins.cwru.edu!agate!ames!think.com!hsdndev!rossini
From: rossini@biosun4.harvard.edu (Anthony Rossini)
Newsgroups: alt.lucid-emacs.help
Subject: compiling 19.2 (am I being stupid?)
Message-Id: <ROSSINI.92Jul27100328@biosun4.harvard.edu>
Date: 27 Jul 92 14:03:28 GMT
Distribution: alt
Organization: Biostat Dept, HSPH, Boston MA, USA.
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


Hello!

I'm having a bit of trouble compiling lemacs-19.2 on a sun with SunOS 4.1.2
(sparc2), gcc-2.2.2, and X11R5.  I installed X11R5 last fall, havn't added
any patches (due to lack of disk space, unfortunately).  Anyhow, in
compiling, I end up with the error:

ld: Undefined symbol
   _XtStrings
   _XtShellStrings

which according to the README implies that I'm linking against the R4 Xt,
but with the R5 header files.  I can't seem to generate a libXt.a that would
be R5, but have the shared libraries (.so.4.10 and .sa.4.10) that should be
R5, but I'm guessing that since emacs wants everything statically linked,
that it doesn't want those two.  So does anyone have any suggestions, or am
I just being stupid? (which might be pretty likely!) (i.e. is there a way to
generate a regular .a library from the shared .so/.sa libraries?)
Or is the only solution to snarf a set of R4 headers?

thanks,
-tony
--
Anthony Rossini       -       rossini@biostat.harvard.edu
Department of Biostatistics, Harvard School of Public Health
677 Huntington Ave, Boston MA 02115  617-432-1056

From help-lucid-emacs-request@lucid.com  Thu Aug  6 09:35:48 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA21261; Thu, 6 Aug 92 09:35:48 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA23420g; Thu, 6 Aug 92 09:22:09 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA29361; Thu, 6 Aug 92 12:32:15 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA29353; Thu, 6 Aug 92 12:32:12 -0400
Received: from USENET (alt.lucid-emacs.help) by news.UU.NET with InterNetNews 
	(5.61/UUNET-mail-leaf) id AA06194; Thu, 6 Aug 92 12:32:53 -0400
Path: uunet!hoptoad!pacbell.com!mips!darwin.sura.net!zaphod.mps.ohio-state.edu!magnus.acs.ohio-state.edu!usenet.ins.cwru.edu!ukma!hsdndev!rossini
From: rossini@hsph.harvard.edu (Anthony Rossini)
Newsgroups: alt.lucid-emacs.help
Subject: Re: compiling 19.2 (am I being stupid?)
Message-Id: <ROSSINI.92Aug6100314@hsph.harvard.edu>
Date: 6 Aug 92 14:03:14 GMT
References: <ROSSINI.92Jul27100328@biosun4.harvard.edu>
Distribution: alt
Organization: Biostat Dept, HSPH, Boston MA, USA.
In-Reply-To: rossini@biosun4.harvard.edu's message of 27 Jul 92 14:03:28 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


Sorry about multiple posts.  Thanks to much help (and patches for using
shared libraries) everything is up and running.  I guess the posting
software here is a bit slow on the routing...

-tony

--
Anthony Rossini       -       rossini@biostat.harvard.edu
Department of Biostatistics, Harvard School of Public Health
677 Huntington Ave, Boston MA 02115  617-432-1056

From help-lucid-emacs-request@lucid.com  Thu Aug  6 10:59:36 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA21462; Thu, 6 Aug 92 10:59:36 PDT
Received: by heavens-gate.lucid.com id AA23832g; Thu, 6 Aug 92 10:48:22 PDT
Received: from uu3.psi.com by heavens-gate.lucid.com id AA23828g; Thu, 6 Aug 92 10:48:05 PDT
Received: from bacon.UUCP by uu3.psi.com (5.65b/4.0.071791-PSI/PSINet)
	id AA05590; Thu, 6 Aug 92 13:58:03 -0400
Received: from yen.moore by bacon.IMSI.COM (4.1/SMI-4.1)
	id AA29384; Thu, 6 Aug 92 13:44:03 EDT
Date: Thu, 6 Aug 92 13:44:03 EDT
From: chris@imsi.com (Chris Payne)
Message-Id: <9208061744.AA29384@IMSI.COM>
Received: by yen.moore (4.1/SMI-4.1)
	id AA18201; Thu, 6 Aug 92 13:43:56 EDT
To: rossini@hsph.harvard.edu (Anthony Rossini)
Cc: help-lucid-emacs@lucid.com
Subject: compiling 19.2 on sparc2/4.1.2 gcc
Newsgroups: alt.lucid-emacs.help
References: <ROSSINI.92Aug6100314@hsph.harvard.edu>
	<ROSSINI.92Jul27100328@biosun4.harvard.edu>

 So, I'm trying to recompile 19.2 with Colas's patches for focus
management.

 I can build temacs and dump it, but then segv in _start.  Seems like
this was just discussed here -- anyone have the answer?

 gcc 2.2.2 on sparc2/4.1.2.  Using -static not -Bstatic & LD=gcc.

Thanks!

/c

From help-lucid-emacs-request@lucid.com  Fri Aug  7 15:48:14 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA03581; Fri, 7 Aug 92 15:48:14 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA29408g; Fri, 7 Aug 92 15:35:07 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA23375; Fri, 7 Aug 92 18:45:15 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA23368; Fri, 7 Aug 92 18:39:13 -0400
Path: uunet!mcsun!uknet!edcastle!edcogsci!cogsci!rjc
From: rjc@cogsci.ed.ac.uk (Richard Caley)
Newsgroups: alt.lucid-emacs.help
Subject: Re: Hiliting in monochrom
Message-Id: <RJC.92Aug7000554@daiches.cogsci.ed.ac.uk>
Date: 6 Aug 92 23:05:54 GMT
References: <26228@sophia.inria.fr> <9208040526.AA18463@amil.co.il>
	<9208051159.AA18022@amil.co.il> <BOSCH.92Aug4214036@moebius.loria.fr>
	<RJC.92Aug5222848@daiches.cogsci.ed.ac.uk>
	<9208052310.AA01501@thalidomide.lucid>
Organization: Human Communication Research Center
Lines: 22
In-Reply-To: jwz@lucid.com's message of 5 Aug 92 23:10:16 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <9208052310.AA01501@thalidomide.lucid>, Jamie Zawinski (jz) writes:

jz> It wouldn't be too hard to add another face attribute which was the
jz> foreground stipple.

That would be useful I think. Obviously there is a point at which
things get silly, but I think it would be reasonable to have much of
the functionality which can be gotten by tweaking an X graphics
context available in a face.

The reason I was interested in this is that I am trying to write a
LaTeX mode which unserstands LaTeX enough to do reasonable indentation
and filling and to use extents to show the structure of the document.
I was thinking of greying out the \begin and \end's and so on and
leaving only their arguents visable. In the extreme it might be
reasonable to have some of the commands disapear entirely, but mostly
I'd want to be able to see what was there, but to have it dim.
Stippling is the best that can be done on a monochrome display. 

--
rjc@cogsci.ed.ac.uk	If music be the food of love are we the indigestion?
			    - Half Man Half Biscuit

From help-lucid-emacs-request@lucid.com  Mon Aug 10 07:53:21 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA10856; Mon, 10 Aug 92 07:53:21 PDT
Received: by heavens-gate.lucid.com id AA06689g; Mon, 10 Aug 92 07:28:48 PDT
Received: from moe.rice.edu by heavens-gate.lucid.com id AA06680g; Mon, 10 Aug 92 07:28:32 PDT
Received: from owlnet.rice.edu (owlnet-50.owlnet.rice.edu) by moe.rice.edu (AA07621); Mon, 10 Aug 92 09:38:47 CDT
Received: from flammulated.owlnet.rice.edu by owlnet.rice.edu (AA21394); Mon, 10 Aug 92 09:38:35 CDT
Received: by flammulated.owlnet.rice.edu (AA02873); Mon, 10 Aug 92 09:38:36 CDT
From: Amit Jayant Patel <amitp@owlnet.rice.edu>
Message-Id: <9208101438.AA02873@flammulated.owlnet.rice.edu>
Subject: LISP highlighting
To: help-lucid-emacs@lucid.com
Date: Mon, 10 Aug 92 9:38:35 CDT
Organization:  High Council of the Advancement of Borg Assimilation Techniques
X-Mailer: ELM [version 2.3 PL11]

I was experimenting with the change hooks to see if they would be
useful in elisp-code highlighting; it's not very usable or clean,
but if anyone wants to take it and make a lisp-highlighter, please
do so!
	
	Amit, amitp@cs.rice.edu

======================================================================
; no docs
; no comments
; this is just an experiment in elisp!
;
; run try-all to highlight the buffer
; as you type, it should highlight all the keywords for you!
;
; beware:  I don't know what I'm doing!

(defvar lisplite::keywords nil)
(make-variable-buffer-local 'lisplite::keywords)

(defvar lisplite::bold-face (find-face 'bold))

(defun i-hook (p)
  "If we are at a '(', then we can take action & perhaps highlight"
  (save-excursion
    (if (equal "(" (buffer-substring p (+ 1 p)))
	(progn
	  (goto-char p)
	  (forward-char 1)
	  (if (re-search-forward "[][{}() \t\n'\"]\\|$" (+ end 30) t)
	      (let* ((e (match-beginning 0))
		     (old (extent-at (+ 1 p) (current-buffer) nil))
		     (word (buffer-substring (+ 1 p) e)))
		(if old (delete-extent old))
		(if (member word lisplite::keywords)
		    (progn
		      (let ((ext (make-extent (+ 1 p) e)))
			(set-extent-attribute ext 'invisible)
			(set-extent-face ext lisplite::bold-face))))))))))

(setq after-change-function 'try-some)
(defvar lisplite::highlighting nil)
(make-variable-buffer-local 'lisplite::highlighting)

(defun try-all ()
  "Highlight the buffer"
  (interactive)
  (if (equal mode-name "Emacs-Lisp")
      (progn
	(setq lisplite::highlighting t)
	(setq lisplite::keywords
	      '("let" "while" "defun" "if" "lambda" "progn" "defvar" "setq"))))
  (if (equal mode-name "Scheme")
      (progn
	(setq lisplite::highlighting t)
	(setq lisplite::keywords
	      '("let" "recur" "define" "if" "lambda" "begin" "case" "set!"))))
  (try-some 0 (point-max) 0))

(defun try-some (start end length)
  (if lisplite::highlighting
      (save-excursion 
	(goto-char (- start 30))
	(let (start)
	  (while (search-forward "(" end t nil)
	    (goto-char (setq start (match-beginning 0)))
	    (i-hook start)
	    (goto-char (+ start 1)))))))

(defun remove-zones ()
  "Un-highlight the buffer"
  (interactive)
  (setq lisplite::highlighting nil)
  (let (e)
    (while (setq e (next-extent (current-buffer)))
      (delete-extent e))))


From help-lucid-emacs-request@lucid.com  Mon Aug 10 09:40:35 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA11209; Mon, 10 Aug 92 09:40:35 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA07036g; Mon, 10 Aug 92 09:18:00 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA01689; Mon, 10 Aug 92 12:28:14 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA01685; Mon, 10 Aug 92 12:28:01 -0400
Path: uunet!mcsun!corton!loria!news.loria.fr!bosch
From: bosch%loria.fr@lucid.com (Guido Bosch)
Newsgroups: alt.lucid-emacs.help
Subject: Re: Newer rcs-sk.el (was Re: reading changed files)
Message-Id: <BOSCH.92Aug10181839@moebius.loria.fr>
Date: 10 Aug 92 16:18:39 GMT
References: <9208050749.AA14527@amil.co.il> <BOSCH.92Aug6101637@moebius.loria.fr>
	<24582@castle.ed.ac.uk>
Reply-To: Guido BOSCH <bosch%loria.fr@lucid.com>
Organization: INRIA-Lorraine / CRIN, Nancy, France
Lines: 77
In-Reply-To: dltest@castle.ed.ac.uk's message of 6 Aug 92 10:18:46 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <24582@castle.ed.ac.uk> dltest@castle.ed.ac.uk (Kevin Davidson) writes:

 > In article <BOSCH.92Aug6101637@moebius.loria.fr> bosch@loria.fr (Guido Bosch) writes:
 > |In article <9208050749.AA14527@amil.co.il> danny@amil.co.il (Danny Bar-Dov) writes:
 > | > [looking for rcs-mode]
 > |
 > |There are a lot of rcs-modes for GNU Emacs out there (too many, after
 > |my opinion). I played around with most of them and found the one of
 > |Sebastian Kremer most satisfactory for my needs (not to big, the command
 > |key bindings are not interferring with other modes)
 > |
 > |;; LISPDIR ENTRY for the Elisp Archive ===============================
 > |;;    LCD Archive Entry:
 > |;;    rcs|Sebastian Kremer|sk@thp.uni-koeln.de
 > |;;    |RCS interface for GNU Emacs
 > |;;    |$Date: 1992/02/10 10:29:26 $|$Revision: 1.55 $|
 > |
 > .....
 > |
 > |(defconst rcs-version  (substring "$Revision: 1.55 $" 11 -2)
 > |  "$Id: rcs.el,v 1.55 1992/02/10 10:29:26 sk Exp $
 > |
 >
 >  Is it wise to post this ? The version I have is:
 >
 >  ;; LISPDIR ENTRY for the Elisp Archive ===============================
 > ;;    LCD Archive Entry:
 > ;;    rcs|Sebastian Kremer|sk@thp.uni-koeln.de
 > ;;    |Simple yet flexible RCS interface for GNU Emacs
 > ;;    |$Date: 1992/05/15 14:09:27 $|$Revision: 1.67 $|
 >  ...
 > (defconst rcs-version  (substring "$Revision: 1.67 $" 11 -2)
 >   "$Id: rcs.el,v 1.67 1992/05/15 14:09:27 sk Exp $
 > ...
 >    Perhaps someone else can say what's changed.


Well, I just grabed the newest version of the LCD-datafile from
ftp@tut.cis.ohio-state.edu:pub/gnu/emacs/elisp-archive/LCD-datafile.Z,
but I can't find any entry on SK's rcs.el in it. Where did you get it
from? If you send me a copy I will check for the changes. 

	Guido

----------------------- *Lisp Directory Apropos* --------------------
		 GNU Emacs Lisp Code Apropos -- "rcs"


dired-rcs	  89-05-19
     Christopher B. Liebman, <liebman.lsbgegpcad@Xerox.Com,uunet!smsdpg!ra!liebman, sundc!ra!liebman>
     tut.cis.ohio-state.edu:pub/gnu/emacs/elisp-archive/as-is/dired-rcs.el.Z
     RCS hack for dired.
rcs-ci-co (1.4)	  87-08-05
     Ed Simpson, <evs@cs.duke.edu>
     tut.cis.ohio-state.edu:pub/gnu/emacs/elisp-archive/interfaces/rcs.shar.Z
     RCS ci/co interface.
rcs-cks (1.35)	  90-05-24
     Chris Siebenmann, <cks@white.toronto.edu>
     tut.cis.ohio-state.edu:pub/gnu/emacs/elisp-archive/interfaces/rcs-cks.el.Z
     RCS interface
rcs-supt.el	  90-03-02
     ?, <guttman@linus.mitre.org>
     tut.cis.ohio-state.edu:pub/gnu/emacs/elisp-archive/interfaces/rcs-supt.el.Z
     RCS Interface
rcs		  
     Pehong Chen, <phc@renoir.berkeley.edu>
     RCS interface.

--
Guido BOSCH, INRIA-Lorraine/CRIN
Institut National de Recherche en Informatique et en Automatique (INRIA)
Centre de Recherche en Informatique de Nancy (CRIN)
Campus scientifique, B.P. 239            
54506 Vandoeuvre-les-Nancy CEDEX       	
Tel.: (+33) 83.91.24.24
Fax.: (+33) 83.41.30.79                	
email: bosch@loria.fr             	

From help-lucid-emacs-request@lucid.com  Tue Aug 11 00:28:36 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA13187; Tue, 11 Aug 92 00:28:36 PDT
Received: by heavens-gate.lucid.com id AA09981g; Tue, 11 Aug 92 00:19:04 PDT
Received: from moebius.loria.fr by heavens-gate.lucid.com id AA09977g; Tue, 11 Aug 92 00:18:48 PDT
Received: by moebius.loria.fr id AA15576
  (5.65c+/IDA-1.4.3 for help-lucid-emacs@lucid.com); Tue, 11 Aug 92 09:29:02 +0200
Date: Tue, 11 Aug 92 09:29:02 +0200
From: Guido Bosch <Guido.Bosch%loria.fr@lucid.com>
Message-Id: <9208110729.AA15576@moebius.loria.fr>
To: help-lucid-emacs@lucid.com
Subject: Unpredictable initialization of the highlight face 
Reply-To: Guido BOSCH <bosch%loria.fr@lucid.com>

Sometimes, not very often - but often enough to be mentioned here -
my Lucid Emacs 19.2 starts up with the following unusual higlight face
setting:

-------------------- *scratch* --------------------
(find-face 'highlight)
[face highlight 2 nil "white" "black" nil nil]

(face-background (find-face 'highlight))
"black"
(face-foreground (find-face 'highlight))
"white"
(face-background-pixmap (find-face 'highlight))
nil

----------------------------------------------------

The effect is that all highlighting is done in inverse video style.
Has somebody observerd the same behavior? Any idea where this comes
from?

	Guido


From help-lucid-emacs-request@lucid.com  Tue Aug 11 04:15:30 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA14126; Tue, 11 Aug 92 04:15:30 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA10371g; Tue, 11 Aug 92 04:02:17 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA18133; Tue, 11 Aug 92 07:12:26 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA18124; Tue, 11 Aug 92 07:12:24 -0400
Path: uunet!mcsun!corton!loria!news.loria.fr!bosch
From: bosch%loria.fr@lucid.com (Guido Bosch)
Newsgroups: alt.lucid-emacs.help
Subject: Re: Newer rcs-sk.el
Message-Id: <BOSCH.92Aug11130506@moebius.loria.fr>
Date: 11 Aug 92 11:05:06 GMT
References: <9208050749.AA14527@amil.co.il> <BOSCH.92Aug6101637@moebius.loria.fr>
	<24582@castle.ed.ac.uk> <BOSCH.92Aug10181839@moebius.loria.fr>
Reply-To: Guido BOSCH <bosch%loria.fr@lucid.com>
Organization: INRIA-Lorraine / CRIN, Nancy, France
Lines: 26
In-Reply-To: bosch@loria.fr's message of 10 Aug 92 16:18:39 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Danny Bar-Dov <danny@amil.co.il> gave me a pointer where to find a
newer version of Sebastian Kremers  rcs.el package. It is on

	ftp.cs.buffalo.edu:pub/Emacs/rcs.tar.Z

With this version, there is no longer need to patch rcs.el, as I
posted earlier in this Newsgroup. There exists a particular hook for
that:

	(add-hook 'rcs-diff-buffer-hook 'diff-mode)
in your .emacs will perfectly do the job. 

There is also a texinfo file in the tar.  It would be nice if this
package could be included into the next release of lemacs.


	Guido
--
Guido BOSCH, INRIA-Lorraine/CRIN
Institut National de Recherche en Informatique et en Automatique (INRIA)
Centre de Recherche en Informatique de Nancy (CRIN)
Campus scientifique, B.P. 239            
54506 Vandoeuvre-les-Nancy CEDEX       	
Tel.: (+33) 83.91.24.24
Fax.: (+33) 83.41.30.79                	
email: bosch@loria.fr             	

From help-lucid-emacs-request@lucid.com  Tue Aug 11 04:39:39 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA14155; Tue, 11 Aug 92 04:39:39 PDT
Received: by heavens-gate.lucid.com id AA10430g; Tue, 11 Aug 92 04:27:57 PDT
Received: from SLCS.SLB.COM by heavens-gate.lucid.com id AA10425g; Tue, 11 Aug 92 04:27:46 PDT
Received: from brutus.bl.cad.slb.com ([129.87.159.179])
	by SLCS.SLB.COM (4.1/SLCS Mailhost 3.13)
	id AA26442; Tue, 11 Aug 92 06:37:35 CDT
Return-Path: <shibuya@mailhost.bl.cad.slb.com>
Received: from chute.bl.cad.slb.com by brutus.bl.cad.slb.com (4.0/SMI-2.2)
	id AA00949; Tue, 11 Aug 92 07:39:13 EDT
Received: by chute.bl.cad.slb.com (5.57/Ultrix3.0-C)
	id AA00635; Tue, 11 Aug 92 07:38:08 -0400
Date: Tue, 11 Aug 92 07:38:08 -0400
From: shibuya@mailhost.bl.cad.slb.com (Hiroto Shibuya)
Message-Id: <9208111138.AA00635@chute.bl.cad.slb.com>
To: help-lucid-emacs@lucid.com
Subject: patches for DECstation?
Reply-To: shibuya@mailhost.bl.cad.slb.com

Is their an official patch for building lemacs19.2 on DECstation?
Following this group for a months, different people seems to have
different milage on this machine, but I haven't seen any patches
posted yet.  Could anybody post one?

				Hiroto Shibuya
			
				shibuya@mailhost.bl.cad.slb.com
				Schlumberger Technologies 
				CAD/CAM Division


From help-lucid-emacs-request@lucid.com  Tue Aug 11 05:00:03 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA14184; Tue, 11 Aug 92 05:00:03 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA10472g; Tue, 11 Aug 92 04:48:18 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA29487; Tue, 11 Aug 92 07:58:28 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA29483; Tue, 11 Aug 92 07:58:26 -0400
Path: uunet!mcsun!corton!loria!news.loria.fr!bosch
From: bosch%loria.fr@lucid.com (Guido Bosch)
Newsgroups: alt.lucid-emacs.help
Subject: Re: LISP highlighting
Message-Id: <BOSCH.92Aug11134515@moebius.loria.fr>
Date: 11 Aug 92 11:45:15 GMT
References: <9208101438.AA02873@flammulated.owlnet.rice.edu>
Reply-To: Guido BOSCH <bosch%loria.fr@lucid.com>
Organization: INRIA-Lorraine / CRIN, Nancy, France
Lines: 50
In-Reply-To: amitp@owlnet.rice.edu's message of 10 Aug 92 14:38:35 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <9208101438.AA02873@flammulated.owlnet.rice.edu> amitp@owlnet.rice.edu (Amit Jayant Patel) writes:

 > I was experimenting with the change hooks to see if they would be
 > useful in elisp-code highlighting; it's not very usable or clean,
 > but if anyone wants to take it and make a lisp-highlighter, please
 > do so!

Yeah, great!!  Now try this version of the `i-hook' function (for
elisp only). It puts built-in functions in bold and all other
functions in bold-italic.  Certainly not very useful on black & white
screens, but with a color screen ... (oh God, and I don't have one 8-(

Who knows how to make comments appear in italic??

	Guido


(defvar lisplite::bold-face (find-face 'bold))
(defvar lisplite::bold-italic-face (find-face 'bold-italic))

(defun i-hook (p)
  "If we are at a '(', then we can take action & perhaps highlight"
  (save-excursion
    (if (equal "(" (buffer-substring p (+ 1 p)))
	(progn
	  (goto-char p)
	  (forward-char 1)
	  (if (re-search-forward "[][{}() \t\n'\"]\\|$" (+ end 30) t)
	      (let* ((e (match-beginning 0))
		     (old (extent-at (+ 1 p) (current-buffer) nil))
		     (word (buffer-substring (+ 1 p) e))
		     (lisp-symbol (intern-soft word)))
		(if old (delete-extent old))
		
		(if (fboundp lisp-symbol)
		    (let ((ext (make-extent (+ 1 p) e)))
		      (set-extent-attribute ext 'invisible)
		      (cond ((subrp (symbol-function lisp-symbol))
			     (set-extent-face ext lisplite::bold-face))
			    (t (set-extent-face ext lisplite::bold-italic-face)))))))))))
		
--
Guido BOSCH, INRIA-Lorraine/CRIN
Institut National de Recherche en Informatique et en Automatique (INRIA)
Centre de Recherche en Informatique de Nancy (CRIN)
Campus scientifique, B.P. 239            
54506 Vandoeuvre-les-Nancy CEDEX       	
Tel.: (+33) 83.91.24.24
Fax.: (+33) 83.41.30.79                	
email: bosch@loria.fr             	

From help-lucid-emacs-request@lucid.com  Tue Aug 11 05:23:17 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA14233; Tue, 11 Aug 92 05:23:17 PDT
Received: by heavens-gate.lucid.com id AA10512g; Tue, 11 Aug 92 05:11:39 PDT
Received: from reks.uia.ac.be by heavens-gate.lucid.com id AA10506g; Tue, 11 Aug 92 05:09:58 PDT
Received: by reks.uia.ac.be (5.57/Ultrix3.0-C)
	id AA05024; Tue, 11 Aug 92 13:58:57 +0200
Received: from kiwi8.kiwi (kiwi8.uia.ac.be) by kiwi.uia.ac.be (4.1/SMI-4.1)
	id AA26770; Tue, 11 Aug 92 14:01:36 +0200
Date: Tue, 11 Aug 92 14:01:36 +0200
From: frans%kiwi.uia.ac.be@lucid.com (Francois Staes)
Message-Id: <9208111201.AA26770@kiwi.uia.ac.be>
To: help-lucid-emacs@lucid.com
Subject: Application Defaults


The documentation of Lucid Emacs mentions an application defaults file for it.
However, i can't find this file in the distribution...

Another problem I have is that when I start lucid emacs with the option
-font <font> it seems that this font is used only for the menu, not for the
edit window itself. Am I doing something wrong, or is it a known problem ?


Francois Staes
University of Antwerp
Antwerp, Belgium
Email: frans@kiwi.uia.ac.be

From help-lucid-emacs-request@lucid.com  Tue Aug 11 10:04:48 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA14818; Tue, 11 Aug 92 10:04:48 PDT
Received: by heavens-gate.lucid.com id AA11318g; Tue, 11 Aug 92 09:55:49 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA11314g; Tue, 11 Aug 92 09:55:35 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA07496; Tue, 11 Aug 92 10:05:57 PDT
Date: Tue, 11 Aug 92 10:05:57 PDT
Message-Id: <9208111705.AA07496@thalidomide.lucid>
X-Windows: Form follows malfunction.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: frans%kiwi.uia.ac.be@lucid.com (Francois Staes)
Cc: help-lucid-emacs@lucid.com
Subject: Re: Application Defaults
In-Reply-To: Francois Staes's message of Tue 11-Aug-92 14:01:36 +0200 <9208111201.AA26770@kiwi.uia.ac.be>
References: <9208111201.AA26770@kiwi.uia.ac.be>

In message <9208111201.AA26770@kiwi.uia.ac.be> Francois Staes wrote:
>
> The documentation of Lucid Emacs mentions an application defaults file for
> it.  However, i can't find this file in the distribution...

The documentation is a little out of date; you don't need an app-defaults
file. 

> Another problem I have is that when I start lucid emacs with the option
> -font <font> it seems that this font is used only for the menu, not for the
> edit window itself. Am I doing something wrong, or is it a known problem ?

Works for me.  It must be interfering with something in your resource
database.  Do "xrdb </dev/null", I'll bet that makes the problem go away.
(It seems obvious that the command line should always override the resource 
database, but that's almost impossible to do with any moderately complicated
X program because X resources are so goofy.)

	-- Jamie

From help-lucid-emacs-request@lucid.com  Tue Aug 11 10:09:19 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA14840; Tue, 11 Aug 92 10:09:19 PDT
Received: by heavens-gate.lucid.com id AA11350g; Tue, 11 Aug 92 10:00:08 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA11340g; Tue, 11 Aug 92 09:59:57 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA07518; Tue, 11 Aug 92 10:10:18 PDT
Date: Tue, 11 Aug 92 10:10:18 PDT
Message-Id: <9208111710.AA07518@thalidomide.lucid>
X-Windows: There's got to be a better way.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: shibuya@mailhost.bl.cad.slb.com
Cc: help-lucid-emacs@lucid.com
Subject: Re: patches for DECstation?
In-Reply-To: Hiroto Shibuya's message of Tue 11-Aug-92 07:38:08 -0400 <9208111138.AA00635@chute.bl.cad.slb.com>
References: <9208111138.AA00635@chute.bl.cad.slb.com>

In message <9208111138.AA00635@chute.bl.cad.slb.com> Hiroto Shibuya wrote:
>
> Is their an official patch for building lemacs19.2 on DECstation?

I have incorporated most of the portability patches sent to me, including
Decstation, if I remember correctly.  This will be in 19.3, which should
be out in a few weeks (it's just about ready, but we're really busy with
non-Emacs-related things now.)

	-- Jamie

From help-lucid-emacs-request@lucid.com  Tue Aug 11 10:11:49 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA14856; Tue, 11 Aug 92 10:11:49 PDT
Received: by heavens-gate.lucid.com id AA11368g; Tue, 11 Aug 92 10:02:37 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA11364g; Tue, 11 Aug 92 10:02:27 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA07533; Tue, 11 Aug 92 10:12:48 PDT
Date: Tue, 11 Aug 92 10:12:48 PDT
Message-Id: <9208111712.AA07533@thalidomide.lucid>
X-Windows: Power tools for power fools.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: Guido BOSCH <bosch%loria.fr@lucid.com>
Cc: help-lucid-emacs@lucid.com
Subject: Re: Unpredictable initialization of the highlight face 
In-Reply-To: Guido Bosch's message of Tue 11-Aug-92 09:29:02 +0200 <9208110729.AA15576@moebius.loria.fr>
References: <9208110729.AA15576@moebius.loria.fr>

In message <9208110729.AA15576@moebius.loria.fr> Guido Bosch wrote:
>
> The effect is that all highlighting is done in inverse video style.
> Has somebody observerd the same behavior? Any idea where this comes
> from?

The relevant code from lisp/x11/x-faces.el is 

	(condition-case ()
	    (set-face-background-pixmap 'highlight "gray1" screen)
	  (error (invert-face 'highlight screen)))

which probably means that emacs isn't finding or being able to read the
"gray1" bitmap file. 

	- Jamie

From help-lucid-emacs-request@lucid.com  Tue Aug 11 13:41:14 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA15593; Tue, 11 Aug 92 13:41:14 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA12225g; Tue, 11 Aug 92 13:29:16 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA21030; Tue, 11 Aug 92 16:39:33 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA21023; Tue, 11 Aug 92 16:39:30 -0400
Newsgroups: alt.lucid-emacs.help,gnu.epoch.misc
Path: uunet!mcsun!Germany.EU.net!pbinfo2!joost
From: joost%cadlab.de@lucid.com (Michael Joosten)
Subject: Keyboards - how to differentiate between them ??
Message-Id: <JOOST.92Aug11222437@ori.cadlab.de>
Nntp-Posting-Host: ori.cadlab.uni-paderborn.de
Reply-To: joost%cadlab.uni-paderborn.de@lucid.com
Organization: CADLAB, Paderborn, FRG
Date: Tue, 11 Aug 1992 21:24:37 GMT
Lines: 36
Xref: uunet alt.lucid-emacs.help:245 gnu.epoch.misc:1369
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

It's the same problem as with Epoch:

Now we have all these fancy features for keybindings, either directly in Lucid
Emacs or indirectly in Epoch via epoch::rebind-key. But what if I want/have to
use different X-Terminals or workstations, especially those with 'queer'
function keys like Apollo DN's ? 

Ok, we could use the vendor string as delivered via XOpenDisplay. But the
generic MIT servers simply return the same string, not to mention that this
string is not accessible from EmacsLisp.

Another way I just discovered was to use either xrdb to put a special resource
in the server or to set via "xsetroot -name " the window name of the root
window to something 'usefull' (like Sun4, ApolloDN, SGI-Indigo, RS6k-MF2,
etc). The latter is simple to use in Epoch: just do a (get-property "WM_NAME"
(car (query-tree)) { (car ...) returns the Window object of the root window}.
Lucid Emacs has apparently no such facilities for retrieving properties, right?

The other way is to put something like '*keyboardType: Sun4' in the
resource database. Then one can query the value by means of (x-get-resource
"keyboardType" "KeyboardType" 'string) resp. (get-default "keyboardType").
Is there any resource name for what I intend to do yet in use?

Any other ideas? 

Michael
--
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| Michael Joosten   |       Tel.  : (+49) (+) 5251-284 120                 |
| CADLAB            |       Fax   : (+49) (+) 5251-284 140                 |
| Bahnhofstr. 32    |       E-Mail: joost@cadlab.de                        |
| D-4790 Paderborn  |        	    ...!uunet!unido!cadlab!joost           | 
| FRG               | Mass mail to: joost@pbinfo.uni-paderborn.de          |
|--------------------------------------------------------------------------|
| CADLAB is a cooperation between Uni-GH Paderborn & SNI AG                |
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

From help-lucid-emacs-request@lucid.com  Tue Aug 11 14:15:35 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA15737; Tue, 11 Aug 92 14:15:35 PDT
Received: by heavens-gate.lucid.com id AA12390g; Tue, 11 Aug 92 14:06:44 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA12383g; Tue, 11 Aug 92 14:06:21 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA08317; Tue, 11 Aug 92 14:16:45 PDT
Date: Tue, 11 Aug 92 14:16:45 PDT
Message-Id: <9208112116.AA08317@thalidomide.lucid>
X-Windows: The first fully modular software disaster.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: joost%cadlab.uni-paderborn.de@lucid.com
Cc: help-lucid-emacs@lucid.com
Subject: Re: Keyboards - how to differentiate between them ??
Newsgroups: alt.lucid-emacs.help,gnu.epoch.misc
In-Reply-To: Michael Joosten's message of Tue 11-Aug-92 21:24:37 GMT <JOOST.92Aug11222437@ori.cadlab.de>
References: <JOOST.92Aug11222437@ori.cadlab.de>

In message <JOOST.92Aug11222437@ori.cadlab.de> Michael Joosten wrote:
>
> Now we have all these fancy features for keybindings, either directly in
> Lucid Emacs or indirectly in Epoch via epoch::rebind-key. But what if I
> want/have to use different X-Terminals or workstations, especially those
> with 'queer' function keys like Apollo DN's ?

Add this to the list of Really Stupid Things that X Left Out.

Possibly the reason that X gives you no way to identify the keyboard hardware
in use is that, philosophically speaking, you shouldn't care, because the
keysyms will be the same from keyboard to keyboard.  If you bind something
to F1, then it will work on any keyboard with an F1 key.

Of course, whatever monster intellect was responsible for the Xsun server
decided that F15 was a really good name for the key which is physically
labeled both "Front" and "L5", so this notion breaks down pretty quickly.

And of course, the propellerheads who designed (and I use the term loosely)
the "keycode/keysym/modifier" model, and that glowing beacon of usability
that we call "xmodmap" conveniently made it impossible to write an xmodmap
script that can function without having special knowledge about either: 
what keyboard hardware you're using, or: its current state of mungedness.

And of course, Sun and MIT can't even agree on what the default keymap
should be for Sun's own keyboard hardware, so it's not enough to know what
keyboard you have sitting on your desk, you also have to know whose server
you're running.

And of course, for those few vendor-defined keysyms that are actually
useful, neither Sun, nor DEC, nor HP, nor MIT can agree on what the names
of them are.  MIT thinks that Sun uses the prefix "SunFA_".  Sun disagrees:
they use the prefix "SunXK_FA_".  MIT thinks DEC's keysyms begin with "D".
Sun disagrees: they think that DEC's keysyms begin with "DXK_".  I don't
know what DEC thinks.  And so on for the various perumtations.  Nevermind
the fact that the keysyms in question serve the same purpose regardless of
the vendor.

> Ok, we could use the vendor string as delivered via XOpenDisplay. But the
> generic MIT servers simply return the same string, not to mention that this
> string is not accessible from EmacsLisp.

That should be accessible from elisp, for all the good it will do you.  For
a laugh, look at the code that xkeycaps uses to intuit what keyboard you're
using.  It's in guess.c (xkeycaps is on export.lcs.mit.edu.)

> Another way I just discovered was to use either xrdb to put a special
> resource in the server or to set via "xsetroot -name " the window name of
> the root window to something 'usefull' (like Sun4, ApolloDN, SGI-Indigo,
> RS6k-MF2, etc).
> 
> The other way is to put something like '*keyboardType: Sun4' in the
> resource database.

Why bother doing this?  At some point you have to decide what kind of
keyboard you're using.  Why not just do that magic in elisp, or just set
an environment variable or something.

> Lucid Emacs has apparently no such facilities for retrieving properties,
> right?

Not in a user-accessible way, but it would be fairly easy to modify some
of the property-munging code in xselect.c to be user-callable.

> Any other ideas? 

Give up hacking and become a tortured artist.  Eat sushi and don't pay.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Tue Aug 11 15:04:55 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA15870; Tue, 11 Aug 92 15:04:55 PDT
Received: by heavens-gate.lucid.com id AA12631g; Tue, 11 Aug 92 14:52:53 PDT
Received: from mwunix.mitre.org by heavens-gate.lucid.com id AA12627g; Tue, 11 Aug 92 14:52:41 PDT
Return-Path: <lamour@maestro.mitre.org>
Received: from maestro.mitre.org by mwunix.mitre.org (5.61/SMI-2.2)
	id AA19505; Tue, 11 Aug 92 18:00:42 -0400
Received: from gong.mitre.org by maestro.mitre.org (4.1/SMI-4.1)
	id AA03604; Tue, 11 Aug 92 18:02:23 EDT
Date: Tue, 11 Aug 92 18:02:23 EDT
From: lamour@maestro.mitre.org (Michael Lamoureux)
Message-Id: <9208112202.AA03604@maestro.mitre.org>
Received: by gong.mitre.org (4.1/SMI-4.1)
	id AA01391; Tue, 11 Aug 92 18:02:22 EDT
To: help-lucid-emacs@lucid.com
Subject: 2 questions

	Both of these deal with the non-elisp part of emacs.

	First question.  Simple.  I am continually bothered by the
fact that the highlighted regions do not get deleted when I start
typing.  All word processors that I have used lately do this by
default.  Thus it's somewhat non-intuitive for emacs to just insert
the new text and leave the old text.  I figured, no problem, I'll just
modify self-insert-command to clear any zmacs regions before
inserting, but self-insert-command is in the C part of emacs, and I
have no idea how to do this in the maze of lispish C code.  Anyone
have any clues as to how to do this?  (Of course, a variable to turn
this behavior on and off might be in order.)

	Second, I asked Jamie about this, and got a partial answer,
but he must be too busy working on 19.3 to get back to me with the
rest of the answer.  I was trying to get get-screen-for-buffer to work
as documented.  I did a grep through the source, and I determined that
get-screen-for-buffer never get's called.  So I figured it just didn't
work, but after much tinkering, I found that you do get the documented
behavior when switch-to-buffer-other-window is called.  So now I'm
baffled.  I don't know why it works at all, and I don't know why, if
it works at all, that it doesn't work as documented.  I traced it down
to the C code again, and gave up.  Any tips or clues?

Here's an approximation of what I have in my .emacs for this:

;; testing the get-screen-for-buffer stuff
     (setq pre-display-buffer-hook 'get-screen-for-buffer)
     (setq screen-default-alist '((width . 81) (height . 55)))
     (put 'vm-mode 'screen-name 'VM)
     (put 'VM 'instance-limit 5)
     (put 'VM 'screen-defaults '((top . 140) (left . 600)))
     (put 'mail-mode 'screen-name 'Mail)
     (put 'Mail 'instance-limit 2)
     (put 'perl-mode 'screen-name 'Perl)
     (put 'Perl 'instance-limit 5)
     (put 'emacs-lisp-mode 'screen-name 'Emacs-Lisp)
     (put 'Emacs-Lisp 'instance-limit 5)
     (put 'c-mode 'screen-name 'C)
     (put 'C 'instance-limit 10)
     (put 'gnus-newsgroup-mode 'screen-name 'Newsgroups)
     (put 'Newsgroups 'instance-limit 1)
     (put 'sm-manual-mode 'screen-name 'Man)
     (put 'Man 'instance-limit 7)
     (put 'lisp-interaction-mode 'screen-name 'Lisp-Interaction)
     (put 'Lisp-Interaction 'instance-limit 5)
     (put 'compilation-mode 'screen-name 'Compile)
     (put 'Compile 'instance-limit 1)
     (put 'Compile 'screen-defaults '((width . 80) (height . 24)))

etc...  You get the idea.

	Anyway, what happens is mostly nothing.  If you use
switch-to-buffer-other-window to display a buffer of one of these
types, it works mostly like it's documented (sometimes it actually
splits the current screen and creates both the other screen AND the
"other window").
	One odd thing is that when the VM summary buffer and the VM
message buffer are in different screens, the summary buffer does not
follow the selected message when changed from the message buffer, but
both work fine when all message changing is done from the summary
buffer.

Any clues, tips, or pointers?


Thanks,
Michael
lamour@mitre.org

From help-lucid-emacs-request@lucid.com  Tue Aug 11 15:17:37 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA15895; Tue, 11 Aug 92 15:17:37 PDT
Received: by heavens-gate.lucid.com id AA12714g; Tue, 11 Aug 92 15:08:31 PDT
Received: from scylla.lucid (scylla.lucid.com) by heavens-gate.lucid.com id AA12710g; Tue, 11 Aug 92 15:08:19 PDT
Received: by scylla.lucid (4.1/SMI-4.1)
	id AA04939; Tue, 11 Aug 92 15:17:09 PDT
Date: Tue, 11 Aug 92 15:17:09 PDT
From: devin%scylla@lucid.com (Matthieu Devin)
Message-Id: <9208112217.AA04939@scylla.lucid>
To: lamour@maestro.mitre.org (Michael Lamoureux)
Cc: help-lucid-emacs@lucid.com
Subject: Re: 2 questions
In-Reply-To: Michael Lamoureux's message of Tue 11-Aug-92 18:02:23 EDT <9208112202.AA03604@maestro.mitre.org>
References: <9208112202.AA03604@maestro.mitre.org>

> 	First question.  Simple.  I am continually bothered by the
> fact that the highlighted regions do not get deleted when I start
> typing.  All word processors that I have used lately do this by
> default.  Thus it's somewhat non-intuitive for emacs to just insert
> the new text and leave the old text.  

I had the same problem and wrote a pending-delete package in e-lisp.  Doing it
right mean modify the C-code code so it just *mostly* work.  It's in 19.3. but
it's not big so its also in the mail:

------------8<---- save as pending-del.el in lisp/packages -------8<--------
;;; Pending delete selection
;;; Copyright (C) 1985, 1986, 1987, 1992 Free Software Foundation, Inc.
;;; Created: 14 Jul 92, Matthieu Devin <devin@lucid.com>
;;; Last change  15-jul-92. devin

;;; This file is part of GNU Emacs.

;;; GNU Emacs is free software; you can redistribute it and/or modify
;;; it under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 2, or (at your option)
;;; any later version.

;;; GNU Emacs is distributed in the hope that it will be useful,
;;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
;;; GNU General Public License for more details.

;;; You should have received a copy of the GNU General Public License
;;; along with GNU Emacs; see the file COPYING.  If not, write to
;;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.

;;; This files makes the active region be pending delete, meaning that
;;; text inserted while the region is active will replace the region contents.
;;; This is a popular behavior of personal computers text editors.

(defun delete-active-region (&optional killp)
  (if (and (not buffer-read-only)
	   (extentp primary-selection-extent)
	   (< 0 (extent-start-position primary-selection-extent))
	   (< 0 (extent-end-position primary-selection-extent)))
      (if killp
	  (kill-region (extent-start-position primary-selection-extent)
		       (extent-end-position primary-selection-extent))
	(delete-region (extent-start-position primary-selection-extent)
		       (extent-end-position primary-selection-extent)))))

(defmacro pending-delete-supercede (fun)
  (let ((pending-delete-name
	 (intern (concat "pending-delete-original-" (symbol-name fun)))))
    (list 'if (list 'not (list 'fboundp (list 'quote pending-delete-name)))
	  (list 'fset (list 'quote pending-delete-name)
		(list 'symbol-function (list 'quote fun))))))

(pending-delete-supercede self-insert-command)
(defun self-insert-command (arg)
  "Insert the character you type.
Whichever character you type to run this command is inserted."
  (interactive "p")
  (if (mark)
      (delete-active-region))
  (pending-delete-original-self-insert-command arg))
  
(pending-delete-supercede yank)
(defun yank (arg)
  "Reinsert the last stretch of killed text.
More precisely, reinsert the stretch of killed text most recently
killed OR yanked.
With just C-U as argument, same but put point in front (and mark at end).
With argument n, reinsert the nth most recently killed stretch of killed
text.
See also the command \\[yank-pop]."
  (interactive "p")
  (if (mark)
      (delete-active-region))
  (pending-delete-original-yank))

(defun x-yank-clipboard-selection ()
  "If someone owns a Clipboard selection, insert it in place of our selection."
  (interactive)
  (setq last-command nil)
  (let ((clip (x-get-clipboard)))
    (or clip (error "there is no clipboard selection"))
    (if (mark)
	(delete-active-region))
    (insert clip)))

(pending-delete-supercede delete-backward-char)
(defun delete-backward-char (arg &optional killp)
  "Delete characters backward, changing tabs into spaces.
Delete ARG chars, and kill (save in kill ring) if KILLP is non-nil.
Interactively, ARG is the prefix arg (default 1)
and KILLP is t if prefix arg is was specified."
  (interactive "*p\nP")
  (if (mark)
      (delete-active-region killp)
    (pending-delete-original-delete-backward-char arg killp)))

(pending-delete-supercede backward-delete-char-untabify)
(defun backward-delete-char-untabify (arg &optional killp)
  "Delete characters backward, changing tabs into spaces.
Delete ARG chars, and kill (save in kill ring) if KILLP is non-nil.
Interactively, ARG is the prefix arg (default 1)
and KILLP is t if prefix arg is was specified."
  (interactive "*p\nP")
  (if (mark)
      (delete-active-region killp)
    (pending-delete-original-backward-delete-char-untabify arg killp)))


;;; Uses active regions
(setq zmacs-regions t)


From help-lucid-emacs-request@lucid.com  Tue Aug 11 15:33:12 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA15933; Tue, 11 Aug 92 15:33:12 PDT
Received: by heavens-gate.lucid.com id AA12777g; Tue, 11 Aug 92 15:24:20 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA12773g; Tue, 11 Aug 92 15:23:51 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA14929; Tue, 11 Aug 92 15:32:44 PDT
Date: Tue, 11 Aug 92 15:32:44 PDT
Message-Id: <9208112232.AA14929@thalidomide.lucid>
X-Windows: Flakey and built to stay that way.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: lamour@maestro.mitre.org (Michael Lamoureux)
Cc: help-lucid-emacs@lucid.com
Subject: Re: 2 questions
In-Reply-To: Michael Lamoureux's message of Tue 11-Aug-92 18:02:23 EDT <9208112202.AA03604@maestro.mitre.org>
References: <9208112202.AA03604@maestro.mitre.org>

In message <9208112202.AA03604@maestro.mitre.org> Michael Lamoureux wrote:
>
> I was trying to get get-screen-for-buffer to work as documented.  I did a
> grep through the source, and I determined that get-screen-for-buffer never
> get's called.

It's called by virtue of begin the value of pre-display-buffer-hook, which 
is called from display-buffer.  The problem is that there are several other
ways that buffers can get displayed besides calling display-buffer.  If you 
do find-file, it just calls switch-to-buffer, meaning reuse the current 
window. If you do find-file-other-window, it uses display-buffer, so it
should pop up in another screen.

> I don't know why it works at all, and I don't know why, if it works at all,
> that it doesn't work as documented.  

I think it does work as documented, but it's not clear that what it does is
all that useful.

I'm doubtful that any kind of automatically-create-and-select-screens-for-
certain-buffers mechanism can be made to work in a non-infuriating way;
obviously the current get-screen-for-buffer mechanism doesn't cut it, but
neither did any of the other methods I've seen.

I use multiple screens, but I always manage them manually.  No screen is 
ever selected automatically.  If I want to display a shell buffer in another
screen, then I create a screen and switch to the shell there.  I'm fairly
happy with this way of doing things, but if someone comes up with a useful
automatic mechanism, I'll put it in (as long as it's easy to turn off...)

	-- Jamie

From help-lucid-emacs-request@lucid.com  Wed Aug 12 06:01:41 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA17930; Wed, 12 Aug 92 06:01:41 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA14943g; Wed, 12 Aug 92 05:49:45 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA22584; Wed, 12 Aug 92 09:00:02 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA22577; Wed, 12 Aug 92 08:59:59 -0400
Path: uunet!mcsun!uknet!edcastle!aifh!aifh!tfb
From: tfb@aisb.ed.ac.uk (Tim Bradshaw)
Newsgroups: alt.lucid-emacs.help
Subject: Re: 2 questions
Message-Id: <TFB.92Aug12134552@eagle.aisb.ed.ac.uk>
Date: 12 Aug 92 12:45:52 GMT
References: <9208112202.AA03604@maestro.mitre.org>
	<9208112232.AA14929@thalidomide.lucid>
Organization: Not
Lines: 32
In-Reply-To: jwz@lucid.com's message of 11 Aug 92 22:32:44 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

>>>>> On 11 Aug 92 22:32:44 GMT, jwz@lucid.com (Jamie Zawinski) said:

> In message <9208112202.AA03604@maestro.mitre.org> Michael Lamoureux wrote:
>>
>> I was trying to get get-screen-for-buffer to work as documented.  I did a
>> grep through the source, and I determined that get-screen-for-buffer never
>> get's called.

> It's called by virtue of begin the value of pre-display-buffer-hook, which 
> is called from display-buffer.  The problem is that there are several other
> ways that buffers can get displayed besides calling display-buffer.  If you 
> do find-file, it just calls switch-to-buffer, meaning reuse the current 
> window. If you do find-file-other-window, it uses display-buffer, so it
> should pop up in another screen.

>> I don't know why it works at all, and I don't know why, if it works at all,
>> that it doesn't work as documented.  

> I think it does work as documented, but it's not clear that what it does is
> all that useful.

I think that get-screen-for-buffer works correctly.  However I am
fairly sure that the code that drives it is broken in some way.  I
have code that uses it to display manual pages in their own screens &
quite often but in some unpredictable way, the wrong buffer ends up in
the newly created screen.  I looked at what get-screen-for-buffer was
doing and it creates & returns the correct screen, but somewhere after
then the buffer-screen correspondence is lost.  I couldn't really work
out what was doing this but it seemed to be obscure, and I'm still not
100% sure it's not my misunderstanding of what is meant to happen.

--tim

From help-lucid-emacs-request@lucid.com  Wed Aug 12 07:44:43 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA18226; Wed, 12 Aug 92 07:44:43 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA15219g; Wed, 12 Aug 92 07:32:36 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA14749; Wed, 12 Aug 92 10:42:48 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA14743; Wed, 12 Aug 92 10:42:45 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!cs.utexas.edu!torn!cunews!nrcnet0!bnrgate!bwdls61!bwdls138!jsparkes
From: jsparkes%bwdls138.bnr.ca@lucid.com (Jeff Sparkes)
Subject: get-screen-for-buffer + raise under tvtwm (was: 2 questions)
Message-Id: <1992Aug12.142522.5435@bwdls61.bnr.ca>
Nntp-Posting-Host: bwdls138
Organization: Bell-Northern Research Ltd., Ottawa
References: <9208112202.AA03604@maestro.mitre.org> <9208112232.AA14929@thalidomide.lucid> <TFB.92Aug12134552@eagle.aisb.ed.ac.uk>
Date: Wed, 12 Aug 1992 14:25:22 GMT
Lines: 53
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <TFB.92Aug12134552@eagle.aisb.ed.ac.uk> tfb@aisb.ed.ac.uk (Tim Bradshaw) writes:
>>>>>> On 11 Aug 92 22:32:44 GMT, jwz@lucid.com (Jamie Zawinski) said:
>
>> In message <9208112202.AA03604@maestro.mitre.org> Michael Lamoureux wrote:
>>>
>>> I was trying to get get-screen-for-buffer to work as documented.  I did a
>>> grep through the source, and I determined that get-screen-for-buffer never
>>> get's called.
>
>> It's called by virtue of begin the value of pre-display-buffer-hook, which 
>> is called from display-buffer.  The problem is that there are several other
>> ways that buffers can get displayed besides calling display-buffer.  If you 
>> do find-file, it just calls switch-to-buffer, meaning reuse the current 
>> window. If you do find-file-other-window, it uses display-buffer, so it
>> should pop up in another screen.
>
>>> I don't know why it works at all, and I don't know why, if it works at all,
>>> that it doesn't work as documented.  
>
>> I think it does work as documented, but it's not clear that what it does is
>> all that useful.
>
>I think that get-screen-for-buffer works correctly.  However I am
>fairly sure that the code that drives it is broken in some way.  I
>have code that uses it to display manual pages in their own screens &
>quite often but in some unpredictable way, the wrong buffer ends up in
>the newly created screen.  I looked at what get-screen-for-buffer was
>doing and it creates & returns the correct screen, but somewhere after
>then the buffer-screen correspondence is lost.  I couldn't really work
>out what was doing this but it seemed to be obscure, and I'm still not
>100% sure it's not my misunderstanding of what is meant to happen.

This whole thread sounded interesting, so I started playing with
get-screen-for-buffer.  A little poking around in files.el, and the
using the advise package led me to this:

(require 'advise)
(advise 'after-find-file 'jds:find-screen 'after)

(defun jds:find-screen(junk)
  (get-screen-for-buffer (current-buffer)))


This seems to work well, but I still haven't exhaustively tested it.

BTW, this also led me to discover that raise-window does not work, but
lower-window does.  I'm on a sun, running X11R5 and tvtwm.  Anyone
else have this problem?
--
--
Jeff Sparkes jsparkes@bnr.ca	Bell-Northern Research, Ottawa (613)765-2503
"For better gas mileage, do not drive with the parking brake on."
  - paraphrased from the owners manual of my Integra.

From help-lucid-emacs-request@lucid.com  Wed Aug 12 13:18:12 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA19020; Wed, 12 Aug 92 13:18:12 PDT
Received: by heavens-gate.lucid.com id AA16524g; Wed, 12 Aug 92 13:07:33 PDT
Received: from lumiere.circe.fr by heavens-gate.lucid.com id AA16516g; Wed, 12 Aug 92 13:07:03 PDT
Received: by lumiere.circe.fr (5.57/Ultrix3.0-C)
	id AA10980; Wed, 12 Aug 92 22:16:34 +0200
Date: Wed, 12 Aug 92 22:16:34 +0200
From: girou%circe.fr@lucid.com (Denis GIROU)
Message-Id: <9208122016.AA10980@lumiere.circe.fr>
To: help-lucid-emacs@lucid.com
Subject: lemacs 19.2


  Hello everybody.

  I install Lucid 19.2 on a DEC 3100 workstation since some weeks, and it's
work fine! It's clear that it's a fine and impressive work...

  Here I want to summarize my problems, modifications and (very little!)
improvements. I hope that this can be useful to somebody.


  1 - Installation on a DEC 3100 workstation (Ultrix 4.1) with DEC compiler :
      ---------------------------------------------------------------------

      I succeed to install Lucid 19.2, but I obtain three severe errors that I
must correct (I'm sure that I don't do that in the right way!). I dont' know
if these problems are already reported and corrected in 19.3.

    The problems are in screen.c, xterm.c and indent.c

cc -g -Demacs  -I./lwlib -DNEED_STRDUP -c screen.c
ccom: Error: ./extents.h, line 187: function declaration in bad context
       int from, int to, int maparg, int closed_end);
      ----------------------------------------------^
ccom: Error: ./extents.h, line 190: function declaration in bad context
      (int extent_obj, int flag);
      --------------------------^
ccom: Error: ./extents.h, line 192: function declaration in bad context
      (int extent_obj, int flag);
      --------------------------^
ccom: Error: ./extents.h, line 193: function declaration in bad context
      extern int Fextent_start_position (int extent_obj);
      --------------------------------------------------^
ccom: Error: ./extents.h, line 194: function declaration in bad context
      extern int Fextent_end_position (int extent_obj);
      ------------------------------------------------^
ccom: Error: ./extents.h, line 195: function declaration in bad context
      extern int Fextent_length (int extent_obj);
      ------------------------------------------^
ccom: Error: ./extents.h, line 196: function declaration in bad context
      extern int Fextent_buffer (int extent_obj);
      ------------------------------------------^
ccom: Error: ./extents.h, line 197: function declaration in bad context
      extern int Fextent_to_generic_id (int extent_obj);
      -------------------------------------------------^
*** Error code 1

Stop.

cc -g -Demacs  -I./lwlib -DNEED_STRDUP -c xterm.c
cpp: warning ./m/m-mips.h:119: DATA_START redefined
ccom: Error: xterm.c, line 2489: syntax error
        int (*prev_handler) (Display*, XErrorEvent*);
      -------------------------------------------^
ccom: Error: xterm.c, line 2491: illegal lhs of assignment operator
        (x_input_blocked++);
      -------------------^
(ccom): xterm.c, line 2491: cannot recover from earlier errors: goodbye!
        (x_input_blocked++);
      -------------------^
*** Error code 1

Stop.

cc -g -Demacs  -I./lwlib -DNEED_STRDUP -c indent.c
ccom: Error: indent.c, line 72: nonunique name demands struct/union or struct/union pointer
        thisbuf = buffer->display_table;
      --------------------------------^
*** Error code 1

Stop.

  2 - 8 bits characters :
      -----------------

      It's clear that it's a very important aspect for European people. And
there are still several problems with 8 bits characters in Lucid (in Epoch,
with the keriven contrib - patches and additions - I believe that the
different aspects of the 8 bits requirement are near solved). I believe that
some parts of this contrib are to report on Lucid.

    2.1 - Problem of delimiters :

      The 8 bits characters are falsely used as delimeters for functions
like forward-word, backward-word, kill-word, etc.

    2.2 - Problems with uppercase and downcase :

      The uppercase, lowercase and capitalize functions doesn't work with 8
bits characters.

    2.3 - Problem in isearch.el :

      The isearch function exit anormally when we input a character superior
to 128. I must do the following modifications :

lumiere (13:49) [1643]> diff isearch.el isearch.el~
134,143c134,140
< ; Modification Denis GIROU - 31 Jul. 1992
< 	   (cond
<   	   ;; Meta character no longer means exit search.
< ;;; 	    ((and (or (not (integerp char))
< ;;; 			   (and (>= char 128)
< ;;; 				(not (= char search-ring-advance-char))
< ;;; 				(not (= char search-ring-retreat-char))))
< ;;; 		       search-exit-option)
< ;;; 		  (setq unread-command-event event)
< ;;; 		  (throw 'search-done t))
---
> 	   (cond ((and (or (not (integerp char))
> 			   (and (>= char 128)
> 				(not (= char search-ring-advance-char))
> 				(not (= char search-ring-retreat-char))))
> 		       search-exit-option)
> 		  (setq unread-command-event event)
> 		  (throw 'search-done t))
286,289c283
< ;;; Modification Denis GIROU - 31 Jul. 1992
< 			       (or
< ;;; 				   (>= char ?\177)
< 				   (= char ?\177)
---
> 			       (or (>= char ?\177)
305,308c299
< ;;; Modification Denis GIROU - 31 Jul. 1992
< ;;;						       (text-char-description char)
< 						       (char-to-string char)
< 						       ))))
---
> 						       (text-char-description char)))))

    2.4 - Input of composed characters :

      I look an eye to the proposed solution in lisp/X11/x-compose.el for
input of accentued characters not accessible by the keyboard. In fact, like
most of people, I haven't a compose key on my keyboard, so the proposed
solution is not satisfaying for me. Nevertheless, those proposed in the 8 bits
contrib of Epoch (iso-latin-1.el from Matthieu Herrb inside the Keriven
contrib) work well with only one modification to reflect the change in the
this-command-keys function :
        (substring (this-command-keys) -1 nil)
    ==> (substring (format "%s" (aref (this-command-keys) 0)) 17 18)

      I found that this solution for compose characters is transparent and
very satisfaying.

  3 - Problem with dired-nstd.el
      --------------------------

      In fact, there is no connection with Lucid (I had the same problem with
Emacs and Epoch since my first use of dired-nstd), but it's Jamie Zawinski who
write it!

    I also believe that it's "the Right Thing" to do (and cannot understand why
it's not the default). But I have a dangerous bug : when I put an u, m, d (!!)
for the first file off a subdirectory, all the files of this subdirectory are
marked. It's clear that it's specially dangerous with the delete subcommand...
- I have (setq dired-listing-switches "-Alt")

    To avoid that, I introduce the following modification in dired-get-subdir
(I believe that it's not the right way, but it's work... In fact, there are
still sometimes some problems : the screen is not updated correctly after some
commands on the first file of a subdirectory) :

;;; Modification Denis GIROU -  3 Aug. 1992
;;; Problem whith d, u, m, w, etc. when it's the first file of a directory
(defun dired-get-subdir ()
  ;;"Return the subdir name on this line, or nil if not on a headerline."
  ;; Look up in the alist whether this is a headerline.
  (save-excursion
    (let ((cur-dir (dired-current-directory)))
      (beginning-of-line)		; alist stores b-o-l positions
      (and
;;;    (zerop (- (point)
;;; 		     (dired-get-subdir-min (assoc cur-dir
;;; 						  dired-subdir-alist))))
       (zerop (1+ (- (point)
		     (dired-get-subdir-min (assoc cur-dir
						  dired-subdir-alist)))))
	   cur-dir))))


  4 - LaTeX mode on Nelson Beebe :
      --------------------------

      The Mon, 8 Jun 92 08:30:32 EDT, Fritz Zaucker
<fritzz@lamont.ldgo.columbia.edu> writes :

>  3) latex.el from Nelson Beebe doesn't work with lemacs. It complains
>  about TeX-mode-map being undefined. Neither epoch nor GNU Emacs 18.58
>  have a problem there.

  I only comment the following lines (for GNU Emacs), and everything seems
working well (I suppose that the problem of Fritz is a problem in the way he
load his different TeX mode) :

(if (and (boundp 'window-system)
	 (equal window-system 'x)
	 (load "x-mouse" t t nil)) ;needed for following mouse-map bindings
	(progn
	  (define-key mouse-map x-button-right    'x-LaTeX-index-start)
	  (define-key mouse-map x-button-right-up 'x-LaTeX-index-end))
  )

  5 - Highlighting support for emerge.el :
      ----------------------------------

      I like emerge, but it's infinitely better if highlighting is use in
place of insertion of lines of characters. It's seems very easy to do :

;;; Denis GIROU -  3 Aug. 1992
;;; emerge : these functions redefined for Lucid highlighting support
(defun emerge-place-flags-in-buffer1 (buffer before after)
  (set-extent-face (make-extent (goto-char before) (goto-char after)) 'bold-italic))
(defun emerge-remove-flags-in-buffer (buffer before after)
  (map-extents (function (lambda (x y) (delete-extent x)))
               (current-buffer) (goto-char before) (goto-char after) nil))

  6 - Mouse support in Dired mode :
      ---------------------------

      It's easy to add some very useful capabilities of editing a file or
expanding/deexpanding a subdirectory with a single click in Dired mode :

;;; Denis GIROU - 30 Jul. 1992
;;; From an idea of Russell Ritchie, Scottish HCI Centre,
;;;      <russell@uk.ac.strath.hci> (July 88) 
(defun x-mouse-inspect-file (arg)
  "Inspect the file or the subdirectory the mouse is pointing at."
  (interactive "@e")
  (mouse-set-point arg)
  (let ((filename (dired-get-filename)))
       (if (save-excursion
           (beginning-of-line)
	   (looking-at " *d"))	; If it's a directory use dired on it.
       (dired-insert-subdir-inline filename)
       (find-file filename))))

(defun x-mouse-dired-kill-subdir (event)
  "Kill the sub-directory pointed."
  (interactive "@e")
  (mouse-set-point event)
  (dired-kill-subdir))

;;; And we just have to add (in dired-mode-hook by example) 
(define-key dired-mode-map 'button2 'x-mouse-dired-kill-subdir)
(define-key dired-mode-map 'button3 'x-mouse-inspect-file)


  7 - Mouse functions in modelines and minibuffer :
      -------------------------------------------

      I haven't found the possibility to define some mouse button functions
when the mouse is in the minibuffer or one of the modelines of the screen.
It's seem that the location returned is always nil in that cases. How to do
that?

  8 - Dynamic menus for Kill Ring, History and Shell Commands :
      ------------------------------------------------------- 

      Obviously it's a good thing to have the possibility to choice the buffer
with the "Buffers" option in the menubar. But I found useful to have the same
thing in other cases, so I modify the functions which are used for the
"Buffers" option for the case of the yank function in the kill ring, the
repetition of emacs-lisp function in the command history, and the repetition
of a previous function in the shell and telnet modes. I'm sure that we can
easily do better (I'm not a lisp expert...), but I found it useful like
that...

      N.B. : - In build-history-menu-hook the 'edit-and-eval-command function
will be better, but I didn't succeed to use it...
             - The display of occurrences of the kill ring is not perfect
because the control characters are visualize in a rather strange way... How to
correct that?

     (setq default-menubar
           ...
	     ("Buffers"	"")
	     ("KillRing" "")
	     ("History" "")
	     ("ShellCmds" "")
           ...)
     (set-screen-menubar default-menubar)

;;; For the Kill Ring ("KillRing" entry in the menubar)
(defun build-killring-menu-hook (menubar)
  "For use as a value of activate-menubar-hook.
This function changes the contents of the \"KillRing\" menu to correspond
to the current set of killring.  You can control how the text of the menu
items are generated by redefining the function `format-killring-menu-line'."
  (let ((killring-menu (car (find-menu-item menubar '("KillRing"))))
	name
	killring)
    (if (not killring-menu)
	nil
      (setq killring kill-ring)
      (if (> (length killring) 0)
	  (progn (if (> (length killring) kill-ring-max)
		     (setcdr (nthcdr kill-ring-max killring) nil))
		 (setq killring
		       (mapcar (function
				(lambda (entry)
				  (if (setq name (format-killring-menu-line entry))
				      (vector name (list 'insert entry) t))))
			       killring)))
	  (setq killring '("Empty Kill Ring!")))
      ;; slightly (only slightly) more efficient to not install the menubar
      ;; if it hasn't visibly changed.
      (if (equal killring (cdr killring-menu))
	  t  ; return t meaning "no change"
	(setcdr killring-menu killring)
	;; return the now-modified menubar to install.
	menubar)
      )))

(defun format-killring-menu-line (entry)
  (substring entry 0 (min (length entry) 30)))

(or (memq 'build-killring-menu-hook activate-menubar-hook)
    (setq activate-menubar-hook
	  (cons 'build-killring-menu-hook activate-menubar-hook)))

;;; For the History ("History" entry in the menubar)
(defun build-history-menu-hook (menubar)
  "For use as a value of activate-menubar-hook.
This function changes the contents of the \"History\" menu to correspond
to the current set of history.  You can control how the text of the menu
items are generated by redefining the function `format-history-menu-line'."
  (let ((history-menu (car (find-menu-item menubar '("History"))))
	name
	history
	(command-history-max 30))
    (if (not history-menu)
	nil
      (setq history command-history)
      (if (> (length history) 0)
	  (progn (if (> (length history) command-history-max)
		     (setcdr (nthcdr command-history-max history) nil))
		 (setq history
		       (mapcar (function
				(lambda (entry)
				  (if
				      (setq name (format-history-menu-line entry))
				      (vector name
;;; edit-and-eval-command will be better, but I didn't succeed to use it
					      (list 'eval-expression entry)
					      t))))
			       history)))
	(setq history '("Empty history list!")))
      ;; slightly (only slightly) more efficient to not install the menubar
      ;; if it hasn't visibly changed.
      (if (equal history (cdr history-menu))
	  t  ; return t meaning "no change"
	(setcdr history-menu history)
	;; return the now-modified menubar to install.
	menubar)
      )))

(defun format-history-menu-line (entry)
  (let ((entry (format "%s" entry)))
    (substring entry 0 (min (length entry) 40))))

(or (memq 'build-history-menu-hook activate-menubar-hook)
    (setq activate-menubar-hook
	  (cons 'build-history-menu-hook activate-menubar-hook)))

;;; For the Shell Commands ("ShellCmds" entry in the menubar)
(defun build-shellcmds-menu-hook (menubar)
  "For use as a value of activate-menubar-hook.
This function changes the contents of the \"ShellCmds\" menu to correspond
to the current set of shellcmds.  You can control how the text of the menu
items are generated by redefining the function `format-shellcmds-menu-line'."
  (let ((shellcmds-menu (car (find-menu-item menubar '("ShellCmds"))))
	name
	shellcmds
	(shellcmds-max 30))
    (if (not shellcmds-menu)
	nil
      (setq shellcmds
	     (let* ((ring (get-input-ring))
        	    (len (ring-length ring))
	            (i (1+ len))
		    rep)
	       (if (= len 0)
		 nil
		 (while (> i 1)
		   (setq rep (cons (format "%s" (ring-ref ring (- i 2))) rep))
		   (setq i (1- i)))
		 rep)))
      (if shellcmds
	  (progn
            (if (> (length shellcmds) shellcmds-max)
	        (setcdr (nthcdr shellcmds-max shellcmds) nil))
                (setq shellcmds
	               (mapcar (function
		         (lambda (entry)
                                 (if
			           (setq name (format-shellcmds-menu-line entry))
			           (vector name (list 'insert entry) t))))
			       shellcmds)))
	(setq shellcmds '("Not in shell mode!")))
      ;; slightly (only slightly) more efficient to not install the menubar
      ;; if it hasn't visibly changed.
      (if (equal shellcmds (cdr shellcmds-menu))
	  t  ; return t meaning "no change"
	(setcdr shellcmds-menu shellcmds)
	;; return the now-modified menubar to install.
	menubar)
      )))

(defun format-shellcmds-menu-line (entry)
  (format "%s" (substring entry 0 (min (length entry) 40))))

(or (memq 'build-shellcmds-menu-hook activate-menubar-hook)
    (setq activate-menubar-hook
	  (cons 'build-shellcmds-menu-hook activate-menubar-hook)))



  Thanks for attention.

  And many thanks to Lucid team for his work...

  Best regards,

--

------------------------------------------------------
Denis Girou (C.N.R.S./C.I.R.C.E.)                    |
Batiment 506 - B.P. 167 - 91403 Orsay Cedex - France |
E-mail : girou@circe.fr - Tel.  : 33. 1. 69.82.41.52 |
------------------------------------------------------

From help-lucid-emacs-request@lucid.com  Wed Aug 12 14:08:59 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA19126; Wed, 12 Aug 92 14:08:59 PDT
Received: by heavens-gate.lucid.com id AA16766g; Wed, 12 Aug 92 13:59:11 PDT
Received: from motgate.mot.com by heavens-gate.lucid.com id AA16757g; Wed, 12 Aug 92 13:58:55 PDT
Received: from pts1.pts.mot.com ([145.4.3.2]) by pobox.mot.com (4.1/SMI-4.0)
	id AA16828; Wed, 12 Aug 92 16:07:24 CDT
Received: from pts4.pts.mot.com by pts1.pts.mot.com (4.1/SMI-4.1)
	id AA00465; Wed, 12 Aug 92 16:58:27 EDT
Received: from msn25.motorola by pts4.pts.mot.com (4.1/SMI-4.1)
	id AA11807; Wed, 12 Aug 92 17:09:34 EDT
Date: Wed, 12 Aug 92 17:09:34 EDT
From: ex594bw@pts.mot.com ( BOB WEINER X2087 P7489 )
Message-Id: <9208122109.AA11807@pts4.pts.mot.com>
Received: by msn25.motorola (4.1/SMI-4.1)
	id AA01717; Wed, 12 Aug 92 17:09:40 EDT
To: help-lucid-emacs@lucid.com
Subject: Could someone send an example of a nested menu (submenu)?
Reply-To: bob_weiner@pts.mot.com

The doc I've seen says one can nest menus but does not show
the precise syntax.  The 'add-menu-item' code doc does not help either.
A basic example would get me going.

Thanks,

Bob Weiner

From help-lucid-emacs-request@lucid.com  Wed Aug 12 21:25:58 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA19953; Wed, 12 Aug 92 21:25:58 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA18348g; Wed, 12 Aug 92 21:12:45 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA02362; Thu, 13 Aug 92 00:23:04 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA02358; Thu, 13 Aug 92 00:23:02 -0400
Newsgroups: alt.lucid-emacs.help,gnu.emacs.help
Path: uunet!cs.utexas.edu!asuvax!ncar!csn!cherokee!mcclen
From: mcclen@uswest.com ( Chris McClenaghan)
Subject: hiding and exposing text
Message-Id: <MCCLEN.92Aug12205450@alder.uswest.com>
Nntp-Posting-Host: alder.advtech.uswest.com
Organization: US WEST Advanced Technologies, Boulder, Colorado
Date: Thu, 13 Aug 1992 03:54:50 GMT
Lines: 16
Xref: uunet alt.lucid-emacs.help:254 gnu.emacs.help:7063
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I'm looking for a package of emacs lisp code that allows hiding
of regions of text and subsequent exposure of the hidden text.
I'd like to have more than one region of text hidden at a time.
This should be interactive, but having the ability to predefine
regular expressions or syntactic elements that would
automatically be hidden would also be nice.

As an example, I'd like to collapse the body of a while statement
in C or C++ leaving just the while and condition with some sort
of ellipsis mark that could be selected for exposing the text.
Also, certain #ifdef's might automatically be hidden, leaving a
mark for expansion.

--
Chris McClenaghan    mcclen@uswest.com


From help-lucid-emacs-request@lucid.com  Wed Aug 12 21:42:21 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA19981; Wed, 12 Aug 92 21:42:21 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA18389g; Wed, 12 Aug 92 21:30:26 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA02841; Thu, 13 Aug 92 00:40:35 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA02837; Thu, 13 Aug 92 00:40:33 -0400
Path: uunet!sun-barr!cs.utexas.edu!sdd.hp.com!zaphod.mps.ohio-state.edu!uakari.primate.wisc.edu!usenet.coe.montana.edu!news.u.washington.edu!ogicse!reed!nelson
From: nelson@reed.edu (Nelson Minar)
Newsgroups: alt.lucid-emacs.help,gnu.emacs.help
Subject: Re: hiding and exposing text
Message-Id: <1992Aug13.043435.15775@reed.edu>
Date: 13 Aug 92 04:34:35 GMT
References: <MCCLEN.92Aug12205450@alder.uswest.com>
Organization: Reed College, Portland, OR
Lines: 27
Xref: uunet alt.lucid-emacs.help:255 gnu.emacs.help:7064
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <MCCLEN.92Aug12205450@alder.uswest.com> mcclen@uswest.com ( Chris McClenaghan) writes:
>I'm looking for a package of emacs lisp code that allows hiding
>of regions of text and subsequent exposure of the hidden text.

look at the documentation on selective-display. This is the only emacs
facility I know of for hiding text. It's a little weird, but it does
work.

There are various folding modes for emacs, also. They allow you to
mark sections of text to be hidden or displayed. There's a fold.el
(comes with emacs-18.58?) - is very minimal. I have had good luck with
folding.el by Jamie Lokier for a fuller origami editor. folding.el
should be in the elisp archives.

>As an example, I'd like to collapse the body of a while statement
>in C or C++ leaving just the while and condition with some sort
>of ellipsis mark that could be selected for exposing the text.

I've been thinking of writing some C++/C syntax sensitive folding
code. Ie: fold the defun, fold the current sexp, fold this arbitrary
block of text. They're all fairly easy, really.

Has anyone taken the time to write that folds your source code along
obvious syntactic boundaries?
-- 
                __
nelson@reed.edu \/   Delicious & Nutritious breakfast cereals shot from guns!

From help-lucid-emacs-request@lucid.com  Thu Aug 13 00:18:08 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA20355; Thu, 13 Aug 92 00:18:08 PDT
Received: by heavens-gate.lucid.com id AA18753g; Thu, 13 Aug 92 00:06:08 PDT
Received: from amil.co.il by heavens-gate.lucid.com id AA18748g; Thu, 13 Aug 92 00:05:10 PDT
Received: from ipc8.AMIL ([192.86.90.18]) by amil.co.il (4.1/AMIL-M2)
	id AA14302; Thu, 13 Aug 92 10:14:55 IDT
Date: Thu, 13 Aug 92 10:14:55 IDT
From: danny@amil.co.il (Danny Bar-Dov)
Message-Id: <9208130714.AA14302@amil.co.il>
Received: by ipc8.AMIL (4.1/SMI-4.1)
	id AA12679; Thu, 13 Aug 92 10:14:51 IDT
To: help-lucid-emacs@lucid.com
Subject: printing with different command

Finally we moved to lemacs-19.2. Only not without some problems.
In 19.1 I hacked lpr.el a bit so that a local package which
prints using enscript will work.
Only in 19.2 lpr.el is loaded into lemacs.
(and I use the supplied sun4 version - no time to compile :-)

Here is what I changed in lpr.el (I added the (provide ...) side

20d19
< (provide 'lpr)
69c68
<           (setq switches (and (eq lpr-command "lpr") (cons "-p" switches)))))
---
>           (setq switches (cons "-p" switches))))
73c72
<                   (nconc (and (eq lpr-command "lpr")
---
>                   (nconc (and (eq system-type 'berkeley-unix)

So now (require 'lpr) complains, and removing that then
changing the lpr-command fails because of the "-p" flag.

Does anybody have a suggestion ?

I add the (short) laser package.

Danny

------------------- cut here for laser.el -------------------
;;;
;;; PostScript LASER printer routines.
;;; adjusted for lemacs 19.1 by Dan Bar Dov June 18 1992

(require 'lpr) 

(defvar *laser-print-user-name* t
  "Specifies whether to include the user name
   in the print buffer / region titles.")

(defvar *enscript-switches* '("-fCourier-Oblique10" "-FTimes-BoldItalic10"))

(defun laser-print (p-what &optional switches)
  "Print buffer / region using the ENSCRIPT command."
  (let ((saved-witches lpr-switches)
	(saved-command lpr-command))
    (set-variable 'lpr-switches (or switches *enscript-switches*))
    (setq lpr-command "/usr/local/bin/enscript")
    (if (equal p-what 'buffer)
	(print-buffer)
      (lpr-region (region-beginning) (region-end)))
    (set-variable 'lpr-switches saved-witches)
    (setq lpr-command saved-command)))

(defun laser-print-region  ()
  "Prints region by laser printer."
  (interactive)
  (laser-print 'region))

(defun laser-print-buffer  ()
  "Prints region with header by laser printer."
  (interactive)
  (laser-print 'buffer))

(defun read-enscript-switches ()
  (let ((args (read-string "Enter enscript switches: " *enscript-switches*)))
    (list args))
  )


(defvar print-command nil)

From help-lucid-emacs-request@lucid.com  Thu Aug 13 00:20:45 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA20359; Thu, 13 Aug 92 00:20:45 PDT
Received: by heavens-gate.lucid.com id AA18780g; Thu, 13 Aug 92 00:10:52 PDT
Received: from amil.co.il by heavens-gate.lucid.com id AA18772g; Thu, 13 Aug 92 00:10:27 PDT
Received: from ipc8.AMIL ([192.86.90.18]) by amil.co.il (4.1/AMIL-M2)
	id AA14324; Thu, 13 Aug 92 10:20:13 IDT
Date: Thu, 13 Aug 92 10:20:13 IDT
From: danny@amil.co.il (Danny Bar-Dov)
Message-Id: <9208130720.AA14324@amil.co.il>
Received: by ipc8.AMIL (4.1/SMI-4.1)
	id AA12680; Thu, 13 Aug 92 10:20:09 IDT
To: help-lucid-emacs@lucid.com
Subject: incompatabilities between lemacs 19.1 19.2

In lemacs 19.1 I had a top-level menu defined like that
  (popup-menu '(nil
		"Useful commands"
		"----"
		...
The doc string of popup-menu states:
 The first element of a menu must be a string, which is the name of the
 menu.  This is the string that will be displayed in the parent menu, if
 any.  For toplevel menus, it is ignored.  This string is not displayed
 in the menu itself.

So I had it set to nil, and it worked in 19.1
It does not work anymore in 19.2.
You must specify a string now ! (even though it is never used)

Danny.

From help-lucid-emacs-request@lucid.com  Thu Aug 13 03:27:07 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA21216; Thu, 13 Aug 92 03:27:07 PDT
Received: by heavens-gate.lucid.com id AA19230g; Thu, 13 Aug 92 03:18:09 PDT
Received: from amil.co.il by heavens-gate.lucid.com id AA19224g; Thu, 13 Aug 92 03:17:46 PDT
Received: from ipc8.AMIL ([192.86.90.18]) by amil.co.il (4.1/AMIL-M2)
	id AA24290; Thu, 13 Aug 92 13:27:31 IDT
Date: Thu, 13 Aug 92 13:27:31 IDT
From: danny@amil.co.il (Danny Bar-Dov)
Message-Id: <9208131027.AA24290@amil.co.il>
Received: by ipc8.AMIL (4.1/SMI-4.1)
	id AA13341; Thu, 13 Aug 92 13:27:27 IDT
To: help-lucid-emacs@lucid.com
Subject: emacs load path 

In lemacs 19.1 I had /vol/emacs19/bin/lemacs@ -> ../src/lemacs
and the automatic path creation worked fine.

It does not work like that in lemacs 19.2

I had to put /vol/emacs19/lemacs@ -> ../src/lemacs
for it to find the lisp directory.

Why ?

Danny

--

---------------------
Dan Bar Dov

Applied Materials (Israel)

Email:        danny@amil.co.il
Phone: office 972-3-499573
       home   972-3-5469625
TimeZone:     GMT+2

From help-lucid-emacs-request@lucid.com  Thu Aug 13 07:35:08 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA21723; Thu, 13 Aug 92 07:35:08 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA19718g; Thu, 13 Aug 92 07:22:53 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA17218; Thu, 13 Aug 92 10:33:11 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA17208; Thu, 13 Aug 92 10:33:07 -0400
Newsgroups: alt.lucid-emacs.help,gnu.emacs.help
Path: uunet!sun-barr!ames!elroy.jpl.nasa.gov!usc!sol.ctr.columbia.edu!destroyer!ncar!sunny!southern
From: southern%sunny.NoSubdomain.NoDomain@lucid.com (Lawrence Buja)
Subject: Re: hiding and exposing text
Message-Id: <1992Aug13.143132.5540@ncar.ucar.edu>
Reply-To: southern@ncar.ucar.edu
Organization: National Center for Atmospheric Research
References:  <MCCLEN.92Aug12205450@alder.uswest.com>
Distribution: usa
Date: Thu, 13 Aug 1992 14:31:32 GMT
Lines: 289
Xref: uunet alt.lucid-emacs.help:259 gnu.emacs.help:7066
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <MCCLEN.92Aug12205450@alder.uswest.com>, mcclen@uswest.com ( Chris McClenaghan) writes:
>I'm looking for a package of emacs lisp code that allows hiding
>of regions of text and subsequent exposure of the hidden text.
>I'd like to have more than one region of text hidden at a time.
>This should be interactive, but having the ability to predefine
>regular expressions or syntactic elements that would
>automatically be hidden would also be nice.
>
>As an example, I'd like to collapse the body of a while statement
>in C or C++ leaving just the while and condition with some sort
>of ellipsis mark that could be selected for exposing the text.
>Also, certain #ifdef's might automatically be hidden, leaving a
>mark for expansion.
>
>--
>Chris McClenaghan    mcclen@uswest.com
>


Below is some functions which I scooped off the comp.emacs.help
awhile back and modified to my tastes.  I really only ever use the
first function, hide-all-non-matching-lines.  It's quite powerful
when bound to a hot key or used in conjunction with
narrow-to-region (see function "lock") for isolating the definition
and uses of variables in large codes. 

With this available, I rarely do isearches anymore.  Instead I just
hide all the lines that don't contain target, go to the occurance
of target that I'm interested in, then redisplay the entire buffer.

To check for two or more targets, separate them with a \| 
(i.e. targeta\|targetb\|targetc ).

Cautions:

1. Be careful about deleting hidden text.  It's still there
   (marked by three dots ...) even though you can't see it.  The
   hidden text is conceptionally appended to the end of the previous
   visible line.  If you delete the whole previous line, including the
   ...'s, you've deleted all the hidden text up to the next visible line.

2. String searches will also "find" target strings even if they are
   hidden.  So be careful when doing global changes or running
   search&modify marcros.  

Note that 1. and 2. apply only to text hidden via hide-region.
1. and 2. do NOT apply to text hidden via narrow-to-region.

Good luck.

/\      Lawrence Buja           Climate and Global Dynamics Division
  \_][  southern@ncar.ucar.edu  National Center for Atmospheric Research
      \_________________________Boulder,_Colorado___80307-3000__________

;;Date: Sat, 3 Dec 88 14:08:15 cst
;;From: Daniel LaLiberte <liberte@M.CS.UIUC.EDU>
;;To: sboisen@IZAR.BBN.COM
;;Subject: Re:  elisp structure editing
;;
;;There are two ways to use selective display.  It can be used to
;;hide everything indented past some number of leading whitespaces,
;;or to hide only those lines that are preceded by CR.  My functions,
;;below, only use the latter.  They need some work, but maybe you
;;will be inspired to do that.  Also, keep in mind the problem with
;;comments.  You may suggest to RMS that comments should end with
;;either \n or \r; that would solve the problem.
;;
;;dan
;;
;;; Modified substantially 11/1/89 Aaron Larson. (alarson@src.honeywell.com)


(provide 'hide-sexp)

(defun hide-all-non-matching-lines (regexp)
"Similar to the CMS XEDIT ALL command.                  (all.el)
   - Hide all lines except those containing matches for REGEXP.
   - A match split across lines preserves all the lines it lies in.
   - Applies to all lines in buffer.
   - Entering nothing at the query will redisplay all lines."
  (interactive "sShow lines (regexp): ")
  (show-all)  
  (if (string-equal regexp "")     ()
  (save-excursion
    (goto-line 1)
    (or (bolp) (forward-line 1))
    (let ((start (point)))
      (while (not (eobp))
	;; Start is first char not preserved by previous match.
	(if (not (re-search-forward regexp nil 'move))
	    (hide-region start (point-max))
	  (let ((end (save-excursion (goto-char (match-beginning 0))
				     (forward-line -1)
				     (point))))
	    ;; Now end is first char preserved by the new match.
	    (if (< start end)
		(hide-region start end))))
	(setq start (point)))))))

(defun show-all ()
  "Show any hidden text in buffer.        (all.el)"
  (interactive)
  (show-region (point-min) (point-max))
  (message " "))


(setq locked 'unlocked)
(defun lock ()
  "If currently unlocked
     Narrow region to display only the current fortran subprogram,
     defun or paragraph depending on major-mode of the file.
   If currently locked
     widen and recenter to restore all text.   (all.el)"
  (interactive)
  (save-excursion

  (if (eq major-mode 'fortran-mode)     (mark-fortran-subprogram))
  (if (eq major-mode 'emacs-lisp-mode)  (mark-defun))
  (if (eq major-mode 'text-mode)        (mark-paragraph))
  (if (eq locked 'locked) (widen)    (narrow-to-region (point) (mark)))
;;(if (eq locked 'locked) (recenter) ())
  (if (eq locked 'locked) (setq locked 'unlocked) (setq locked 'locked))
	(setq start (point)) ))



(defun set-mark-widen ()
  "Set mark then show any hidden text in buffer.   (all.el)"
  (interactive)
  (show-region (point-min) (point-max))
  (set-mark-command nil)
)


(defun hide-non-top-level (&optional except-comments) 
  "Hide all non top level forms, with arguments doesn't hide top level 
comments (i.e. ';' in column 1)."
  (interactive "P")
  (hide-region (point-min) (point-max)
	       (if except-comments "(;" "(")))
    
    
 
(defun hide-sexp ()
  "Hide the lines within the current sexp.  Current sexp is defined as either 
the one immediately following point, or the surrounding one."
  (interactive)
  (save-excursion
    (forward-char)
    (backward-up-list 1)
    (hide-region
      (save-excursion (beginning-of-line)
		      (point))
      (progn (forward-sexp 1)
	     (point)))))

(defun show-sexp ()
  "Show the lines within the current sexp.  Current sexp is defined as either 
the one immediately following point, or the surrounding one."
  (interactive)
  (save-excursion
    (forward-char)
    (backward-up-list 1)
    (show-region
     (save-excursion
       (beginning-of-line)
       (point))
     (progn
       (forward-sexp 1)
       (point)))))

(defun hide-sub-sexps ()
  "Hide all the sub sexps in the current form."
  (interactive)
  (save-excursion
    (condition-case err
	(progn
	  (backward-up-list 1)
	  (down-list 1)
	  (forward-sexp 1)		; after function name
	  (while t			; run til end of list
	    (forward-sexp 1)
	    (hide-region 
	      (progn
		(forward-sexp -1) (point))
	      (progn
		(forward-sexp 1) (point))))
	  )
      (error nil))))
	  



;(setq minor-mode-alist (cons (quote (selective-display " Hiden"))
;			     minor-mode-alist))
(defun hide-text (arg)
  "Hide all text in buffer indented by more than the current column.
If an argument is given, then the argument is used instead of the current 
column.  In either case, a value less than 1 makes all text visible."
  (interactive "P")
  (setq arg (or arg (current-column)))
  (setq selective-display (if (< (prefix-numeric-value arg) 1)
			      nil
			    (prefix-numeric-value arg))))


(defun hide-region (from to &optional flag)
  (interactive "r")
  (hide-or-show-region from to ?\r flag))

(defun show-region (from to &optional flag)
  (interactive "r")
  (hide-or-show-region from to ?\n flag))

(defun hide-or-show-region (from to flag &optional show-lines-starting)
  "Hides or shows lines from FROM to TO, according to FLAG.  If FLAG
is \\n (newline character) then text is shown, while if FLAG is \\r
\(control-M) the text is hidden. Also twiddles the buffer-modified
flag to make up for a deficiency (in the documentation at least) of
subst-char-in-region.  Show-lines-starting should be a string containing
characters indicating that the lines starting with one of the characters
should not be hiden."
  (let ((modifiedp (buffer-modified-p))
	(buffer-read-only nil))
    (subst-char-in-region from to
			  (if (= flag ?\n) ?\r ?\n)
			  flag 'noundo)
    (if show-lines-starting
	(save-excursion
	  (goto-char from)
	  (let ((chars (concat (char-to-string ?\r) "[" (regexp-quote show-lines-starting) "]")))
	    (while (re-search-forward chars to t)
	      (backward-char 1)
	      (subst-char-in-region (- (point) 1) (point) ?\r ?\n 'noundo)))))
    (set-buffer-modified-p modifiedp))
  (setq selective-display t)
  (modify-syntax-entry ?\r ">")
  )


(defun hide-matching-lines (regexp)
  "Hide lines, from point to end of buffer, containing matches for REGEXP.
If a match is split across lines, all the lines it lies in are hidden."
  (interactive "sHide lines (containing match for regexp): ")
  (save-excursion
    (while (and (not (eobp))
		(re-search-forward regexp nil t))
      (hide-region (save-excursion (goto-char (match-beginning 0))
				   (forward-line -1)
				   (point))
		   (match-end 0))
      (forward-line 1))))


(defun forward-maybe-hidden-line (n)
  "Move forward a ``logical'' line, hidden or not."
  (goto-char
   (let* ((l (save-excursion
	      (forward-line n)
	      (point)))
	  (p (progn
	       (search-forward "\r" l 'move
			       (if (plusp n)
				   n
				   (- n 1)))
	       (point))))
     
     (if (plusp n)
	 (min l p)
	 (max l p)))))

(defun show-matching-lines (regexp)
  "Show lines, from point to end of buffer, containing matches for REGEXP.
If a match is split across lines, all the lines it lies in are shown.  (all.el)"
  (interactive "sShow lines (containing match for regexp): ")
  (save-excursion
    (while (and (not (eobp))
		(re-search-forward regexp nil t))
      (show-region (save-excursion (forward-maybe-hidden-line 0)
				   (point))
		   (progn
		     (forward-maybe-hidden-line 1)
		     (backward-char 1)
		     (point))))))






From help-lucid-emacs-request@lucid.com  Thu Aug 13 08:08:22 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA21770; Thu, 13 Aug 92 08:08:22 PDT
Received: by heavens-gate.lucid.com id AA19802g; Thu, 13 Aug 92 07:56:25 PDT
Message-Id: <9208131456.AA19802@lucid.com>
Received: from METHEGLIN.BBN.COM by heavens-gate.lucid.com id AA19796g; Thu, 13 Aug 92 07:55:08 PDT
To: help-lucid-emacs@lucid.com
Subject: Yet another "DISPLAY"-problem
Date: Thu, 13 Aug 92 10:55:12 -0400
From: mthome@BBN.COM

	I'm having trouble getting lemacs to work: here are the
symptoms (please read them all before telling me about the v18 vs v19
elisp directories)...
	
	lemacs version 19.0 (came with our release of energize)
installed on /nfs/kar/u2/cadillac/lemacs/, nfs mounted via the same
path on two other machines, pil and met.  DISPLAY set to
met:0.0.  EMACSLOADPATH environment var not set.  "which lemacs"
returns /nfs/kar/u2/cadillac/lemacs/lemacs on all three machines.
All three machines are Sun4s running SunOS 4.1.2.

case 1: 
	met% lemacs -q       	;; everything comes up fine -
					;; for that matter lemacs w/out
					;; -q works great.

case 2:
	kar% lemacs -q		
	Error: Can't Open display
	;; hmm - maybe it can't find the elisp files...

	kar% cd /nfs/kar/u2/cadillac/lemacs
	kar% ./lemacs -q
	Error: Can't Open display
	;; hmm - is it even trying the right files?
	kar% trace lemacs -q |& more
	;; lots of stuff, including many successful stat()'s and read()'s
	;; of /nfs/kar/u2/cadillac/lemacs/lisp/...
	;; The trace finishes up with the following interesting calls:
open ("/etc/hosts", 0, 0666) = 4
ioctl (4, 0x40125401, 0xf7ffd744) = -1 ENOTTY (Inappropriate ioctl for device)
fstat (4, 0xf7ffd7b8) = 0
brk (0x362000) = 0
brk (0x365000) = 0
read (4, "#\n# Sun Host Database\n#\n# If the".., 8192) = 150
read (4, "", 8192) = 0
close (4) = 0
open ("/x11r4/usr/lib/X11/XtErrorDB", 0, 0666) = -1 ENOENT (No such file or directory)
write (2, "Error: Can't Open display\n", 26) = Error: Can't Open display
	;; looks like it was looking in the hosttable for my display -
	;; I wonder why.

	;; BTW - xterm, xemacs, epoch, etc all work fine, so the
	;; problem isn't xhost settings OR NIS vs hosttab.  
	
	;; Finally, I set my DISPLAY env variable to use the numeric
	;; IP address instead of the symbolic name, and Lo! lemacs
	;; DOES start!  What gives??

case 3:  host pil acts exactly like host kar... except I add
	met to the local /etc/hosts...

	pil% lemacs -q 		;; works just fine.


Another datapoint: My coworker has no problems running lemacs from
these machines - except via start_energize (from which lemacs bombs
with the above infamous error message)... he's just gotten into the
habit of starting the rest of the environment with start_energize,
starting lemacs.

What's going on here??? (and how do I fix it)

My next step is to try 19.2 in hopes that something has been fixed.

Thanks in advance,
	- Michael Thome (mthome@bbn.com, (617) 873-1853)

From help-lucid-emacs-request@lucid.com  Thu Aug 13 08:12:39 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA21788; Thu, 13 Aug 92 08:12:39 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA19828g; Thu, 13 Aug 92 08:03:44 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA22336; Thu, 13 Aug 92 11:14:03 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA22332; Thu, 13 Aug 92 11:13:58 -0400
Path: uunet!mcsun!corton!loria!news.loria.fr!bosch
From: bosch%loria.fr@lucid.com (Guido Bosch)
Newsgroups: alt.lucid-emacs.help
Subject: Re: Could someone send an example of a nested menu (submenu)?
Message-Id: <BOSCH.92Aug13170300@moebius.loria.fr>
Date: 13 Aug 92 15:03:00 GMT
References: <9208122109.AA11807@pts4.pts.mot.com>
Organization: INRIA-Lorraine / CRIN, Nancy, France
Lines: 151
In-Reply-To: ex594bw@pts.mot.com's message of 12 Aug 92 21:09:34 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <9208122109.AA11807@pts4.pts.mot.com> ex594bw@pts.mot.com ( BOB WEINER X2087 P7489) writes:

 > The doc I've seen says one can nest menus but does not show
 > the precise syntax.  The 'add-menu-item' code doc does not help either.
 > A basic example would get me going.

Try this: It's the beginning of a dired mode menu I'm currently
experiencing with. But I don't find it perfect yet.
Maybe sombody wants to improve it ... 


(defun dired-menu (e)
  (interactive "@e")
  (popup-menu dired-menu))

(define-key dired-mode-map 'button3 'dired-menu)

(setq dired-menu
      '("Dired"
	["Next Line" dired-next-line t]
	["Previous Line" dired-previous-line t]


	("Listing Files"
	 ["Sort Toggle Or Edit" dired-sort-toggle-or-edit t]
	 ["Redisplay" dired-do-redisplay t]
	 ["Revert Buffer" revert-buffer t]
	 ["Kill Line Or Subdir" dired-kill-line-or-subdir t]
	 ["Kill" dired-do-kill t]
	 )

	("Marking Files"
	 ["Mark Subdir Or File" dired-mark-subdir-or-file t]
	 ["Unmark Subdir Or File" dired-unmark-subdir-or-file t]
	 ["Backup Unflag" dired-backup-unflag t]
	 ["Unflag All Files" dired-unflag-all-files t]
	 ["Mark Executables" dired-mark-executables t]
	 ["Mark Symlinks" dired-mark-symlinks t]
	 ["Mark Directories" dired-mark-directories t]
	 ["Mark Rcs Files" dired-mark-rcs-files t]
	 ["Mark Sexp" dired-mark-sexp t]
	 ["Mark Files Regexp" dired-mark-files-regexp t]
	 ["Next Marked File" dired-next-marked-file t]
	 ["Prev Marked File" dired-prev-marked-file t]
	 )

	("Deleting Files With Dired"
	 ["Flag File Deleted" dired-flag-file-deleted t]
	 ["Flag Regexp Files" dired-flag-regexp-files t]
	 ["Do Deletions" dired-do-deletions t]
	 ["Do Delete" dired-do-delete t]
	 ["Flag Auto Save Files" dired-flag-auto-save-files t]
	 ["Flag Backup Files" dired-flag-backup-files t]
	 ["Clean Directory" dired-clean-directory t])

	("Dired Shell Commands"
	 
	 ["Shell Command" dired-do-shell-command t]
	 ["Do Background Shell Command" dired-do-background-shell-command t]
	 ["Compress" dired-do-compress t]
	 ["Uncompress" dired-do-uncompress t]
	 "----"
	 ["Chmod" dired-do-chmod t]
	 ["Chgrp" dired-do-chgrp t]
	 ["Chown" dired-do-chown t]
	 "----"
	 ["Load" dired-do-load t]
	 ["Do Byte Compile" dired-do-byte-compile t]
	 ["Byte Compile And Load" dired-do-byte-compile-and-load t]
	 "----"
	 ["Print" dired-do-print t])

	("Mark-using Commands"
	 "Copy and Move Into a Directory"
	 ["Copy Regexp" dired-do-copy-regexp t]
	 ["Move" dired-do-move t]
	 ["Hardlink Regexp" dired-do-hardlink-regexp t]
	 ["Symlink Regexp" dired-do-symlink-regexp t]
	 "-----"
	 "Renaming and More With Regexps"
	 ["Rename Regexp" dired-do-rename-regexp t]
	 "----"
	 "Other File Creating Commands"
	 ["Upcase" dired-upcase t]
	 ["Downcase" dired-downcase t])

	("Commands That Do Not Use Marks"
	 ["Find File" dired-find-file t]
	 ["Advertised Find File" dired-advertised-find-file t]
	 ["Find File Other Window" dired-find-file-other-window t]
	 ["View File" dired-view-file t]
	 ["Diff" dired-diff t]
	 ["Backup Diff" dired-backup-diff t]
	 ["Create Directory" dired-create-directory t]
	 ["Why" dired-why t])

	("Subdirectories in Dired"
	 ["Insert Subdir" dired-do-insert-subdir t]
	 ["Insert Subdir Inline" dired-insert-subdir-inline t]
	 ["Maybe Insert Subdir" dired-maybe-insert-subdir t]
	 ["Next Subdir" dired-next-subdir t]
	 ["Prev Subdir" dired-prev-subdir t]
	 ["Goto Subdir" dired-goto-subdir t]
	 ["Prev Dirline" dired-prev-dirline t]
	 ["Next Dirline" dired-next-dirline t]
	 ["Up Directory" dired-up-directory t]
	 )

	("Hiding Directories in Dired"
	 ["Hide Subdir" dired-hide-subdir t]
	 ["Hide All" dired-hide-all t])

	["Undo" dired-undo t]
	["Quit" dired-quit t]
	))



; Commands not yet inserted.
; 
;["Do Relsymlink Regexp" dired-do-relsymlink-regexp t]
;["Set Marker Char" dired-set-marker-char t]
;["Restore Marker Char" dired-restore-marker-char t]
;["Summary" dired-summary t]
;["Do Find File" dired-do-find-file t]
;["Do Hardlink" dired-do-hardlink t]
;["Do Relsymlink" dired-do-relsymlink t]
;["Do Toggle" dired-do-toggle t]
;["Vm" dired-vm t]
;["Do Symlink" dired-do-symlink t]
;["Mark With This Char" dired-mark-with-this-char t]
;["Do Copy" dired-do-copy t]
;["Describe Mode" describe-mode t]
;["Copy Filename As Kill" dired-copy-filename-as-kill t]
;["Smart Shell Command" dired-smart-shell-command t]
;["Tree Up" dired-tree-up t]
;["Tree Down" dired-tree-down t]
;["Goto File" dired-goto-file t]
;["Do Unmark" dired-do-unmark t]
;["Smart Background Shell Command" dired-smart-background-shell-command t]
;["Omit Toggle" dired-omit-toggle t]
;
--
Guido BOSCH, INRIA-Lorraine/CRIN
Institut National de Recherche en Informatique et en Automatique (INRIA)
Centre de Recherche en Informatique de Nancy (CRIN)
Campus scientifique, B.P. 239            
54506 Vandoeuvre-les-Nancy CEDEX       	
Tel.: (+33) 83.91.24.24
Fax.: (+33) 83.41.30.79                	
email: bosch@loria.fr             	

From help-lucid-emacs-request@lucid.com  Thu Aug 13 08:24:00 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA21817; Thu, 13 Aug 92 08:24:00 PDT
Received: by heavens-gate.lucid.com id AA19863g; Thu, 13 Aug 92 08:14:19 PDT
Received: from rcvax.gmr.com (gmr.com) by heavens-gate.lucid.com id AA19855g; Thu, 13 Aug 92 08:13:37 PDT
Received: from kocrsv01.delcoelect.com by gmr.com with PMDF#10372; Thu, 13 Aug
 1992 11:22 EST
Received: from kocrsw12.delcoelect.com by kocrsv01.delcoelect.com with SMTP id
 AA23459 (5.65c/IDA-1.4.4/CORE for <help-lucid-emacs@lucid.com>); Thu, 13 Aug
 1992 10:23:39 -0500
Received: by kocrsw12.delcoelect.com (4.1/SMI-4.1) id AA06682; Thu, 13 Aug 92
 10:23:38 EST
Date: Thu, 13 Aug 92 10:23:38 EST
From: Mike Scheidler <c23mts@kocrsv01.delcoelect.com>
Subject: Re: Could someone send an example of a nested menu (submenu)?
In-Reply-To: Mail from 'ex594bw@pts.mot.com ( BOB WEINER X2087 P7489 )' dated:
 Wed, 12 Aug 92 17:09:34 EDT
To: help-lucid-emacs@lucid.com
Message-Id: <9208131523.AA06682@kocrsw12.delcoelect.com>

On Wed Aug 12 16:24:16 1992 bob_weiner@pts.mot.com writes:
>
>The doc I've seen says one can nest menus but does not show
>the precise syntax.  The 'add-menu-item' code doc does not help either.
>A basic example would get me going.
>

Here's a small example of a nested menu definition that I have been using.
I know this works with version 19.1--I hope things are still the same in 19.2.

(add-menu-item '("Search"  "String search") "Forward"  'search-forward t)
(add-menu-item '("Search"  "String search") "Backward" 'search-backward t)
(add-menu-item '("Search"  "Regexp search") "Forward"  're-search-forward t)
(add-menu-item '("Search"  "Regexp search") "Backward" 're-search-backward t)
(add-menu-item '("Search") "Replace string"            'replace-string t)
(add-menu-item '("Search") "Replace regexp"            'replace-regexp t)

--
 Mike Scheidler                    INTERNET:  c23mts@kocrsv01.delcoelect.com
 Software Technology               UUCP:      deaes!c23mts
 Delco Electronics Corporation     PHONE:     (317) 451-0642
 Kokomo, IN 46904


From help-lucid-emacs-request@lucid.com  Thu Aug 13 08:34:14 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA21848; Thu, 13 Aug 92 08:34:14 PDT
Received: by heavens-gate.lucid.com id AA19903g; Thu, 13 Aug 92 08:25:12 PDT
Received: from iscp.bellcore.com by heavens-gate.lucid.com id AA19892g; Thu, 13 Aug 92 08:23:47 PDT
Received: from italia.iscp.bellcore.com by iscp.bellcore.com (AIX 3.1/UCB 5.61/4.03)
          id AA43152; Thu, 13 Aug 92 11:32:14 -0400
Received: by italia.iscp.bellcore.com (AIX 3.2/UCB 5.64/4.03)
          id AA10466; Thu, 13 Aug 1992 11:32:08 -0400
From: aaron@iscp.bellcore.com (Aaron Akman)
Message-Id: <9208131532.AA10466@italia.iscp.bellcore.com>
To: help-lucid-emacs@lucid.com
Subject: How do I unsubscribe to groups related to lemacs?
Date: Thu, 13 Aug 92 11:32:06 -0500



I've misplaced the original message, sorry.

From help-lucid-emacs-request@lucid.com  Thu Aug 13 17:55:36 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA23247; Thu, 13 Aug 92 17:55:36 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA22397g; Thu, 13 Aug 92 17:42:17 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA28179; Thu, 13 Aug 92 20:52:37 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA28175; Thu, 13 Aug 92 20:52:35 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!wupost!zaphod.mps.ohio-state.edu!caen!hellgate.utah.edu!csn!cherokee!mcclen
From: mcclen@uswest.com ( Chris McClenaghan)
Subject: faces
Message-Id: <MCCLEN.92Aug13180258@alder.uswest.com>
Nntp-Posting-Host: alder.advtech.uswest.com
Organization: US WEST Advanced Technologies, Boulder, Colorado
Date: Fri, 14 Aug 1992 01:02:58 GMT
Lines: 17
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I cannot find anyway to set faces via lisp code, although the
News file suggests that such an interface exists. Further, the
News file suggests faces can be screen-local, what does that
mean? I'm trying to find a solution to the problem that right now
I set faces via X resources, but various packages like
gnus-lucid and mode-motion conflict amongst themselves and my own
view about what should be bold or highlight. One solution is for
these packages to be modified with variables that I could
override for their choice of bold when I want italic. Another is
perhaps buffer or screen local (?) values for bold and italic,
assuming a lisp interface for setting these.

Comments, suggestions?

--
Chris McClenaghan    mcclen@uswest.com


From help-lucid-emacs-request@lucid.com  Thu Aug 13 18:04:39 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA23262; Thu, 13 Aug 92 18:04:39 PDT
Received: by heavens-gate.lucid.com id AA22496g; Thu, 13 Aug 92 17:55:46 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA22480g; Thu, 13 Aug 92 17:52:51 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA04086; Thu, 13 Aug 92 18:01:51 PDT
Date: Thu, 13 Aug 92 18:01:51 PDT
Message-Id: <9208140101.AA04086@thalidomide.lucid>
X-Windows: Dissatisfaction guaranteed.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: mcclen@uswest.com ( Chris McClenaghan)
Cc: help-lucid-emacs@lucid.com
Subject: Re: faces
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Chris McClenaghan's message of Fri 14-Aug-92 01:02:58 GMT <MCCLEN.92Aug13180258@alder.uswest.com>
References: <MCCLEN.92Aug13180258@alder.uswest.com>

M-x apropos RET set-face- RET

set-face-background	      (not bound to any keys)
  Function: Change the background color of the given face.  The color should be a 
set-face-background-pixmap    (not bound to any keys)
  Function: Change the background pixmap of the given face.  The pixmap name should be
set-face-font		      (not bound to any keys)
  Function: Change the font of the given face.  The font should be a string, the name
set-face-foreground	      (not bound to any keys)
  Function: Change the foreground color of the given face.  The color should be a 
set-face-underline-p	      (not bound to any keys)
  Function: Change whether the given face is underlined.  

M-x describe-function RET set-face-font RET

set-face-font: (face font &optional screen)
Change the font of the given face.  The font should be a string, the name
string, the name of the font.  If the optional SCREEN argument is provided, 
this face will be changed only in that screen; otherwise it will be changed
in all screens.

From help-lucid-emacs-request@lucid.com  Thu Aug 13 18:47:20 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA23339; Thu, 13 Aug 92 18:47:20 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA22659g; Thu, 13 Aug 92 18:35:22 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA29180; Thu, 13 Aug 92 21:45:43 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA29176; Thu, 13 Aug 92 21:45:41 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!munnari.oz.au!uniwa!root
From: Jamie Zawinski <jwz@lucid.com>
Subject: Re: faces
In-Reply-To: Chris McClenaghan's message of Fri 14-Aug-92 01:02:58 GMT <MCCLEN.92Aug13180258@alder.uswest.com>
Message-Id: <9208140101.AA04086@thalidomide.lucid>
Organization: Lucid Emacs stuff
References: <MCCLEN.92Aug13180258@alder.uswest.com>
X-Windows: Dissatisfaction guaranteed.
Date: Fri, 14 Aug 1992 01:01:51 GMT
Approved: help-lucid-emacs@lucid.com
Received-Date: Fri, 14 Aug 1992 09:27:33 +0800
Lines: 20
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

M-x apropos RET set-face- RET

set-face-background	      (not bound to any keys)
  Function: Change the background color of the given face.  The color should be a 
set-face-background-pixmap    (not bound to any keys)
  Function: Change the background pixmap of the given face.  The pixmap name should be
set-face-font		      (not bound to any keys)
  Function: Change the font of the given face.  The font should be a string, the name
set-face-foreground	      (not bound to any keys)
  Function: Change the foreground color of the given face.  The color should be a 
set-face-underline-p	      (not bound to any keys)
  Function: Change whether the given face is underlined.  

M-x describe-function RET set-face-font RET

set-face-font: (face font &optional screen)
Change the font of the given face.  The font should be a string, the name
string, the name of the font.  If the optional SCREEN argument is provided, 
this face will be changed only in that screen; otherwise it will be changed
in all screens.

From help-lucid-emacs-request@lucid.com  Thu Aug 13 21:13:13 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA23567; Thu, 13 Aug 92 21:13:13 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA23087g; Thu, 13 Aug 92 21:01:13 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA04296; Fri, 14 Aug 92 00:11:24 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA04292; Fri, 14 Aug 92 00:11:10 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!boulder!news!grunwald
From: grunwald@mumble.cs.colorado.edu (Dirk Grunwald)
Subject: Automatic load path failing?
Message-Id: <1992Aug14.034455.20843@colorado.edu>
Lines: 59
Nntp-Posting-Host: mumble.cs.colorado.edu
Reply-To: grunwald@foobar.cs.colorado.edu
Organization: University of Colorado at Boulder
Date: Fri, 14 Aug 1992 03:44:55 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


DECstation 5000/120 Ultrix 4.2a, config m-pmax.h, s-bsd-4-3.h
I use the 'amd' automounter.

I have the following problems. I defined my lisp directory path to be
/srl/Lucid19/lisp. If I start lemacs anywhere other than in the src
directory, it doesn't find needed files.

This doesn't appear to be a problem with the symlink structure I have
below, but I'll show my directory structure just in case.

Please email replies. Lucid emacs looks great.


[goober-174] lemacs 

Initialization error: File error: "Cannot open load file", "screen"

load-path is ("/srl/Lucid19/lisp" "/usr/local/emacs/lisp/" "/usr/local/emacs/lisp/term/")
exec-directory is "/srl/Lucid19/etc/"
emacs: No current X display connection to close[goober-174] ls -l /srl/Lucid19/
total 8
drwxrwxr-x  2 grunwald      512 Aug 13 21:36 bin/
drwxrwxr-x  2 grunwald     1536 Aug 13 21:17 etc/
lrwxrwxrwx  1 grunwald       22 Aug 13 21:14 info@ -> /srl/Emacs.common/info
lrwxrwxr-x  1 grunwald       26 Aug 13 21:27 lisp@ -> /srl/Lucid19.critical/lisp
lrwxrwxrwx  1 grunwald       25 Aug 13 21:15 local@ -> /srl/Emacs.critical/local
lrwxrwxrwx  1 grunwald       22 Aug 13 21:14 lock@ -> /srl/Emacs.common/lock
lrwxrwxrwx  1 grunwald       21 Aug 13 21:14 man@ -> /srl/Emacs.common/man
[goober-175] ls -l /srl/Lucid19.critical/
total 1
drwxr-xr-x 21 grunwald      512 Aug 13 21:27 lisp/
[goober-176] ls -l /srl/Lucid19.critical/lisp
total 48
-rw-r--r--  1 grunwald    12488 Aug 13 21:18 COPYING
-rw-r--r--  1 grunwald     2958 Aug 13 21:18 README
drwxr-xr-x  2 grunwald      512 Aug 13 21:16 bytecomp/
drwxr-xr-x  2 grunwald      512 Aug 13 21:16 calendar/
drwxr-xr-x  2 grunwald      512 Aug 13 21:16 comint/
drwxr-xr-x  2 grunwald     1024 Aug 13 21:16 dired/
drwxr-xr-x  2 grunwald      512 Aug 13 21:16 electric/
drwxr-xr-x  2 grunwald      512 Aug 13 21:16 emulators/
drwxr-xr-x  2 grunwald      512 Aug 13 21:16 energize/
drwxr-xr-x  2 grunwald      512 Aug 13 21:16 gnus/
drwxr-xr-x  2 grunwald     1024 Aug 13 21:17 ilisp/
drwxr-xr-x  2 grunwald     1536 Aug 13 21:17 modes/
drwxr-xr-x  2 grunwald     3072 Aug 13 21:18 packages/
-rw-r--r--  1 grunwald     6073 Aug 13 21:18 paths.el
drwxr-xr-x  2 grunwald     1536 Aug 13 21:18 prim/
drwxr-xr-x  2 grunwald      512 Aug 13 21:18 rmail/
-rw-r--r--  1 grunwald        0 Aug 13 21:18 site-init.el
-rw-r--r--  1 grunwald        0 Aug 13 21:18 site-load.el
drwxr-xr-x  2 grunwald      512 Aug 13 21:18 sunview/
drwxr-xr-x  2 grunwald      512 Aug 13 21:18 term/
drwxr-xr-x  2 grunwald      512 Aug 13 21:18 utils/
-rw-r--r--  1 grunwald     1700 Aug 13 21:18 version.el
drwxr-xr-x  2 grunwald     1536 Aug 13 21:18 vm/
drwxr-xr-x  2 grunwald      512 Aug 13 21:18 vms/
drwxr-xr-x  2 grunwald      512 Aug 13 21:18 x11/

From help-lucid-emacs-request@lucid.com  Thu Aug 13 21:20:31 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA23575; Thu, 13 Aug 92 21:20:31 PDT
Received: by heavens-gate.lucid.com id AA23123g; Thu, 13 Aug 92 21:11:28 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA23112g; Thu, 13 Aug 92 21:09:35 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA04768; Thu, 13 Aug 92 21:18:32 PDT
Date: Thu, 13 Aug 92 21:18:32 PDT
Message-Id: <9208140418.AA04768@thalidomide.lucid>
X-Windows: The first fully modular software disaster.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: grunwald@foobar.cs.colorado.edu
Cc: help-lucid-emacs@lucid.com
Subject: Re: Automatic load path failing?
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Dirk Grunwald's message of Fri 14-Aug-92 03:44:55 GMT <1992Aug14.034455.20843@colorado.edu>
References: <1992Aug14.034455.20843@colorado.edu>

In message <1992Aug14.034455.20843@colorado.edu> Dirk Grunwald wrote:
>
> DECstation 5000/120 Ultrix 4.2a, config m-pmax.h, s-bsd-4-3.h
> I use the 'amd' automounter.
> 
> I have the following problems. I defined my lisp directory path to be
> /srl/Lucid19/lisp. If I start lemacs anywhere other than in the src
> directory, it doesn't find needed files.

By "defined" I assume you mean by editing paths.h.  That doesn't really work
any more; you have to either add all subdirectories to the load path, or you
have to make it so that emacs can find them itself.  The problem is that
".../lisp/prim/" (and others) aren't making it on to load-path.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Thu Aug 13 21:42:51 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA23616; Thu, 13 Aug 92 21:42:51 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA23182g; Thu, 13 Aug 92 21:31:01 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA04884; Fri, 14 Aug 92 00:41:16 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA04880; Fri, 14 Aug 92 00:41:14 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!boulder!news!grunwald
From: grunwald@foobar.cs.colorado.edu (Dirk Grunwald)
Subject: Re: Automatic load path failing?
In-Reply-To: grunwald@mumble.cs.colorado.edu's message of Fri, 14 Aug 1992 03:44:55 GMT
Message-Id: <1992Aug14.041938.2772@colorado.edu>
Lines: 56
Nntp-Posting-Host: foobar.cs.colorado.edu
Reply-To: grunwald@foobar.cs.colorado.edu
Organization: University of Colorado at Boulder
References: <1992Aug14.034455.20843@colorado.edu>
Date: Fri, 14 Aug 1992 04:19:38 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


This appears to be related to the ``realpath'' stuff.

Below is my load-path. The stuff in ``/tmp_mnt/coco/export/coco/src''
is the mount point for the automounted ``/srl/src'' directory.

I imagine it's also attempting to look in
``/tmp_mnt/goober/srl/Lucid.critical/lisp''
(the mount point for the /srl/Lucid19 directory).

Any fix for this problem? I'd rather have the directory name *I* use
be inserted here.

While we're at it, I seem to not get the nice gray bitmap for
selections - it looks like it's not finding the bitmap file, although
it does find the include directories. Could this be a similar problem?
(Yes, parts of my X11 distribution are automounted).


/home/foobar/grunwald/Emacs/Edb
/home/foobar/grunwald/Emacs/Forms
/home/foobar/grunwald/Emacs/RCS-mode
/home/foobar/grunwald/Emacs/TreeDired
/home/foobar/grunwald/Emacs/Ange-FTP
/home/foobar/grunwald/Emacs/BBDB-1.46
/srl/Emacs/local/VorTeX
/home/foobar/grunwald/Emacs/CMU
/home/foobar/grunwald/Emacs/Calendar
/srl/Emacs/local/SC-2.2
/srl/Emacs/local/calc-2.01
/srl/Emacs/local/vm-5.31
/srl/Emacs/local/Gnus-3.14.1
/home/foobar/grunwald/Emacs/Timer
/home/foobar/grunwald/Emacs
/srl/Emacs/local
/srl/Lucid19/lisp
/tmp_mnt/coco/export/coco/src/Lucid19/lemacs-19.2/lisp/
/tmp_mnt/coco/export/coco/src/Lucid19/lemacs-19.2/lisp/bytecomp/
/tmp_mnt/coco/export/coco/src/Lucid19/lemacs-19.2/lisp/calendar/
/tmp_mnt/coco/export/coco/src/Lucid19/lemacs-19.2/lisp/comint/
/tmp_mnt/coco/export/coco/src/Lucid19/lemacs-19.2/lisp/dired/
/tmp_mnt/coco/export/coco/src/Lucid19/lemacs-19.2/lisp/electric/
/tmp_mnt/coco/export/coco/src/Lucid19/lemacs-19.2/lisp/emulators/
/tmp_mnt/coco/export/coco/src/Lucid19/lemacs-19.2/lisp/energize/
/tmp_mnt/coco/export/coco/src/Lucid19/lemacs-19.2/lisp/gnus/
/tmp_mnt/coco/export/coco/src/Lucid19/lemacs-19.2/lisp/ilisp/
/tmp_mnt/coco/export/coco/src/Lucid19/lemacs-19.2/lisp/modes/
/tmp_mnt/coco/export/coco/src/Lucid19/lemacs-19.2/lisp/packages/
/tmp_mnt/coco/export/coco/src/Lucid19/lemacs-19.2/lisp/prim/
/tmp_mnt/coco/export/coco/src/Lucid19/lemacs-19.2/lisp/rmail/
/tmp_mnt/coco/export/coco/src/Lucid19/lemacs-19.2/lisp/sunview/
/tmp_mnt/coco/export/coco/src/Lucid19/lemacs-19.2/lisp/term/
/tmp_mnt/coco/export/coco/src/Lucid19/lemacs-19.2/lisp/utils/
/tmp_mnt/coco/export/coco/src/Lucid19/lemacs-19.2/lisp/vm/
/tmp_mnt/coco/export/coco/src/Lucid19/lemacs-19.2/lisp/vms/
/tmp_mnt/coco/export/coco/src/Lucid19/lemacs-19.2/lisp/x11/

From help-lucid-emacs-request@lucid.com  Fri Aug 14 10:18:15 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA25659; Fri, 14 Aug 92 10:18:15 PDT
Received: by heavens-gate.lucid.com id AA25096g; Fri, 14 Aug 92 10:04:51 PDT
Received: from pat.uio.no by heavens-gate.lucid.com id AA25091g; Fri, 14 Aug 92 10:04:30 PDT
Received: from ulrik.uio.no by pat.uio.no with local-SMTP (PP) 
          id <06423-0@pat.uio.no>; Fri, 14 Aug 1992 19:14:40 +0200
Date: Fri, 14 Aug 1992 19:14:35 +0200
From: h.b.furuseth%usit.uio.no@lucid.com
Message-Id: <9208141714.AAdurin24643@durin.uio.no>
To: help-lucid-emacs@lucid.com
Subject: Re: Automatic load path failing?
References: <1992Aug14.034455.20843@colorado.edu> <9208140418.AA04768@thalidomide.lucid>

I think you can define the four paths in paths.h (be sure to include
trailing "/"s everywhere!) and then insert something like this in
site-init.el:

    (defun set-default-load-path ()
      ;; various search paths were set here
      (and (boundp 'Info-directory-list) (null Info-directory-list)
           (setq Info-directory-list
                 (list (expand-file-name "../info/" exec-directory))))
      (set-default-load-path-warning))

To get it slightly more flexible, set load-path in paths.h to all your
load directories EXCEPT the standard load path with subdirectories, and
insert this in set-default-load-path too:

    (let ((lisp (expand-file-name "../lisp/" exec-directory)))
      (or (member lisp load-path)
	  (setq load-path
		(nconc load-path (list lisp)
		       (mapcar 'file-name-as-directory
			       (directory-files lisp t "^[^.]" nil 'dirs))))))


I wish for a way to nail down load-path myself (other than hacking the
code), since it does not help to modify paths.h when dumped paths must
be named "/local/..." and /local is a symlink.

My default load-path is ("...lisp/local/" "...lisp/elc/" "...lisp/" nil)
where local/ has files that override the standard packages and elc/ has
links to all standard .elc files (or .el files when an .elc is missing).
The last is to avoid directory searches of course.
There is also a lisp/extra/ directory which _must_not_ be inserted
in load-path by default; it has "use at your own risk" packages that may
not work with V19.


Hallvard

From help-lucid-emacs-request@lucid.com  Fri Aug 14 10:53:23 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA25816; Fri, 14 Aug 92 10:53:23 PDT
Received: by heavens-gate.lucid.com id AA25312g; Fri, 14 Aug 92 10:41:01 PDT
Received: from spssig.spss.com by heavens-gate.lucid.com id AA25302g; Fri, 14 Aug 92 10:40:46 PDT
Received: from spsssq (spsssq.spss.com) by spssig.spss.com Fri, 14 Aug 92 12:54:21 CDT
Received: from spssrs0 by spsssq (5.61/4.7)
	id AA09681; Fri, 14 Aug 92 12:51:39 -0500
Received: from ibmws001.spss.com by spssrs0.spss.com (AIX 3.2/UCB 5.64/4.03)
          id AA37374; Fri, 14 Aug 1992 12:51:22 -0500
Received: by ibmws001.spss.com (AIX 3.2/UCB 5.64/4.03)
          id AA15211; Fri, 14 Aug 1992 12:51:20 -0500
From: bobhays@spss.com
Message-Id: <9208141751.AA15211@ibmws001.spss.com>
Subject: Please add me to the mailing list
To: help-lucid-emacs@lucid.com (help-lucid-emacs@lucid.com)
Date: Fri, 14 Aug 92 12:51:17 CDT
X-Mailer: ELM [version 2.3 PL11]

Please add me to this mailing list.

I'm trying to get Lucid running on an AIX 3.2.2 system.  I've kept my
changes (:-) but still am not done - it segment violates on occasion
or, if it does not, it will produce the X window and then hang.

Thanks and have fun! - Bob

From help-lucid-emacs-request@lucid.com  Fri Aug 14 11:13:10 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA25868; Fri, 14 Aug 92 11:13:10 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA25391g; Fri, 14 Aug 92 11:01:07 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA27324; Fri, 14 Aug 92 14:11:29 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA27320; Fri, 14 Aug 92 14:11:25 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!boulder!news!grunwald
From: grunwald@eclipse.cs.colorado.edu (Dirk Grunwald)
Subject: x-find-selected-file
Message-Id: <GRUNWALD.92Aug14115550@eclipse.cs.colorado.edu>
Nntp-Posting-Host: eclipse.cs.colorado.edu
Reply-To: grunwald@foobar.cs.colorado.edu
Organization: University of Colorado at Boulder
Distribution: alt
Date: 14 Aug 92 11:55:50
Lines: 23
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


Something like this might be a better choice for the ``open file''
menubar item.

(defun x-find-selected-file ()
  (interactive)
  (setq last-command nil)
  (let
      ((filename nil))
    (if (and (x-selection-owner-p) primary-selection-extent)
	(save-excursion
	  (set-buffer (extent-buffer primary-selection-extent))
	  (setq filename
		(buffer-substring
		 (extent-start-position primary-selection-extent)
		 (extent-end-position primary-selection-extent))))
      )
    (if (and filename (file-exists-p filename))
	(find-file filename)
      (call-interactively 'find-file)
      )
    )
  )

From help-lucid-emacs-request@lucid.com  Fri Aug 14 11:19:15 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA25893; Fri, 14 Aug 92 11:19:15 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA25415g; Fri, 14 Aug 92 11:10:06 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA27781; Fri, 14 Aug 92 14:20:28 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA27777; Fri, 14 Aug 92 14:20:26 -0400
Path: uunet!stanford.edu!ames!elroy.jpl.nasa.gov!swrinde!mips!mips!munnari.oz.au!yoyo.aarnet.edu.au!frodo.cc.flinders.edu.au!baldrick.cs.flinders.edu.au!jim
From: jim%baldrick.cs.flinders.edu.au@lucid.com (Jim Entwisle)
Newsgroups: alt.lucid-emacs.help,gnu.emacs.help
Subject: Re: hiding and exposing text
Message-Id: <1992Aug14.131305.48710@frodo.cc.flinders.edu.au>
Date: 14 Aug 92 13:13:05 GMT
References: <MCCLEN.92Aug12205450@alder.uswest.com>
Organization: Flinders University
Lines: 6
Xref: uunet alt.lucid-emacs.help:272 gnu.emacs.help:7080
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


You may find the Outline mode useful. It includes a regular expression
that can be re-defined to work on things like while loops etc. as
required. 

Jim Entwisle

From help-lucid-emacs-request@lucid.com  Fri Aug 14 11:40:59 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA25931; Fri, 14 Aug 92 11:40:59 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA25512g; Fri, 14 Aug 92 11:31:45 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA29393; Fri, 14 Aug 92 14:42:06 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA29383; Fri, 14 Aug 92 14:42:03 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!boulder!news!grunwald
From: grunwald@eclipse.cs.colorado.edu (Dirk Grunwald)
Subject: Mark funniness
Message-Id: <GRUNWALD.92Aug14120513@eclipse.cs.colorado.edu>
Nntp-Posting-Host: eclipse.cs.colorado.edu
Reply-To: grunwald@foobar.cs.colorado.edu
Organization: University of Colorado at Boulder
Distribution: alt
Date: 14 Aug 92 12:05:13
Lines: 12
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


I am used to using these functions to position on the display...

(global-set-key "\M-'" 'move-to-window-line)
(global-set-key "\M-," '(lambda() (interactive) (move-to-window-line 0)))
(global-set-key "\M-." '(lambda() (interactive) (move-to-window-line -1)))

A normal editing sequence for me is to mark something (\C-spc), move there
(possibly using the move-to-window-line keys above) and then e.g, kill it.

I can't do that in Lucid-19.2 -- it appears the mark gets cleared.
Any reason why? Anyone have a plausible fix?

From help-lucid-emacs-request@lucid.com  Fri Aug 14 11:46:08 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA25947; Fri, 14 Aug 92 11:46:08 PDT
Received: by heavens-gate.lucid.com id AA25553g; Fri, 14 Aug 92 11:36:33 PDT
Received: from spssig.spss.com by heavens-gate.lucid.com id AA25546g; Fri, 14 Aug 92 11:35:46 PDT
Received: from spsssq (spsssq.spss.com) by spssig.spss.com Fri, 14 Aug 92 13:49:23 CDT
Received: from spssrs0 by spsssq (5.61/4.7)
	id AA12832; Fri, 14 Aug 92 13:46:40 -0500
Received: from ibmws001.spss.com by spssrs0.spss.com (AIX 3.2/UCB 5.64/4.03)
          id AA54354; Fri, 14 Aug 1992 13:46:23 -0500
Received: by ibmws001.spss.com (AIX 3.2/UCB 5.64/4.03)
          id AA17655; Fri, 14 Aug 1992 13:46:22 -0500
From: bobhays@spss.com
Message-Id: <9208141846.AA17655@ibmws001.spss.com>
Subject: Could anyone that has lucid up on AIX 3.2.2 contact me?
To: help-lucid-emacs@lucid.com (help-lucid-emacs@lucid.com)
Date: Fri, 14 Aug 92 13:46:20 CDT
X-Mailer: ELM [version 2.3 PL11]

I've looked at the help and bugs listings and ....

Has anyone gotten Lucid working on AIX 3.2.2?  If so, please email me
at bobhays@spss.com.

Thanks and have fun! - Bob

From help-lucid-emacs-request@lucid.com  Fri Aug 14 14:31:07 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA26481; Fri, 14 Aug 92 14:31:07 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA26192g; Fri, 14 Aug 92 14:20:36 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA18791; Fri, 14 Aug 92 17:30:44 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA18787; Fri, 14 Aug 92 17:30:41 -0400
Path: uunet!olivea!decwrl!mips!swrinde!zaphod.mps.ohio-state.edu!magnus.acs.ohio-state.edu!csn!cherokee!mcclen
From: mcclen@advtech.uswest.com ( Chris McClenaghan)
Newsgroups: alt.lucid-emacs.help
Subject: Info-directory-list
Message-Id: <MCCLEN.92Aug14115800@alder.advtech.uswest.com>
Date: 14 Aug 92 18:58:00 GMT
Organization: US WEST Advanced Technologies, Boulder, Colorado
Lines: 8
Nntp-Posting-Host: alder.advtech.uswest.com
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

How is the Info-directory-list intended to be use?

Can I distribute the info files in various directories, what sort
of dir file is required in these other locations, in the default
area what sort of dir changes are required?

--
Chris McClenaghan    mcclen@advtech.uswest.com

From help-lucid-emacs-request@lucid.com  Fri Aug 14 15:38:22 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA26662; Fri, 14 Aug 92 15:38:22 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA26514g; Fri, 14 Aug 92 15:26:28 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA05499; Fri, 14 Aug 92 18:36:44 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA05487; Fri, 14 Aug 92 18:36:04 -0400
Path: uunet!mcsun!uknet!edcastle!edcogsci!cogsci!thomas
From: thomas@cogsci.ed.ac.uk (Thomas Plass)
Newsgroups: alt.lucid-emacs.help
Subject: "Buttons" in menubar?
Message-Id: <THOMAS.92Aug14132052@banks.cogsci.ed.ac.uk>
Date: 14 Aug 92 12:20:52 GMT
Reply-To: thomas%uk.ac.ed.cogsci@lucid.com
Distribution: alt.lucid-emacs.help
Organization: Centre for Cognitive Science, University of Edinburgh
Lines: 17
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


Subject line says it all, really but I'll expand.  Is it possible to
have items in the menubar (in Lucid Emacs 19.2.1) that don't have a
pull-down menu attached to them and respond to a simple mouse click,
rather like buttons?  If that sounds a strange thing to have, imagine
that the items are not represented by alphanumeric characters but by
"symbols" and execute functions for which it would not make sense to
group them together.

Any help would be appreciated.

th.
--
Thomas Plass                                    | University of Edinburgh
Fax:   +44 31 650 4587                          | Centre for Cognitive Science
ARPA:  thomas%cogsci.ed.ac.uk@nsfnet-relay.ac.uk| 2 Buccleuch Place
JANET: thomas@uk.ac.ed.cogsci                   | Edinburgh EH8 9LW Scotland

From help-lucid-emacs-request@lucid.com  Fri Aug 14 15:46:29 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA26678; Fri, 14 Aug 92 15:46:29 PDT
Received: by heavens-gate.lucid.com id AA26570g; Fri, 14 Aug 92 15:37:30 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA26561g; Fri, 14 Aug 92 15:35:34 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA08850; Fri, 14 Aug 92 15:44:32 PDT
Date: Fri, 14 Aug 92 15:44:32 PDT
Message-Id: <9208142244.AA08850@thalidomide.lucid>
X-Windows: It could be worse, but it'll take time.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: thomas%cogsci.ed.ac.uk@nsfnet-relay.ac.uk
Cc: help-lucid-emacs@lucid.com
Subject: Re: "Buttons" in menubar?
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Thomas Plass's message of  14-Aug-92 12:20:52 GMT <THOMAS.92Aug14132052@banks.cogsci.ed.ac.uk>
References: <THOMAS.92Aug14132052@banks.cogsci.ed.ac.uk>

Yes, put an "item" (a vector of three elements) in the toplevel menubar list
instead of a "menu" (a list.)  look at lisp/energize/energize-menus.el for
an example of this.

From help-lucid-emacs-request@lucid.com  Sat Aug 15 08:16:42 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA28991; Sat, 15 Aug 92 08:16:42 PDT
Received: by heavens-gate.lucid.com id AA29039g; Sat, 15 Aug 92 08:04:39 PDT
Received: from moebius.loria.fr by heavens-gate.lucid.com id AA29035g; Sat, 15 Aug 92 08:04:27 PDT
Received: by moebius.loria.fr id AA24797
  (5.65c+/IDA-1.4.3 for help-lucid-emacs@lucid.com); Sat, 15 Aug 92 17:14:45 +0200
Date: Sat, 15 Aug 92 17:14:45 +0200
From: Guido Bosch <Guido.Bosch%loria.fr@lucid.com>
Message-Id: <9208151514.AA24797@moebius.loria.fr>
To: Chet.Murthy@inria.fr
Cc: help-lucid-emacs@lucid.com
Subject: Re: mode-motion package 
In-Reply-To: <25143.713890091@margaux.inria.fr>
References: <25143.713890091@margaux.inria.fr>
	<BOSCH.92Aug5135209@moebius.loria.fr>
Reply-To: Guido BOSCH <bosch%loria.fr@lucid.com>

Chet.Murthy@inria.fr writes:
 > 
 > Dear Guido,
 > 
 > I just FTP'd your mode-motion package, and it works like a charm in
 > dired, but nothing happens in emacs-lisp mode (nor in lisp-mode, for
 > that matter).
 > 
 > I verified that the local variable mode-motion-hook was indeed set to
 > mouse-track-highlight-thing.
 > 

I guess youre using a bold font as default in your Emacs.  But
`mouse-track-highlight-thing' just turns things into bold. Use the
following motion handler to get the same highlighting effect as for
the line motion handlers (this will be the default in the next
version):

(defun mouse-track-highlight-thing (event)
    "Track the mouse motion by highlighting the smallest syntactic structure
mouse is over.  This function can be used as value of the variable
`mouse-motion-handler'.  Takes One Argument: EVENT"

  (mouse-track-highlight-region
   event
   (function thing-boundaries)
   't))

And use this one for highlighting things in bold (You will see, it
looks better if you do not use a bold font as default):

(defun mouse-track-highlight-thing-bold (event) 
  "Track the mouse motion by highlighting the smallest syntactic
structure mouse is over.  Highlighting is done by using a bold face.
This function can be used as value of the variable
`mouse-motion-handler'.  Takes One Argument: EVENT"

  (mouse-track-highlight-region
   event
   (function thing-boundaries)))


Try also the Meta Button2 copy facility on highlighted things. 

Enjoy, 

	Guido

From help-lucid-emacs-request@lucid.com  Sat Aug 15 08:58:23 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA29050; Sat, 15 Aug 92 08:58:23 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA29130g; Sat, 15 Aug 92 08:46:30 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA20845; Sat, 15 Aug 92 11:56:55 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA20837; Sat, 15 Aug 92 11:56:53 -0400
Path: uunet!usc!corvus.usc.edu!rkou
From: rkou%corvus.ucs@lucid.com (Roger H. Kou)
Newsgroups: alt.lucid-emacs.help
Subject: what's lemacs?
Date: 15 Aug 1992 08:56:46 -0700
Organization: USC Computing Services, Los Angeles
Lines: 6
Distribution: alt
Message-Id: <RKOU.92Aug15085644@corvus.ucs>
Nntp-Posting-Host: corvus.usc.edu
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


I mean someone have to ask this somewhere, right? :-)

thanks,

Roger...

From help-lucid-emacs-request@lucid.com  Sun Aug 16 10:47:00 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01700; Sun, 16 Aug 92 10:47:00 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA01828g; Sun, 16 Aug 92 10:31:31 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA00496; Sun, 16 Aug 92 13:41:57 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA00492; Sun, 16 Aug 92 13:41:55 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!boulder!news!grunwald
From: grunwald@goober.cs.colorado.edu (Dirk Grunwald)
Subject: Error in init file: error: "Lisp nesting exceeds max-lisp-eval-depth"
Message-Id: <GRUNWALD.92Aug16100930@goober.cs.colorado.edu>
Nntp-Posting-Host: goober.cs.colorado.edu
Reply-To: grunwald@foobar.cs.colorado.edu
Organization: University of Colorado at Boulder
Date: 16 Aug 92 10:09:30
Lines: 148
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


I attempted to preload much of the lisp software using the site-load
appended below.

Once I did that, I started getting the message

Error in init file: error: "Lisp nesting exceeds max-lisp-eval-depth"

when I started lemacs. So, I uncommented the preloading & I *still*
get this message. I must have screwed up something, but don't know
what. Any ideas?

Also, it turns out you can't preload some things because they complain
about needing to run under an X display - things like ange-ftp,
dired-x and so forth.

Any help appreciated.

Here's my site-load.el--

;;
;;	site-load.el for SRL lucid emacs
;;
(defun loadup::load-list (doit list)
  (if doit
      (if (not (null list))
	  (progn
	    (load (car list))
	    (garbage-collect)
	    (print pure-bytes-used)
	    (loadup::load-list doit (cdr list))
	    )
	)
    )
)

(loadup::load-list 't
 '("gnus" "gnusmail" "gnusmisc" "gnuspost"
   "nntp" "gnus-mark" "gnus-hide-quote" ) ; timezone 
 )

(loadup::load-list 't
'( "vm-delete" "vm-edit" "vm-folder" "vm-group" 
   "vm-mark" "vm-message" "vm-misc" "vm-motion" "vm-page" "vm-save"
   "vm-search" "vm-summary" "vm-undo" "vm-vars" "vm-window"
 )
)

(loadup::load-list 't
	'( "dired" "dired-cd" "dired-cwd" "dired-link" "dired-num" 
	   "dired-rcs" "dired-trns" ); "ange-ftp"  -- can't preload?
)

;;
;; CMU shell
(loadup::load-list 't
 '( "comint" "shell" )
 )

(loadup::load-list 't
		   '( "bytecomp" "bytecomp-runtime" "byte-optimize")
)

;;
;; built-ins we use a lot...
;;
(loadup::load-list 't
		   '( 
		     ;;
		     ;; modes
		     ;;

		     "dabbrev" "c-mode"
		     "c++-mode""sendmail" "c-style"
		     ;;
		     ;; Packages
		     ;;
		     "webster" "compile" "info"  "man"  
		     "apropos" "edebug" "info" "mh-e"
		     ;;
		     ;; from prim
		     ;;
		     "rect" "register"	; "timer"
		     ;;
		     ;; utils
		     ;;
		     "backquote"
		     )
		   )

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Localisms...
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

(setq old-load-path load-path)

(defun loadup::add (path)
  (setq load-path (cons path load-path))
  )

(let* ((local-gnu "/srl/Lucid19/local"))
  (loadup::add (concat local-gnu "/VorTeX/"))
  (loadup::add (concat local-gnu "/SC-2.2/"))
  (loadup::add local-gnu)
  )

;;
;; VorTeX -- Load first because it used to define fill-paragraph
;; and we want to over-ride that with filladapt.elc
;;
(loadup::load-list 't
 '( 
   "TeX-mode" "TeX-custom" "TeX-misc" "TeX-match" "TeX-spell" 
   ;;    "BibTeX-abv" "BibTeX-misc" "BibTeX-mode" "BibTeX-ops"
   ;;    "TeX-bib"
   )
 )

;;
;; Supercite
;;
(loadup::load-list 't
 '( "sc" "sc-alist" "sc-electric" )
 )

;;
;; Random shit
;;
(loadup::load-list 't
 '( "crypt" "electric-minibuffer" "filladapt" ;  "ps-mode"
    )
 )

;;
;; Clean up after ourselves..
;;


(setq load-path old-load-path)

(makunbound 'old-load-path)
(fmakunbound 'loadup::load-list)
(fmakunbound 'loadup::add)

(garbage-collect)
(print pure-bytes-used)
(garbage-collect)


From help-lucid-emacs-request@lucid.com  Sun Aug 16 10:48:54 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01709; Sun, 16 Aug 92 10:48:54 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA01843g; Sun, 16 Aug 92 10:39:04 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA00661; Sun, 16 Aug 92 13:49:29 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA00657; Sun, 16 Aug 92 13:49:27 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!mcsun!Germany.EU.net!gmd.de!jvnc.net!yale.edu!qt.cs.utexas.edu!cs.utexas.edu!wupost!usc!rpi!usenet.coe.montana.edu!news.u.washington.edu!uw-beaver!cornell!murthy
From: murthy@cs.cornell.edu (Chet Murthy)
Subject: Inserting into extents
Message-Id: <1992Aug16.155553.8828@cs.cornell.edu>
Organization: Cornell Univ. CS Dept, Ithaca NY 14853
Date: Sun, 16 Aug 1992 15:55:53 GMT
Lines: 15
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I would like to use extents to mark regions of editable text.
However, when I insert characters before the first char of
the extent, they end up outside.  Is there a way to change this?

I read in the NEWS that this was the default behaviour, but if there is
some simple way to change this, and have the other possibility,
it would be nice.

thanks,
--chet--






From help-lucid-emacs-request@lucid.com  Sun Aug 16 10:50:42 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01717; Sun, 16 Aug 92 10:50:42 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA01853g; Sun, 16 Aug 92 10:41:27 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA00716; Sun, 16 Aug 92 13:51:52 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA00712; Sun, 16 Aug 92 13:51:51 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!news.claremont.edu!ucivax!noiro.acs.uci.edu!usc!rpi!usenet.coe.montana.edu!news.u.washington.edu!uw-beaver!cornell!murthy
From: murthy@cs.cornell.edu (Chet Murthy)
Subject: Vortex macros for Lucid?
Message-Id: <1992Aug16.144137.7305@cs.cornell.edu>
Organization: Cornell Univ. CS Dept, Ithaca NY 14853
Date: Sun, 16 Aug 1992 14:41:37 GMT
Lines: 12
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I noticed that the old "shell.el" has been replaced
by a mode built on top
of Olin Shivers' comint stuff.  Which is
wonderful.  However, for those who got really used
to vortex's emacs macros, this is a pain, because
vortex talks only to the old-style shell interface.

Anybody got patches to fix vortex?

Thanks,
--chet--


From help-lucid-emacs-request@lucid.com  Sun Aug 16 14:49:51 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA02063; Sun, 16 Aug 92 14:49:51 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA02261g; Sun, 16 Aug 92 14:40:45 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA05398; Sun, 16 Aug 92 17:51:11 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA05394; Sun, 16 Aug 92 17:51:10 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!boulder!news!grunwald
From: grunwald@goober.cs.colorado.edu (Dirk Grunwald)
Subject: man no workie
Message-Id: <GRUNWALD.92Aug16145543@goober.cs.colorado.edu>
Nntp-Posting-Host: goober.cs.colorado.edu
Reply-To: grunwald@foobar.cs.colorado.edu
Organization: University of Colorado at Boulder
Distribution: alt
Date: 16 Aug 92 14:55:43
Lines: 16
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


The version of 'man' in lemacs-19.2 doesn't seem to work very well for
me.

I don't set a MANPATH - I use the Perl version of 'man' that
interpolates the manpath from my PATH. I keep my man pages compressed
and I never have any 'cat' pages.

Man never finds anything. I'm single-stepping now to find out why, but
perhaps someone already knows the answer.

Has anyone considered doing something along the lines of the ``man in
the background'' part of the Tektronix hacks for Epoch?


Dirk Grunwald -- Univ. of Colorado at Boulder	  (grunwald@cs.colorado.edu)

From help-lucid-emacs-request@lucid.com  Sun Aug 16 20:47:16 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA02465; Sun, 16 Aug 92 20:47:16 PDT
Received: by heavens-gate.lucid.com id AA03060g; Sun, 16 Aug 92 20:35:07 PDT
Received: from JUNIN.MT.CS.CMU.EDU by heavens-gate.lucid.com id AA03056g; Sun, 16 Aug 92 20:34:56 PDT
Received: from junin.mt.cs.cmu.edu by JUNIN.MT.CS.CMU.EDU id aa05526;
          16 Aug 92 23:44:57 EDT
To: grunwald@FOOBAR.CS.COLORADO.EDU
Cc: help-lucid-emacs@lucid.com
Subject: Re: Error in init file: error: "Lisp nesting exceeds max-lisp-eval-depth" 
In-Reply-To: Your message of 16 Aug 92 10:09:30.
             <GRUNWALD.92Aug16100930@goober.cs.colorado.edu> 
Date: Sun, 16 Aug 92 23:44:51 -0400
Message-Id: <5523.714023091@JUNIN.MT.CS.CMU.EDU>
From: Todd_Kaufmann@JUNIN.MT.CS.CMU.EDU

> Once I did that, I started getting the message
> 
> Error in init file: error: "Lisp nesting exceeds max-lisp-eval-depth"

I get this message from a bad interaction of ange-ftp and Ilisp;
they both overload expand-file-name, and then seem to call each other
infinitely, max'ing out the stack.

If you (setq debug-on-error t) first, you should see this in the *Backtrace*.

You will either see a function calling itself recursively, or all different
functions.  If the latter, you might only need to increase the value of
max-lisp-eval-depth.

 -todd

From help-lucid-emacs-request@lucid.com  Sun Aug 16 23:55:34 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA02863; Sun, 16 Aug 92 23:55:34 PDT
Received: by heavens-gate.lucid.com id AA03407g; Sun, 16 Aug 92 23:43:25 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA03403g; Sun, 16 Aug 92 23:43:11 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA21238; Sun, 16 Aug 92 23:49:17 PDT
Date: Sun, 16 Aug 92 23:49:17 PDT
Message-Id: <9208170649.AA21238@thalidomide.lucid>
X-Windows: It could happen to you.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: Todd_Kaufmann@JUNIN.MT.CS.CMU.EDU
Cc: grunwald@FOOBAR.CS.COLORADO.EDU, help-lucid-emacs@lucid.com
Subject: Re: Error in init file: error: "Lisp nesting exceeds max-lisp-eval-depth" 
In-Reply-To: Todd Kaufmann's message of Sun 16-Aug-92 23:44:51 -0400 <5523.714023091@JUNIN.MT.CS.CMU.EDU>
References: <5523.714023091@JUNIN.MT.CS.CMU.EDU>
	<GRUNWALD.92Aug16100930@goober.cs.colorado.edu>

In message <5523.714023091@JUNIN.MT.CS.CMU.EDU> Todd Kaufmann wrote:
>
> You will either see a function calling itself recursively, or all different
> functions.  If the latter, you might only need to increase the value of
> max-lisp-eval-depth.

If you need to increase max-lisp-eval-depth (that is, it's not actually
looping) then this probably means you're loading something interpreted
that doesn't want to be.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Mon Aug 17 02:10:45 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA03017; Mon, 17 Aug 92 02:10:45 PDT
Received: by heavens-gate.lucid.com id AA03671g; Mon, 17 Aug 92 01:58:57 PDT
Received: from bernina.ethz.ch by heavens-gate.lucid.com id AA03667g; Mon, 17 Aug 92 01:58:47 PDT
Received: from thot by bernina.ethz.ch with SMTP inbound id <14833-0@bernina.ethz.ch>; Mon, 17 Aug 1992 11:08:14 +0200
Received: by itp.ethz.ch; Mon, 17 Aug 92 11:08:12 +0200
From: heeb%itp.ethz.ch@lucid.com (Elmar Heeb)
Date: Mon, 17 Aug 92 11:08:12 +0200
Message-Id: <9208170908.AA24087@itp.ethz.ch>
To: help-lucid-emacs@lucid.com
Subject: Lightning Completion for Lucid Emacs


Has anyone rewritten the lightning completion package by Andy Poulsen,
<andy@huey.jpl.nasa.gov>, to work with Lucid Emacs?  It has been
posted to comp.emacs, and it is one of these packages I got used to in
Emacs 18.  As it makes heavy use of keymaps, I didn't expect it to
work in Lucid Emacs, and it might need quite some expertise in dealing
with keyboard events to convert it.

Most likely, I won't have the time to work on it before October, and
even then it will take me a while, so I would be glad to find out that
someone has already done the conversion, or that s/he could do it
without much trouble.

Thank you for all the work on Lucid Emacs.
Regards,

Elmar Heeb


---------------------------------------------------------------------------
Elmar Heeb                           Internet (Preferred): heeb@itp.ethz.ch
Institut fuer Theoretische Physik    Bitnet              :    HEEB@CZHETH5A
ETH Hoenggerberg                     Telephone           :   +41 1 377 2591
CH-8093 Zurich, Switzerland          Fax                 :   +41 1 372 2046
---------------------------------------------------------------------------

From help-lucid-emacs-request@lucid.com  Mon Aug 17 05:19:30 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA03604; Mon, 17 Aug 92 05:19:30 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA04085g; Mon, 17 Aug 92 05:07:44 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA13557; Mon, 17 Aug 92 08:18:12 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA13552; Mon, 17 Aug 92 08:18:10 -0400
Path: uunet!mcsun!corton!sophia!rhea.inria.fr!beust
From: beust%rhea.inria.fr@lucid.com (Cedric Beust)
Newsgroups: alt.lucid-emacs.help
Subject: Lisp files description?
Message-Id: <27116@sophia.inria.fr>
Date: 17 Aug 92 09:37:55 GMT
Organization: University of Nice Sophia-Antipolis, France
Lines: 9
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


	There are many elisp files in the Lucid emacs distribution and
	many of them are new to me. Is there a file describing shortly
	each supplied .el? That would be of great help!


--
Cedric BEUST, beust@sa.inria.fr, Bull Research Koala proj, KoalaBus & xforum
Pho:(33) 93.65.78.07(.66 Fax), INRIA, B.P.93 - 06902 Sophia Antipolis, FRANCE.

From help-lucid-emacs-request@lucid.com  Mon Aug 17 09:28:05 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA04434; Mon, 17 Aug 92 09:28:05 PDT
Received: by heavens-gate.lucid.com id AA04597g; Mon, 17 Aug 92 09:16:06 PDT
Received: from moebius.loria.fr by heavens-gate.lucid.com id AA04593g; Mon, 17 Aug 92 09:15:35 PDT
Received: by moebius.loria.fr id AA01660
  (5.65c+/IDA-1.4.3 for help-lucid-emacs@lucid.com); Mon, 17 Aug 92 18:23:39 +0200
Date: Mon, 17 Aug 92 18:23:39 +0200
From: Guido Bosch <Guido.Bosch%loria.fr@lucid.com>
Message-Id: <9208171623.AA01660@moebius.loria.fr>
To: amir@matis.ingr.COM
Cc: help-lucid-emacs@lucid.com
Subject: RE: mode-motion package 
In-Reply-To: <9208160837.AA20963@simpson.turtles>
References: <9208160837.AA20963@simpson.turtles>
Reply-To: Guido BOSCH <bosch%loria.fr@lucid.com>

Amir Katz writes:
 > Dear Guido,
 > My mail gateway was down for a few weeks, so I missed a lot of stuff which
 > went on Lucid mailing lists. Could you please send me your posting regarding
 > the mode-motion? 
 > 

Ok, here is the newest version of mode-motion. 

uudecode, uncompress and tar xvf it, than follow the installation
andusage instructions in the README.

Because you seem not to be the only person who had problems to get
mode motion, I send a CC of this message to the
help-lucid-emacs@lucid.com mailing list.

Please could someboy tell me whether it will be ftp'able and if so,
where?

	Guido


------------------------ mode-motion.tar.Z.uu ------------------------
begin 644 mode-motion.tar.Z
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
.J3H7F^JF(KJL;^LK P+*
 
end


From help-lucid-emacs-request@lucid.com  Mon Aug 17 10:21:51 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA04560; Mon, 17 Aug 92 10:21:51 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA04746g; Mon, 17 Aug 92 10:12:47 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA22818; Mon, 17 Aug 92 13:10:24 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA22807; Mon, 17 Aug 92 13:10:21 -0400
Path: uunet!olivea!apple!csl!hercules!hogan
From: hogan@csl.sri.com (Emmett Hogan)
Newsgroups: alt.lucid-emacs.help
Subject: FAQ ?
Message-Id: <HOGAN.92Aug17100223@cujo.csl.sri.com>
Date: 17 Aug 92 18:02:23 GMT
Organization: Computer Science Lab, SRI International, Menlo Park, CA.
Lines: 24
X-Disclaimer: The views expressed in this message are those of an
	      individual at SRI International, and do not necessarily
	      reflect those of the company.
Nntp-Posting-Host: cujo.csl.sri.com
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


Hi All,

Is there a FAQ for this newsgroup yet?  I ask this simply because I
KNOW I am about to ask a question which has appeared here UMPTEEN
MILLION times during the short lifespan of this group, but I
unfortunately keep missing the answer.  So I waited a month, looking
for a FAQ to appear, but to no avail.  But anyway here is my question...

Where can I get the lhilit package?

Thanks in advance,
Emmett


--
-------------------------------------------------------------------
Emmett Hogan              Computer Science Lab, SRI International
Inet: Emmett_Hogan@csl.sri.com
UUCP: {ames, decwrl, pyramid, sun}!fernwood!hercules!Emmett_Hogan
USMAIL: EL231, 333 Ravenswood Ave, Menlo Park, CA  94025
PacBell: (415)859-3232 (voice), (415)859-2844 (fax)
ICBM: 37d 27' 14" North, 122d 10' 52" West
-------------------------------------------------------------------

From help-lucid-emacs-request@lucid.com  Mon Aug 17 12:15:31 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA04888; Mon, 17 Aug 92 12:15:31 PDT
Received: by heavens-gate.lucid.com id AA05130g; Mon, 17 Aug 92 12:02:04 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA05117g; Mon, 17 Aug 92 12:00:42 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA23569; Mon, 17 Aug 92 12:09:42 PDT
Date: Mon, 17 Aug 92 12:09:42 PDT
Message-Id: <9208171909.AA23569@thalidomide.lucid>
X-Windows: A terminal disease.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: hogan@csl.sri.com (Emmett Hogan)
Cc: help-lucid-emacs@lucid.com
Subject: Re: FAQ ?
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Emmett Hogan's message of  17-Aug-92 18:02:23 GMT <HOGAN.92Aug17100223@cujo.csl.sri.com>
References: <HOGAN.92Aug17100223@cujo.csl.sri.com>

There's no FAQ, but the lists are archived on labrea.stanford.edu in 
pub/gnu/lucid/.  Lhilit is in there somewhere.

It would be great if someone wanted to maintain a FAQ...

From help-lucid-emacs-request@lucid.com  Mon Aug 17 17:31:04 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA05951; Mon, 17 Aug 92 17:31:04 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA05958g; Mon, 17 Aug 92 17:19:04 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA14300; Mon, 17 Aug 92 20:29:34 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA14296; Mon, 17 Aug 92 20:29:33 -0400
Path: uunet!mcsun!uknet!mucs!uts.mcc.ac.uk!ssurhode
From: ssurhode@susssys1.rdg.ac.uk (Paul Rhodes)
Newsgroups: alt.lucid-emacs.help
Subject: Hilits for LaTeX
Message-Id: <SSURHODE.92Aug17121615@suma1.susssys1.rdg.ac.uk>
Date: 17 Aug 92 11:16:15 GMT
Distribution: alt
Organization: Reading University, England
Lines: 9
Originator: netnews@uts.mcc.ac.uk
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Has anyone got hilits for latex files, that will print all the
commands in one colour, all the comments in another colour, and math
mode in perhaps another colour, etc....

If so, can you please forward me a copy ?

thanks in advance,

   Paul.

From help-lucid-emacs-request@lucid.com  Tue Aug 18 06:23:14 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA07891; Tue, 18 Aug 92 06:23:14 PDT
Received: by heavens-gate.lucid.com id AA07002g; Tue, 18 Aug 92 06:14:08 PDT
Received: from moebius.loria.fr by heavens-gate.lucid.com id AA06998g; Tue, 18 Aug 92 06:13:56 PDT
Received: by moebius.loria.fr id AA03456
  (5.65c+/IDA-1.4.3 for help-lucid-emacs@lucid.com); Tue, 18 Aug 92 15:24:00 +0200
Date: Tue, 18 Aug 92 15:24:00 +0200
From: Guido Bosch <Guido.Bosch%loria.fr@lucid.com>
Message-Id: <9208181324.AA03456@moebius.loria.fr>
To: stuarth@csis.dit.csiro.au
Cc: help-lucid-emacs@lucid.com
Subject: popup menu resources
In-Reply-To: <9208170702.AA01629@argo>
References: <9208170702.AA01629@argo>
	<BOSCH.92Aug13170300@moebius.loria.fr>
Reply-To: Guido BOSCH <bosch%loria.fr@lucid.com>

stuarth@csis.dit.csiro.au writes:
 > According to Guido Bosch:
 > > 
 > > Try this: It's the beginning of a dired mode menu I'm currently
 > > experiencing with. But I don't find it perfect yet.
 > > Maybe sombody wants to improve it ... 
 > > [...]
 > 
 > Guido,
 > 
 > I really like your dired popup menu - but how do you control what fonts and
 > colors it uses and where on the screen it pops up?
 > 
 > I've customised the menubar via the Emacs*menubar X resources - is there
 > something similar for popup menus?
 > 

I'm sorry, but I have no answer to your question. I custommized the
menubar font, just as you did, I guess, but I couldn't yet figure out
how to control the popup menu resources or whether they exist at all.

I mail a CC of this message to <help-lucid-emacs@lucid.com>, maybe
somebody knows   ... 

	Guido




From help-lucid-emacs-request@lucid.com  Tue Aug 18 08:58:03 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA08154; Tue, 18 Aug 92 08:58:03 PDT
Received: by heavens-gate.lucid.com id AA07244g; Tue, 18 Aug 92 08:46:06 PDT
Received: from mitchell.cit.cornell.edu by heavens-gate.lucid.com id AA07231g; Tue, 18 Aug 92 08:44:14 PDT
Received: from FALCON.CIT.CORNELL.EDU by mitchell.cit.cornell.edu (4.1/1.34/Honig-1.3)
	id AA25646; Tue, 18 Aug 92 11:54:32 EDT
Message-Id: <9208181554.AA25646@mitchell.cit.cornell.edu>
To: help-lucid-emacs@lucid.com
Reply-To: swb@nr-tech.cit.cornell.edu
Subject: inter-line spacing
Date: Tue, 18 Aug 92 11:50:15 -0400
From: Scott Brim <swb@nr-tech.cit.cornell.edu>

Sorry if this is a FAQ.  I still don't know the right places to look for
answers like this.  I'd like to be able to fit more lines in a screen.
I can make the font small (set-face-font) but the inter-line spacing
still remains large, so I can only see about 2/3 of the lines I should
be able to.
						Thanks ... Scott

From help-lucid-emacs-request@lucid.com  Tue Aug 18 10:20:16 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA08381; Tue, 18 Aug 92 10:20:16 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA07429g; Tue, 18 Aug 92 10:08:09 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA22319; Tue, 18 Aug 92 13:18:41 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA22315; Tue, 18 Aug 92 13:18:39 -0400
Path: uunet!mcsun!corton!sophia!almeria.inria.fr!bob
From: bob%almeria.inria.fr@lucid.com (Renaud Marlet)
Newsgroups: alt.lucid-emacs.help
Subject: Some tools available
Message-Id: <27254@sophia.inria.fr>
Date: 18 Aug 92 16:59:57 GMT
Organization: INRIA, Sophia-Antipolis (Fr)
Lines: 23
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

decor: Yet another hiliting package.
=====
	Decorate text zones with colors and fonts according to mode.
	It should provides more functions and be easier to parameterize
	than hilit or lhilit (regexp, fonts, X resources, after-change...).
	Runs with Epoch or Lucid Emacs.

viewer: TeX prepreviewer
======
	Minor modes for easier TeX edition. They consist in key bindings,
	abbreviations, and translators from and to TeX. They use heavily
	8bits fonts to display mathematics symbols. Runs with Epoch or
	Lucid Emacs.

portable: (hackers only)
========
	Entry points above Epoch and Lucid Emacs providing some kind
	of compatibily (used by decor and viewer).

They are available via anonymous ftp to babar.inria.fr (138.96.24.21)
in pub/emacs. See the README file.

Renaud  [Renaud.Marlet@sophia.inria.fr]

From help-lucid-emacs-request@lucid.com  Tue Aug 18 10:37:22 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA08466; Tue, 18 Aug 92 10:37:22 PDT
Received: by heavens-gate.lucid.com id AA07475g; Tue, 18 Aug 92 10:28:14 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA07468g; Tue, 18 Aug 92 10:26:00 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA29416; Tue, 18 Aug 92 10:35:06 PDT
Date: Tue, 18 Aug 92 10:35:06 PDT
Message-Id: <9208181735.AA29416@thalidomide.lucid>
X-Windows: It could be worse, but it'll take time.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: swb@nr-tech.cit.cornell.edu
Cc: help-lucid-emacs@lucid.com
Subject: Re: inter-line spacing
In-Reply-To: Scott Brim's message of Tue 18-Aug-92 11:50:15 -0400 <9208181554.AA25646@mitchell.cit.cornell.edu>
References: <9208181554.AA25646@mitchell.cit.cornell.edu>

Right now the line-height is the max of the fonts of all faces (per screen.)
The inter-line space will get small once you shrink all of the fonts.

All of the fonts are derived from the font of the default face, so you don't
need to set them all every time, just when you're changing it at runtime.
If you set the default face's font via X resources, the others will track it.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Tue Aug 18 11:22:07 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA08675; Tue, 18 Aug 92 11:22:07 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA07641g; Tue, 18 Aug 92 11:13:11 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA26752; Tue, 18 Aug 92 14:23:42 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA26748; Tue, 18 Aug 92 14:23:40 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!spsgate!mogate!newsgate!chdasic.sps.mot.com!jennings
From: jennings@chdasic.sps.mot.com (Tim Jennings)
Subject: X-terminal key bindings
Message-Id: <1992Aug18.175546.2272@newsgate.sps.mot.com>
Originator: root@mogate.sps.mot.com
Nntp-Posting-Host: 223.200.55.36
Organization: SPS
Date: Tue, 18 Aug 1992 17:55:46 GMT
Lines: 12
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I am trying to set the key bindings for an X-terminal.  I'm not exactly an expert yet in
emacs so if anybody has done this I would love to see the pertinent code for it. I need to
set keys such as Home/End/PgUp/PgDn....

Vital stats
HP X-terminal
Lucid-Emacs
-- 
----------------------
Timothy J. Jennings 			"I Yam What I Yam."
Motorola ASIC Division			--Popeye
email: jennings@chdasic.sps.mot.com

From help-lucid-emacs-request@lucid.com  Tue Aug 18 11:51:10 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA08739; Tue, 18 Aug 92 11:51:10 PDT
Received: by heavens-gate.lucid.com id AA07751g; Tue, 18 Aug 92 11:41:58 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA07741g; Tue, 18 Aug 92 11:39:09 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA29667; Tue, 18 Aug 92 11:48:15 PDT
Date: Tue, 18 Aug 92 11:48:15 PDT
Message-Id: <9208181848.AA29667@thalidomide.lucid>
X-Windows: The first fully modular software disaster.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: Guido BOSCH <bosch%loria.fr@lucid.com>
Cc: help-lucid-emacs@lucid.com, stuarth@csis.dit.csiro.au
Subject: Re: popup menu resources
In-Reply-To: Guido Bosch's message of Tue 18-Aug-92 15:24:00 +0200 <9208181324.AA03456@moebius.loria.fr>
References: <9208170702.AA01629@argo>
	<9208181324.AA03456@moebius.loria.fr>
	<BOSCH.92Aug13170300@moebius.loria.fr>

In message <9208181324.AA03456@moebius.loria.fr> Guido Bosch wrote:
>
> I'm sorry, but I have no answer to your question. I custommized the
> menubar font, just as you did, I guess, but I couldn't yet figure out
> how to control the popup menu resources or whether they exist at all.

The popups are named "popup", so 

	Emacs*popup.foreground: foobar

should work.  If you're using Motif popups, they accept the normal 
Motif resources.  If you're using the Lucid popups, check the file
src/lwlib/xlwmenu.c for the resources obeyed.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Tue Aug 18 17:54:08 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA10268; Tue, 18 Aug 92 17:54:08 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA08921g; Tue, 18 Aug 92 17:44:01 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA19016; Tue, 18 Aug 92 20:54:33 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA19009; Tue, 18 Aug 92 20:54:32 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!zaphod.mps.ohio-state.edu!caen!hellgate.utah.edu!csn!cherokee!mcclen
From: mcclen@advtech.uswest.com ( Chris McClenaghan)
Subject: Strange VM and GNUS behavior with menubar
Message-Id: <MCCLEN.92Aug18155824@alder.advtech.uswest.com>
Nntp-Posting-Host: alder.advtech.uswest.com
Organization: US WEST Advanced Technologies, Boulder, Colorado
Date: Tue, 18 Aug 1992 22:58:24 GMT
Lines: 11
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

VM and GNUS are in my default menubar, some posted the code
awhile back. Occasionally they both startup incorrectly.
Sometimes VM will not retrieve mail from the mail spool, on retry
it will; sometimes GNUS prompts for news server, most times not.
Does anyone have an explanation for this behavior? I haven't seen
it from the keyboard, although I think someone else complained
about simialr behavior for VM.

--
Chris McClenaghan    mcclen@advtech.uswest.com


From help-lucid-emacs-request@lucid.com  Tue Aug 18 17:54:09 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA10269; Tue, 18 Aug 92 17:54:09 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA08920g; Tue, 18 Aug 92 17:43:56 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA19003; Tue, 18 Aug 92 20:54:28 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA18999; Tue, 18 Aug 92 20:54:27 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!zaphod.mps.ohio-state.edu!caen!hellgate.utah.edu!csn!cherokee!mcclen
From: mcclen@advtech.uswest.com ( Chris McClenaghan)
Subject: Re: popup menu resources
In-Reply-To: Guido.Bosch%loria.fr@lucid.com's message of Tue, 18 Aug 1992 15:24:00 +0200
Message-Id: <MCCLEN.92Aug18154312@alder.advtech.uswest.com>
Nntp-Posting-Host: alder.advtech.uswest.com
Organization: US WEST Advanced Technologies, Boulder, Colorado
References: <9208170702.AA01629@argo> <BOSCH.92Aug13170300@moebius.loria.fr>
	<9208181324.AA03456@moebius.loria.fr>
Date: Tue, 18 Aug 1992 22:43:12 GMT
Lines: 14
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Here's what I've learned on this subject. I believe popup menu
resources are avilable through screen attributes, so I'd think
you could put some face seeting code in the popup menu which used
the optional screen parmeter specifying the popup menu screen.

I'm not clear how to do this, but reading screen.el should
provide some direction, possibly even the appopriate hooks.
The selected-screen funtion returns an appropriate value for use
as the optional screen parameter in the face setting code.

 
--
Chris McClenaghan    mcclen@advtech.uswest.com


From help-lucid-emacs-request@lucid.com  Tue Aug 18 17:59:51 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA10281; Tue, 18 Aug 92 17:59:51 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA08947g; Tue, 18 Aug 92 17:50:50 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA19133; Tue, 18 Aug 92 21:01:20 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA19129; Tue, 18 Aug 92 21:01:19 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!boulder!news!grunwald
From: grunwald@goober.cs.colorado.edu (Dirk Grunwald)
Subject: Re: Strange VM and GNUS behavior with menubar
In-Reply-To: mcclen@advtech.uswest.com's message of Tue, 18 Aug 1992 22:58:24 GMT
Message-Id: <GRUNWALD.92Aug18185013@goober.cs.colorado.edu>
Nntp-Posting-Host: goober.cs.colorado.edu
Reply-To: grunwald@foobar.cs.colorado.edu
Organization: University of Colorado at Boulder
References: <MCCLEN.92Aug18155824@alder.advtech.uswest.com>
Date: 18 Aug 92 18:50:13
Lines: 20
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

>>>>> On Tue, 18 Aug 1992 22:58:24 GMT, mcclen@advtech.uswest.com ( Chris McClenaghan) said:

CM> Nntp-Posting-Host: alder.advtech.uswest.com

CM> VM and GNUS are in my default menubar, some posted the code
CM> awhile back. Occasionally they both startup incorrectly.
CM> Sometimes VM will not retrieve mail from the mail spool, on retry
CM> it will; sometimes GNUS prompts for news server, most times not.
CM> Does anyone have an explanation for this behavior? I haven't seen
CM> it from the keyboard, although I think someone else complained
CM> about simialr behavior for VM.
--

I've had this happen on occasion as well - I also have (on a
DECstation, configured with s-bsd4-3.h and m-pmax.h) had the shell
process report...

	Process shell<1> stopped (tty input)

I'm digging for the solution, but haven't got much time to do so.

From help-lucid-emacs-request@lucid.com  Tue Aug 18 23:16:24 1992
Received: from lucid.com ([192.31.212.72]) by labrea.Stanford.EDU (4.1/1.34)
	id AA10934; Tue, 18 Aug 92 23:16:24 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA09623g; Tue, 18 Aug 92 23:05:52 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA27907; Wed, 19 Aug 92 02:16:24 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA27903; Wed, 19 Aug 92 02:16:14 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!usc!cs.utexas.edu!qt.cs.utexas.edu!yale.edu!cmcl2!liu!okeefe
From: okeefe@cns.nyu.edu (Larry O'Keefe)
Subject: TeX mode problems
Message-Id: <1992Aug19.053918.6611@cmcl2.nyu.edu>
Nntp-Posting-Host: liu.cns.nyu.edu
Reply-To: okeefe@cns.nyu.edu
Organization: New York University
Date: Wed, 19 Aug 1992 05:39:18 GMT
Lines: 13
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I am having difficulty geting lucid to load TeX mode.  It returns File local
variables error: (file-error: "cannot open load file" "oshell").  Any
suggestions?

---
Lawrence P. O'Keefe, Ph.D.
Center for Neural Science
New York University
6 Washington Place, 8th Floor
New York, NY  10003
okeefe@cns.nyu.edu
(212) 998-7898


From help-lucid-emacs-request@lucid.com  Wed Aug 19 10:48:32 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA12963; Wed, 19 Aug 92 10:48:32 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA10799g; Wed, 19 Aug 92 10:39:12 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA24314; Wed, 19 Aug 92 13:49:45 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA24308; Wed, 19 Aug 92 13:49:43 -0400
Path: uunet!charon.amdahl.com!pacbell.com!mips!darwin.sura.net!Sirius.dfn.de!zrz.tu-berlin.de!news.netmbx.de!Germany.EU.net!mcsun!corton!sophia!rhea.inria.fr!beust
From: beust%rhea.inria.fr@lucid.com (Cedric Beust)
Newsgroups: alt.lucid-emacs.help
Subject: Irritating ^M in comint mode
Message-Id: <27351@sophia.inria.fr>
Date: 19 Aug 92 15:20:39 GMT
Organization: University of Nice Sophia-Antipolis, France
Lines: 9
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


	How can I remove the ^M's I keep seing in the modes derived from
	comint? I tried to hook	comint-send-input but it doesn't work
	for text I didn't type myself...


--
Cedric BEUST, beust@sa.inria.fr, Bull Research Koala proj, KoalaBus & xforum
Pho:(33) 93.65.78.07(.66 Fax), INRIA, B.P.93 - 06902 Sophia Antipolis, FRANCE.

From help-lucid-emacs-request@lucid.com  Wed Aug 19 16:08:56 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA13838; Wed, 19 Aug 92 16:08:56 PDT
Received: by heavens-gate.lucid.com id AA12027g; Wed, 19 Aug 92 15:59:41 PDT
Received: from jpmorgan.jpmorgan.com by heavens-gate.lucid.com id AA12023g; Wed, 19 Aug 92 15:56:49 PDT
Received: by jpmorgan.jpmorgan.com (5.65/fma-120691);
	id AA08913; Wed, 19 Aug 92 19:07:23 -0400
Received: from hawking.ny.jpmorgan.com by newton.ny.jpmorgan.com (4.1/SMI-4.0)
	id AA03949; Wed, 19 Aug 92 19:07:22 EDT
From: chan@jpmorgan.com (Milo A. Chan)
Message-Id: <9208192307.AA03949@newton.ny.jpmorgan.com>
Subject: Can't reach help-lucid-emacs-request
To: help-lucid-emacs@lucid.com
Date: Wed, 19 Aug 92 19:07:21 EDT
X-Mailer: ELM [version 2.3(JPM) PL11]

My apologies for wasting bandwidth, but my attempts to reach

    help-lucid-emacs-request@lucid.com

have failed with:

   ----- Transcript of session follows -----
Connected to love-canal:
>>> RCPT To:<folders-request-lucid-emacs@love-canal>
<<< 550 /cadillac3/folders/request-lucid-emacs... Can't create output
550 folders-request-lucid-emacs@love-canal.lucid.com... User unknown

Any constructive advice would be greatly appreciated!

-- 
Milo Chan,  Fixed Income Market Strategies,  J.P. Morgan Securities, Inc.
email:   chan_milo@jpmorgan.com    ...or...   chan@fractl.tn.cornell.edu
phone:   212.648.4483              ...or...          212.648.4486 (sec'y)

From help-lucid-emacs-request@lucid.com  Wed Aug 19 16:43:01 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA13896; Wed, 19 Aug 92 16:43:01 PDT
Received: by heavens-gate.lucid.com id AA12167g; Wed, 19 Aug 92 16:33:46 PDT
Received: from relay1.UU.NET by heavens-gate.lucid.com id AA12151g; Wed, 19 Aug 92 16:31:09 PDT
Received: from spsgate.sps.mot.com (via [192.70.231.1]) by relay1.UU.NET with SMTP 
	(5.61/UUNET-internet-primary) id AA25094; Wed, 19 Aug 92 19:37:36 -0400
Received: by spsgate.sps.mot.com (4.1/SMI-4.1)
	id AA10486; Wed, 19 Aug 92 16:35:21 MST
Message-Id: <9208192335.AA10486@spsgate.sps.mot.com>
Received: from emailchd (email.sps.mot.com) by motsps (4.1/SMI-4.0)
	id AA18321; Wed, 19 Aug 92 16:27:56 MST
Date: Wed, 19 Aug 92 16:30:12 MST
From: jennings@chdasic.sps.mot.com (Tim Jennings)
To: help-lucid-emacs@lucid.com
Subject: X-terminal key bindings

I am at a loss to set the key bindings on my X-terminal. I am using an
HP X-terminal.  If you could help by sending a portion of a file I would
appreciate it.

Tim Jennings
jennings@chdasic.sps.mot.com

From help-lucid-emacs-request@lucid.com  Thu Aug 20 01:32:05 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA14635; Thu, 20 Aug 92 01:32:05 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA13335g; Thu, 20 Aug 92 01:22:54 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA05282; Thu, 20 Aug 92 04:33:28 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA05277; Thu, 20 Aug 92 04:33:25 -0400
Path: uunet!mcsun!uknet!mucs!uts.mcc.ac.uk!ssurhode
From: ssurhode@susssys1.rdg.ac.uk (Paul Rhodes)
Newsgroups: alt.lucid-emacs.help
Subject: Menu and mouse support for News ?
Message-Id: <SSURHODE.92Aug19142124@suma1.susssys1.rdg.ac.uk>
Date: 19 Aug 92 13:21:24 GMT
Distribution: alt
Organization: Reading University, England
Lines: 9
Originator: netnews@uts.mcc.ac.uk
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Has anyone written some lucid emacs specific code for use with gnus. I
like the menu/mouse support someone posted for VM, and am looking for
something similar. Is there an FTP site that has all the lucid
specific code on it ???? or is it a case of just looking thru the
alt.lucid-emacs.help archives ????

thanks in advance,

  Paul Rhodes.

From help-lucid-emacs-request@lucid.com  Thu Aug 20 07:42:32 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA15910; Thu, 20 Aug 92 07:42:32 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA13697g; Thu, 20 Aug 92 07:29:02 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA11145; Thu, 20 Aug 92 10:39:37 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA11141; Thu, 20 Aug 92 10:39:35 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!decwrl!wupost!cs.utexas.edu!csc.ti.com!tilde.csc.ti.com!fstop.csc.ti.com!fstop.csc.ti.com!kenb
From: kenb@dadd.ti.com (Ken Butler)
Subject: Re: Menu and mouse support for News ?
In-Reply-To: ssurhode@susssys1.rdg.ac.uk's message of 19 Aug 92 13:21:24 GMT
Message-Id: <KENB.92Aug20083621@atg2.dadd.ti.com>
Nntp-Posting-Host: atg2.dadd.ti.com
Organization: Texas Instruments, Inc., Dallas, TX
References: <SSURHODE.92Aug19142124@suma1.susssys1.rdg.ac.uk>
Distribution: alt
Date: Thu, 20 Aug 1992 14:36:21 GMT
Lines: 100
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Paul,

Regarding "Menu and mouse support for News", you write:

Paul>    Has anyone written some lucid emacs specific code for use with gnus. I
Paul>    like the menu/mouse support someone posted for VM, and am looking for
Paul>    something similar. Is there an FTP site that has all the lucid
Paul>    specific code on it ???? or is it a case of just looking thru the
Paul>    alt.lucid-emacs.help archives ????

Yeah, I did.  Nothing sophisticated, but I guess it was okay since the VM
postings looked similar to what I had posted previously for RMAIL.

Here's what I have so far for RMAIL and GNUS.  The RMAIL I'm using is not
the standard RMAIL but the extended function RMAIL posted by Bob Weiner to
the elisp archive at Ohio State.  It's much better than the old one.

(defun rmail-mouse-summary (event)
  "If no summary buffer exists, make one.  If one exists, delete it."
  (interactive "@e")
  ; (mouse-set-point event)
  (if (not (rmail-summary-displayed))
      (rmail-summary)))

(defun rmail-summary-mouse-goto (event)
  "Set the pointer down, then jump to that message."
  (interactive "@e")
  (mouse-set-point event)
  (rmail-summary-goto-msg)
  (recenter))

(defun rmail-summary-mouse-exit (event)
  "Delete the summary buffer."
  (interactive "@e")
  ; (mouse-set-point event)
  (rmail-summary-exit))

(defun gnus-Subject-mouse-next-page (event)
  "Set the pointer down, then jump to that article if not there."
  (interactive "@e")
  (mouse-set-point event)
  (gnus-Subject-next-page 0)
  (recenter))

(defun gnus-Subject-mouse-catch-up-and-exit (event)
  "Set the pointer down, then catch up the newsgroup and exit."
  (interactive "@e")
  (mouse-set-point event)
  (gnus-Subject-catch-up-and-exit t t))

(defun gnus-Subject-mouse-expand-window (event)
  "Set the pointer down, then catch up the newsgroup and exit."
  (interactive "@e")
  (mouse-set-point event)
  (gnus-Subject-expand-window))

(defun gnus-Group-mouse-select-group (event)
  "Set the pointer down, then jump to that newsgroup if not there."
  (interactive "@e")
  (mouse-set-point event)
  (gnus-Group-select-group nil))

(defun gnus-Group-mouse-catch-up (event)
  "Set the pointer down, then catch up the newsgroup and exit."
  (interactive "@e")
  (mouse-set-point event)
  (gnus-Group-catch-up t t))

Then you'll need something like these in your startup:

(setq gnus-Subject-mode-hook
      (function
       (lambda ()
         (local-set-key 'button1 'gnus-Subject-mouse-next-page)
         (local-set-key 'button2 'gnus-Subject-mouse-catch-up-and-exit)
         (local-set-key 'button3 'gnus-Subject-mouse-expand-window))))
(setq gnus-Group-mode-hook
      (function
       (lambda ()
         (local-set-key 'button1 'gnus-Group-mouse-select-group)
         (local-set-key 'button2 'gnus-Group-mouse-catch-up))))
(setq rmail-summary-mode-hook
      '(lambda ()
         (local-set-key 'button1 'rmail-summary-mouse-goto)
         (local-set-key 'button3 'rmail-summary-mouse-exit)))
(setq rmail-mode-hook
      '(lambda ()
         (local-set-key 'button3 'rmail-mouse-summary)))

Hope that this helps.

Ken
--

*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
Kenneth M. Butler                           (214) 997-6370 (office)
Texas Instruments                           (214) 997-2049 (FAX)
P.O. Box 655303 MS 3683                     kenb@dadd.ti.com
Dallas, TX 75265
*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*

From help-lucid-emacs-request@lucid.com  Thu Aug 20 09:46:57 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA16183; Thu, 20 Aug 92 09:46:57 PDT
Received: by heavens-gate.lucid.com id AA13985g; Thu, 20 Aug 92 09:34:25 PDT
Received: from motgate.mot.com by heavens-gate.lucid.com id AA13978g; Thu, 20 Aug 92 09:32:51 PDT
Received: from pts1.pts.mot.com ([145.4.3.2]) by pobox.mot.com (4.1/SMI-4.0)
	id AA09862; Thu, 20 Aug 92 11:41:32 CDT
Received: from pts5.pts.mot.com ([192.8.210.19]) by pts1.pts.mot.com (4.1/SMI-4.1)
	id AA20106; Thu, 20 Aug 92 12:32:21 EDT
Received: by pts5.pts.mot.com ( 5.52 (84)/SMI-4.1)
	id AA09813; Thu, 20 Aug 92 12:39:19 EDT
Date: Thu, 20 Aug 92 12:39:19 EDT
From: weiner@pts.mot.com (Bob Weiner)
Message-Id: <9208201639.AA09813@pts5.pts.mot.com>
To: help-lucid-emacs@lucid.com
Cc: kenb@dadd.ti.com
In-Reply-To: Ken Butler's message of Thu, 20 Aug 1992 14:36:21 GMT <KENB.92Aug20083621@atg2.dadd.ti.com>
Subject: Menu and mouse support for News ?


Ken Butler wrote:

> Paul,
>
> Regarding "Menu and mouse support for News", you write:
>
> Paul>    Has anyone written some lucid emacs specific code for use with gnus. I
> Paul>    like the menu/mouse support someone posted for VM, and am looking for
> Paul>    something similar. Is there an FTP site that has all the lucid
> Paul>    specific code on it ???? or is it a case of just looking thru the
> Paul>    alt.lucid-emacs.help archives ????

> Yeah, I did.  Nothing sophisticated, but I guess it was okay since the VM
> postings looked similar to what I had posted previously for RMAIL.

> Here's what I have so far for RMAIL and GNUS.  The RMAIL I'm using is not
> the standard RMAIL but the extended function RMAIL posted by Bob Weiner to
> the elisp archive at Ohio State.  It's much better than the old one.

If you like that RMAIL stuff of mine, you really should install the current
release of Hyperbole which integrates quite a few facilities in one
easy to install package including direct selection 2-button mouse interfaces
for RMAIL, VM, GNUS, Info, buffer-menu, dired, outline-mode, etc.  It supports
X, Sunview, Apollo DM, and terminals and also Epoch.  I haven't done anything
specific for Lucid Emacs (I probably will within the next month)
but if the mouse key binding syntax differs from that of standard X
bindings for GNU Emacs then you only have to add about 5 lines in one
file, "hmouse-key.el", and everything will work.

So go ahead and use it rather than reinventing.

Here is the full Hyperbole README which explains how to get it via ftp,
the only way it is available.  I don't mail out copies.

Bob
-------

#
# FILE:		README
# SUMMARY:      Intro information on Hyperbole.  
#
# AUTHOR:       Bob Weiner
# ORG:          Brown U.
#
# ORIG-DATE:    19-Oct-91 at 03:27:47

The author's work on this project has been sponsored by Motorola Inc.
under the Distinguished Student-Employee program.

We hope you enjoy using and developing with Hyperbole.  Suggestions and bug
reports are welcome, as described later in this document.  Feel free to
mail or post news containing this file wherever it may be of use.


           Outline
================================
* Hyperbole Overview
* What's New?
* How to Obtain
* Installation / Configuration
* Quick Reference
* Mail Lists
* Beta Tester Quotes
* Why was Hyperbole developed?
* Copyright
================================


* Hyperbole Overview

Hyperbole is an open, efficient information browsing and management
system based around a hypertext model.  It is intended for everyday work
on any UNIX platform supported by GNU Emacs (or Epoch from the
University of Illinois).  Hyperbole allows hypertext buttons to be
embedded within unstructured and structured files, mail messages and
news articles.  It also provides point-and-click access to ftp archives,
Wide-Area Information Servers (WAIS), and the World-Wide Web (WWW)
hypertext system through encapsulations of software that support these
protocols.

Hyperbole consists of three parts:

   1.  an interactive information management interface which anyone can use;

   2.  a set of programming library classes for system developers who
       want to integrate Hyperbole with another user interface or as a
       back-end to a distinct system.  (All of Hyperbole is written in
       Lisp for ease of modification.  Although Hyperbole is a
       prototype, it has been engineered for real-world usage and is
       well structured.)

   3.  A set of hyper-button-action types that provides core hypertext
       and other behaviors.  Users can make simple changes to button
       types and those familiar with Emacs Lisp can quickly prototype
       and deliver new types.

A Hyperbole user works with hypertext buttons; he may create, modify,
move or delete buttons.  Each button performs a specific action, such as
linking to a file or executing a UNIX shell command.

Presently, there are two distinct categories of Hyperbole buttons:
explicit buttons (the ones that Hyperbole creates) and implicit buttons
(buttons created and managed by other programs or embedded within the
structure of a document and recognized contextually by Hyperbole).
Explicit Hyperbole buttons may be embedded within any type of text file.

Hyperbole buttons may be clicked upon with a mouse to activate them or
to describe their actions.  Thus, a user can always check how a button
will act before activating it.  Buttons may also be activated from a
keyboard.  (In fact, all Hyperbole operations, including menu usage, may
be performed from any standard character terminal interface, so one need
not be anchored to a workstation all day).

Hyperbole does not enforce any particular hypertext or information
management model, but instead allows you to organize your information in
large or small chunks as you see fit.  Some of its most important
features include:

    Buttons may link to information or may execute procedures, such as
    starting or communicating with external programs;

    Buttons may be embedded within electronic mail messages;

    Other hypertext and information retrieval systems may be
    encapsulated under a Hyperbole user interface (a number of samples
    are provided).

Typical Hyperbole applications include:

    personal information management
       Overlapping link paths provide a variety of views into an
       information space.

       A search facility locates buttons in context and permits quick
       selection.

    documentation browsing
       Embed cross-references in your favorite documentation format.

       Add a point-and-click interface to existing documentation.

       Link code and design documents.  Jump to the definition of an
       identifier from its use within code or its reference within
       documentation.

    help/training systems
       Create tutorials with embedded buttons that show students how
       things work while explaining the concepts, e.g. an introduction
       to UNIX commands.  This technique can be much more effective than
       descriptions alone.

    archive managers
       Supplement programs that manage archives from incoming
       information streams by having them add topic-based buttons that
       link to the archive holdings.  Users can then search and create
       their own links to archive entries.


* What's New?

  Changes between V2 and V3.

  BUTTONS

    - Global buttons that can be created, deleted or activated by name.

    - Ange-ftp pathnames whether quoted or not are recognized as implicit
      buttons in any context, just click to view.

    - Internet RFC document random-access browsing via table of contents
      ibtype.

    - Implicit button type, grep-msg, which jumps to source of grep and
      error msg lines.

    - Multi-line button labels preceded by common fill prefixes are
      recognized properly, e.g. in source code with comment characters as
      the fill prefix.

  SMART KEY

    - C and Lisp jump to definition of tag at point.

    - Calendar scrolling and appointment viewing.

    - Man page apropos viewing and reference following.

    - Outline expanding and collapsing.

    - Rmail and GNUS browsing.

    - Dired and Buffer Menu selecting and deleting.

    - Wrolo entry source editing and entry narrowing to focus.

  MESSAGING

    - Automatic support for buttons in RMAIL, VM, MH-e, and GNUS messages.
      Support is loaded only if the particular tool is invoked.

    - Mail and news comments automatically inserted to alert others that you
      can utilize Hyperbole buttons in messages.

    - Msg/ menu for sending messages to the Hyperbole mail list and for
      sending in an add/remove/change request for your entry on one of
      the Hyperbole mail lists.  (The hyperbole mail list is now
      accessible via WAIS clients, if you know what that means.  The
      source entry for this WAIS server appears in the Mail Lists
      section of this file.) 

    - Automatic insertion of Hyperbole configuration info when click on
      hyperbole mail list address in outgoing messages.

  HELP

    - A documentation quick access menu.

  USER INTERFACE

    - Working SunView support.

    - Built in rolodex (wrolo) support.

    - Mouse keys may be toggled between Hyperbole Smart Key bindings and any
      set of prior bindings.

    - Support for Epoch V4 Beta.

  DEVELOPMENT/PROGRAMMING

    - New implicit button type format the same as defuns.
      It permits one ibtype to perform any number of actions, so for
      example, one ibtype could handle all the kinds of buttons found in a
      particular document format.  Ibtypes can send any number of needed
      arguments to actions.  Ibtypes can be evaluated without triggering any
      actions to test their return values.

    - Any Lisp function may now be used to create a Hyperbole action, not
      just defacts.

    - Non-nil action return values are now accessible to callers.


* How to Obtain

Hyperbole is available across the Internet via anonymous ftp.  Do not send
requests to have it mailed to you since it won't be.  Instead have another
party who has Internet access obtain it for the both of you.

A server which sends the Hyperbole distribution in response to mail
requests may be put into service sometime in the first quarter of 1992.
The Free Software Foundation has expressed interest in distributing
Hyperbole as a separate add-on to GNU Emacs, once Hyperbole reaches a
stable point of maturation, so you may eventually be able to get it from
them.  Here is how to obtain it from the Brown software archive:

Move to a directory below which you want the 'hyperbole' directory to
be created.  Unpacking the Hyperbole archive will create this
directory and place all of the files below it.

   cd <LOCAL-LISP-DIR>

Ftp to wilma.cs.brown.edu  (Internet Host ID = 128.148.31.66):

   prompt> ftp wilma.cs.brown.edu

Login as 'anonymous' with your own <user-id>@<site-name> as a password.
   
   Name (wilma.cs.brown.edu:rsw): anonymous
   331 Guest login ok, send EMAIL address (e.g. user@host.domain) as password.
   Password:
   230 Guest login ok, access restrictions apply.

Move to the Hyperbole directory:

   ftp> cd pub/hyperbole

Set your transfer mode to binary:

   ftp> bin
   200 Type set to I.

Turn off prompting:

   ftp> prompt
   Interactive mode off.

Either retrieve just the Hyperbole archive:

   ftp> mget h*tar.Z

or retrieve all of the files (the individual, non-tar files, are also
included in the above archive, so they are not strictly necessary):

   ftp> mget *

Close the ftp connection:

   ftp> quit
   221 Goodbye.

Unpack the tar archive with:

   zcat h*tar.Z | tar xvf -
or
   uncompress h*tar.Z; tar xvf h*tar


* Installation / Configuration

The Hyperbole Manual is included in three forms:
    "hypb.info"       - online version
     hypb.ps          - Postscript form
    "hypb.texinfo"    - source form

If you have just retrieved Hyperbole, see "hsite-ex.el" for installation
and setup instructions.  If Hyperbole has already been installed for
use at your site, you can manually invoke it from within GNU Emacs or Epoch by
loading the "hsite.el" code library file:  {M-x load-lib RTN hsite RTN}.  See
the section on 'Initializing' in the Hyperbole Manual for information on how to
set up for permanent Hyperbole use.

To add a pointer to the Info version of the Hyperbole manual within your Info
directory file, add the following two lines (the '*' should be in the first
column) to the menu within that file, substituting for <HYP-DIR>:

    * Hyperbole: (<HYP-DIR>/hypb.info).
        GNU Emacs-based extensible hypertext management system.

When used with a mouse, Hyperbole uses your middle and right mouse buttons by
default.  The bindings are set in "hmouse-key.el".  What the mouse
buttons do is set in the 'smart-key-alist' variable in "hui-mouse.el"
and is summarized in "hmouse-doc".


* Quick Reference

"MANIFEST" summarizes most of the files in the distribution.

See "DEMO" for a demonstration of standard Hyperbole button
capabilities.

Naming conventions:
  All Hyperbole-specific code files begin with an 'h'.
  Hyperbole user-interface files begin with 'hui-' or 'hmous'.
  Files that define implicit button types begin with 'hib'.
  Encapsulations of foreign systems begin with 'hsys-'.

Most of the standard Emacs user interface for Hyperbole is located in
"hui.el".  Most of the Hyperbole application programming interface can be
found in "hbut.el".  "hbdata.el" encapsulates the button attribute storage
handling presently implemented by Hyperbole.  "hmail.el" provides a basic
abstract interface for folding mail readers other than Rmail into Hyperbole.


* Mail Lists

There are several Hyperbole-related mail addresses.  Learn what each is
for before you contemplate mailing to any of them.


hyperbole-request@cs.brown.edu

   ALL mail concerning administration of the Hyperbole mailing lists
   should be sent here.  That includes addition, change, or deletion
   requests.  Don't EVER consider sending such a request to a Hyperbole
   mail list or people will think you can't read.  ONLY FULLY
   DOMAIN-BASED ADDRESSES WILL BE ACCEPTED (no UUCP '!' characters nor
   .UUCP pseudo-domain).  If you don't have such an address by now, you
   should get one.  Anyone else who wants to handle these other
   addresses is free to forward the contents of the lists to them.

   Use the following formats on your subject line to execute requests,
   where you substitute your own values for the <> delimited items.
 
   Subject: Add <your name> '<' <user@domain> '>' to <mail-list-sans-domain>.
   Subject: Remove '<' <user@domain> '>' from <mail-list-sans-domain>.
   Subject: Change '<' <user@domain> '>' to '<' <newuser>@<newdomain> '>' in <mail-list-sans-domain>.

   For example:
     Subject: Add Joe Williams <joe@cs.brown.edu> to hyperbole.
     Subject: Remove <joe@cs.brown.edu> from hyperbole.
     Subject: Change <joe@cs.brown.edu> to <joe@mot.com> in hyperbole.


hyperbole@cs.brown.edu

   Mail list for discussion of all Hyperbole issues.  Bug reports and
   suggestions may also be sent here.

   Always use your Subject and/or Summary: lines to state the position
   that your message takes on the topic that it addresses, e.g. send
   "Subject: Basic bug in top-level Hyperbole menu." rather than
   "Subject: Hyperbole bug".  Statements end with periods, questions
   with question marks (typically), and high energy, high impact
   declarations with exclamation points.  This simple rule makes all
   e-mail communication much easier for recipients to handle
   appropriately.

   If you ask a question, your subject line should include the word
   'question' or 'query' or should end with a '?', e.g. "Subject: How
   can man page SEE ALSOs be made implicit buttons?"  A "Subject: Re:
   How can ..." then indicates an answer to the question.  Question
   messages should normally include your Hyperbole and Emacs version
   numbers and clearly explain your problem and surrounding issues.
   Otherwise, you will simply waste the time of those who may want to
   help you.  (Your top-level Hyperbole menu shows its version number
   and {M-x emacs-version RTN} gives the other.)

   If you ask questions, you should consider adding to the discussion by
   telling people the kinds of work you are doing or contemplating doing
   with Hyperbole.  In this way, the list will not be overwhelmed by
   messages that ask for but provide no information.

   This list is now archived as a WAIS server.  Ask <wais-talk@think.com>
   if you have questions about what WAIS is.  The source entry for this
   server is:

(:source 
   :version  3 
   :ip-address "128.148.31.66"
   :ip-name "wilma.cs.brown.edu"
   :tcp-port 8000
   :database-name "hyperbole"
   :cost 0.00 
   :cost-unit :free 
   :maintainer "mlm@cs.brown.edu"
   :description "This WAIS server contains all messages sent to the Hyperbole mailing list.
Hyperbole is a flexible, information manager built on top of GNU Emacs.
It is available for anonymous ftp from /wilma.cs.brown.edu:pub/hyperbole.
See the README file there for details.
Server created with WAIS release 8 b3.1 on Feb 20 14:40:09 1992 by wais@wilma"
)


hyperbole-announce@cs.brown.edu

   Those who don't want to participate in the discussion but want to
   hear about bug fixes and new releases of Hyperbole should subscribe
   to this list.  Anyone on the 'hyperbole' list is automatically on
   this one too, so there is no need to subscribe to this one in that
   case.  This list is for official fixes and announcements so don't send
   your own fixes here.  Send them to 'hyperbole' instead.


* V2 Beta Tester Quotes

 "In general, Hyperbole is an embeddable, highly extensible hypertext
  tool.  As such, I find it very useful. As it stands now, Hyperbole is
  particularly helpful for organizing ill-structured or loosely coupled
  information, in part because there are few tools geared for this purpose.
  Hyperbole also possesses a lot of potentials in supporting a wider
  spectrum of structuredness, ranging from unstructured to highly
  structured environments, as well as structural changes over time.

  Major Uses:

  * Menu interface to our own Epoch-based collaborative support environment
    called CoReView: This interface brings together all top-level user
    commands into a single partitioned screen, and allows the end user to
    interact with the system using simple mouse-clicking instead of the
    meta-x key.

  * Gateway to internet resources: this includes links to major Internet
    archive sites of various types of information. Links are made at both
    directory and file levels.

  * Alternative directory organizer: The hierarchical nature of the Unix
    file system sometimes makes it difficult to find things quickly and
    easily using directory navigational tools such as dired. Hyperbole
    enables me to create various "profile" views of my directory tree, with
    entries in these views referring to files anywhere in the hierarchy.

  * Organizing and viewing online documentation: using Hyperbole along with
    Hyper-man and Info makes it truly easy to look up online documentation.
      
  * Other desktop organization tasks: including links to various mail
    folders, saved newsgroup conversation threads, online note-taker,
    emacs-command invocations, etc."

				    	-- Dadong Wan

-------

 "Hyperbole is the first hyper-link system I've run across that is
  actually part of the environment I use regularly, namely Emacs. The
  complete flexibility of the links is both impressive and expected -- the
  idea of making the link itself programmable is clever, and given that one
  assumes the full power of emacs.  Being able to send email with buttons
  in it is a very powerful capability.  Using ange-ftp mode, one can make
  file references "across the world" as easily as normal file references."

				        -- Mark Eichin

-------

 "The Hyperbole system provides a nice interface to exploring corners of
  Unix that I didn't know existed before."

					-- Craig Smith

-------


* Why was Hyperbole developed?

Hyperbole has been designed to aid in research aimed at Personalized
Information production/retrieval Environments (PIEs).  Hyperbole is a
backend manager to be used in prototyping an initial PIE.

An examination of many hypertext environments as background research did
not turn up any that seemed suitable for the research envisioned, mainly
due to the lack of rich, portable programmer and user environments.  We also
tired of trying to manage our own distributed information pools with standard
UNIX tools.  And so Hyperbole was conceived and raved about until it
got its name.


* Copyright

The following copyright applies to the Hyperbole system as a whole.
Each file also bears its own copyright, e.g. the files based upon GNU
copyrighted code bear the same copyright as GNU Emacs.

Copyright (C) 1991, Brown University, Providence, RI

Permission to use, modify and redistribute this software and its
documentation for any purpose other than its incorporation into a
commercial product is hereby granted without fee.  A distribution fee
may be charged with any redistribution.  Any distribution requires
that the above copyright notice appear in all copies, that both that
copyright notice and this permission notice appear in supporting
documentation, and that neither the name of Brown University nor the
author's name be used in advertising or publicity pertaining to
distribution of the software without specific, written prior permission.

Brown University makes no representations about the suitability of this
software for any purpose.  It is provided "as is" without express or
implied warranty.

From help-lucid-emacs-request@lucid.com  Thu Aug 20 14:39:30 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA17094; Thu, 20 Aug 92 14:39:30 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA14855g; Thu, 20 Aug 92 14:30:23 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA12138; Thu, 20 Aug 92 17:40:57 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA12130; Thu, 20 Aug 92 17:40:55 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!spsgate!mogate!newsgate!chdasic.sps.mot.com!jennings
From: jennings@chdasic.sps.mot.com (Tim Jennings)
Subject: Help mail
Message-Id: <1992Aug20.211256.4763@newsgate.sps.mot.com>
Originator: root@mogate.sps.mot.com
Nntp-Posting-Host: 223.200.55.36
Organization: SPS
Date: Thu, 20 Aug 1992 21:12:56 GMT
Lines: 7
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I had the mail address for lucid and have misplaced it.  Could somebody respond 
with it?  I am having trouble splitting my screen horizontally.
-- 
----------------------
Timothy J. Jennings 			"I Yam What I Yam."
Motorola ASIC Division			--Popeye
email: jennings@chdasic.sps.mot.com

From help-lucid-emacs-request@lucid.com  Thu Aug 20 16:51:18 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA17388; Thu, 20 Aug 92 16:51:18 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA15193g; Thu, 20 Aug 92 16:38:43 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA20481; Thu, 20 Aug 92 19:49:17 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA20477; Thu, 20 Aug 92 19:49:16 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!ferkel.ucsb.edu!taco!rock!stanford.edu!agate!ames!tulane!wupost!sdd.hp.com!zaphod.mps.ohio-state.edu!magnus.acs.ohio-state.edu!csn!cherokee!mcclen
From: mcclen@advtech.uswest.com ( Chris McClenaghan)
Subject: describe function
Message-Id: <MCCLEN.92Aug20141114@alder.advtech.uswest.com>
Nntp-Posting-Host: alder.advtech.uswest.com
Organization: US WEST Advanced Technologies, Boulder, Colorado
Date: Thu, 20 Aug 1992 21:11:14 GMT
Lines: 15
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I've got something set in a funny state. If I start lemacs with
-q, describe function works just fine. With my .emacs mods I get
the following error message:

Invalid function: (macro lambda (x) "Emacs 18 doesn't have these." nil)

I suspect that my byte compile options may be part of the
problem. I am running with the defaults. I want to support both
lemacs as well as emacs 18 (tty access from home). If the problem
is byte compile options, what should I use to preserve
compatibility?

--
Chris McClenaghan    mcclen@advtech.uswest.com


kward compatibility.

One more question, is this the correct thing to do, or do I want
Jamie's byte compiler with version 19 (or do I have it anyway)?

--
Chris McClenaghan    mcclen@advtech.uswest.com


From help-lucid-emacs-request@lucid.com  Thu Aug 20 17:24:34 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA17434; Thu, 20 Aug 92 17:24:34 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA15350g; Thu, 20 Aug 92 17:15:27 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA21142; Thu, 20 Aug 92 20:26:01 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA21138; Thu, 20 Aug 92 20:26:00 -0400
Path: uunet!mcsun!uknet!mucs!uts.mcc.ac.uk!ssurhode
From: ssurhode@susssys1.rdg.ac.uk (Paul Rhodes)
Newsgroups: alt.lucid-emacs.help
Subject: Texinfo files
Message-Id: <SSURHODE.92Aug20170844@suma1.susssys1.rdg.ac.uk>
Date: 20 Aug 92 16:08:44 GMT
Distribution: alt
Organization: Reading University, England
Lines: 12
Originator: netnews@uts.mcc.ac.uk
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I recently tried to perform 'texinfo-format-buffer' on tar.texinfo
file from the GNU tar ditribultion and it crashed and came back with
the following error in the minibuffer....

Cannot open load file: oshell

Can anyone suggest a fix for this ??


thanks in advance,

 Paul

From help-lucid-emacs-request@lucid.com  Fri Aug 21 04:58:07 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA19221; Fri, 21 Aug 92 04:58:07 PDT
Received: by heavens-gate.lucid.com id AA16326g; Fri, 21 Aug 92 04:49:03 PDT
Received: from adam.itk.unit.no by heavens-gate.lucid.com id AA16322g; Fri, 21 Aug 92 04:48:49 PDT
Received: from tone.itk.unit.no by adam.itk.unit.no with SMTP 
	id <AA18174>; Fri, 21 Aug 92 12:44:12 +0200
Date: Fri, 21 Aug 92 12:44:12 +0200
From: harald%itk.unit.no@lucid.com
Message-Id: <9208211044.AA17098@tone>
To: help-lucid-emacs@lucid.com
Cc: ~/.mail/OUTBOX@itk.unit.no
Subject: epoch init hook

I want to have a way to make SITE WIDE defaults like (autoload ...) in
Lucid Emacs (lemacs).

Of cause this can be done in site-init.el, but then I have to
recompile lemacs every time we install a new package. The other
alternative is default.el, but that file is loadet after ~/.emacs.
This inhibits any personal preferences.

And I don't want every user to have a (load-file "our-site-defaults"
...) in their ~/.emacs.

In Epoch there is a hook, setup-hook, that can be used, see example
below. Is there any hook like this, or any other mechanism, in lemacs?

Regards, Harald Backer                  

SINTEF Automatic Control                : Phone +47 7 594375
The Norwegian Institute of Technology   : Fax   +47 7 594399
N-7034 Trondheim			: Email harald@itk.unit.no
NORWAY

................................................................

;;
;; File name : site-init.el
;;
;; Function: Intended to load a "global" init-file before user's own
;; 	.emacs is loaded. (site-init is also loaded before the user's
;;	.emacs, but modifications in site-init is not reflected until
;;	emacs/epoch is recompiled. The standard default.el is loaded
;;	after the user's .emacs.)
;;

;; Put news in default-init, not here in site-init - unless you want
;; to recompile emacs/epoch. NB! Don't use setq epoch-setup-hook as it
;; is already set in some basic epoch lisp files.
(epoch-add-setup-hook '(lambda ()
	 (load "default-init" t t)
	 ))

From help-lucid-emacs-request@lucid.com  Fri Aug 21 08:39:53 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA19756; Fri, 21 Aug 92 08:39:53 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA16727g; Fri, 21 Aug 92 08:30:44 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA23437; Fri, 21 Aug 92 11:29:52 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA23433; Fri, 21 Aug 92 11:29:46 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!usc!cs.utexas.edu!csc.ti.com!tilde.csc.ti.com!m2.dseg.ti.com!lystad
From: lystad@m2.dseg.ti.com (Garr Lystad)
Subject: Re: Mark funniness
Organization: TI DSEG, Spring Creek, Plano, Tx.
In-Reply-To: grunwald@eclipse.cs.colorado.edu's message of 14 Aug 92 12:05:13
References: <GRUNWALD.92Aug14120513@eclipse.cs.colorado.edu>
Message-Id: <LYSTAD.92Aug21094549@m2.dseg.ti.com>
Reply-To: Garr Lystad <lystad@m2.dseg.ti.com>
Distribution: alt
Date: Fri, 21 Aug 1992 15:45:49 GMT
Lines: 38
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <GRUNWALD.92Aug14120513@eclipse.cs.colorado.edu> grunwald@eclipse.cs.colorado.edu (Dirk Grunwald) writes:


>   I am used to using these functions to position on the display...

>   (global-set-key "\M-'" 'move-to-window-line)
>   (global-set-key "\M-," '(lambda() (interactive) (move-to-window-line 0)))
>   (global-set-key "\M-." '(lambda() (interactive) (move-to-window-line -1)))

>   A normal editing sequence for me is to mark something (\C-spc), move there
>   (possibly using the move-to-window-line keys above) and then e.g, kill it.

>   I can't do that in Lucid-19.2 -- it appears the mark gets cleared.
>   Any reason why? Anyone have a plausible fix?

Actually the mark is ok, as you can check by doing C-x C-x to swap
point and mark.  The problem is that the region is not being
displayed.  It appears, from an examination of forward-char and
move-to-window-line that the problem is that move-to-window-line lacks
the line 
  zmacs_region_stays = 1;
This may be an oversight.  I'm too new at Lucid Emacs (3 days) to know. 

If you want to make your commands work by modifying them you can add a
call to zmacs-activate-region at the end of each function.  For example:

   (global-set-key "\M-," 
	           '(lambda ()
                       (interactive)
                       (move-to-window-line 0) ;; or 1 or nil
                       (zmacs-activate-region) ))

 Hope this helps. 
  --  Garr

P.S.  M-. and M-, already have commands on them that I find very
useful.  They let me answer your question.  gsl.
  

From help-lucid-emacs-request@lucid.com  Fri Aug 21 09:28:38 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA19913; Fri, 21 Aug 92 09:28:38 PDT
Received: by heavens-gate.lucid.com id AA16828g; Fri, 21 Aug 92 09:16:36 PDT
Received: from CAMIS.Stanford.EDU by heavens-gate.lucid.com id AA16818g; Fri, 21 Aug 92 09:14:41 PDT
Received: from ssrg-ipc-1.Stanford.EDU by CAMIS.Stanford.EDU (4.1/inc-1.0)
	id AA05491; Fri, 21 Aug 92 09:25:09 PDT
Date: Fri, 21 Aug 1992 09:24:00 -0700 (PDT)
From: Kevin Brock <Brock@CAMIS.Stanford.Edu>
Reply-To: Brock@CAMIS.Stanford.Edu
Subject: RE: Texinfo files
To: Paul Rhodes <ssurhode@susssys1.rdg.ac.uk>
Cc: help-lucid-emacs@lucid.com
In-Reply-To: Paul Rhodes's message of 20 Aug 92 16:08:44 GMT: <SSURHODE.92Aug20170844@suma1.susssys1.rdg.ac.uk>
Message-Id: <Ximap.714414308.7590.brock@ssrg-ipc-1>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII

>Cannot open load file: oshell
>
>Can anyone suggest a fix for this ??

Remove the (require 'oshell) line from elisp file
in which it occurs.

Kevin Brock
brock@sumex-aim.stanford.edu


From help-lucid-emacs-request@lucid.com  Fri Aug 21 10:40:30 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA20240; Fri, 21 Aug 92 10:40:30 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA17007g; Fri, 21 Aug 92 10:26:34 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA28968; Fri, 21 Aug 92 13:37:11 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA28962; Fri, 21 Aug 92 13:37:08 -0400
Path: uunet!haven.umd.edu!mimsy!lhc!lhc!warsaw
From: warsaw@nlm.nih.gov (Barry A. Warsaw)
Newsgroups: alt.lucid-emacs.help
Subject: Re: epoch init hook
Message-Id: <WARSAW.92Aug21110826@anthem.nlm.nih.gov>
Date: 21 Aug 92 16:08:26 GMT
References: <9208211044.AA17098@tone>
Reply-To: warsaw@nlm.nih.gov (Barry A. Warsaw)
Organization: Century Computing, Inc.
Lines: 39
In-Reply-To: harald%itk.unit.no@lucid.com's message of 21 Aug 92 10:44:12 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


>>>>> "harald" == harald  <harald%itk.unit.no@lucid.com> writes:

    harald> I want to have a way to make SITE WIDE defaults like
    harald> (autoload ...) in Lucid Emacs (lemacs).

    harald> Of cause this can be done in site-init.el, but then I have
    harald> to recompile lemacs every time we install a new package.
    harald> The other alternative is default.el, but that file is
    harald> loadet after ~/.emacs.  This inhibits any personal
    harald> preferences.

    harald> And I don't want every user to have a (load-file
    harald> "our-site-defaults" ..) in their ~/.emacs.

Use my startup-patch available on the elisp archive.  It does exactly
what you're looking for by adding the load of emacs-site.el
(configurable) in the following order:

dump-time: site-init.el, run-time: emacs-site.el, ~/.emacs, default.el

I've been using it in emacs18 for years and its essential (IMHO) if
you manage emacs for a large number of users.  You need to be careful
where you put things (site-init or emacs-site) since your choices will
affect emacs startup time, but its very easy to just add new packages
to your users' environs.  Also, users can inhibit the load of
emacs-site with a new comline switch, -s (mirroring the existing -q
switch).


lisp-dir-apropos sez:

		  GNU Emacs Lisp Code Directory Apropos -- "startup"
"~/" refers to archive.cis.ohio-state.edu:/pub/gnu/emacs/elisp-archive/

startup-patch		  89-09-05
	 Barry A. Warsaw, <bwarsaw@cen.com>
	 ~/misc/startup.patch.Z
	 Mods to startup.el for settable command line arguments, among others

From help-lucid-emacs-request@lucid.com  Fri Aug 21 12:21:21 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA20509; Fri, 21 Aug 92 12:21:21 PDT
Received: by heavens-gate.lucid.com id AA17364g; Fri, 21 Aug 92 12:12:08 PDT
Received: from motgate.mot.com by heavens-gate.lucid.com id AA17360g; Fri, 21 Aug 92 12:10:24 PDT
Received: from pts1.pts.mot.com ([145.4.3.2]) by pobox.mot.com (4.1/SMI-4.0)
	id AA20949; Fri, 21 Aug 92 14:19:13 CDT
Received: from pts4.pts.mot.com by pts1.pts.mot.com (4.1/SMI-4.1)
	id AA24454; Fri, 21 Aug 92 15:10:05 EDT
Received: from msn25.motorola by pts4.pts.mot.com (4.1/SMI-4.1)
	id AA26552; Fri, 21 Aug 92 15:21:15 EDT
Date: Fri, 21 Aug 92 15:21:15 EDT
From: ex594bw@pts.mot.com (Bob Weiner)
Message-Id: <9208211921.AA26552@pts4.pts.mot.com>
Received: by msn25.motorola (4.1/SMI-4.1)
	id AA03498; Fri, 21 Aug 92 15:21:28 EDT
To: help-lucid-emacs@lucid.com
Subject: Isn't there a way to say: (get-face-at-point)?

Without having to check whether point is within an extent or not.
This seems basic to me but I can't find such a function.

An Epoch compatibility package mapping face functions to Epoch styles
and extents to Epoch zones through abstract interfaces sure would simplify
life for package developers.  It doesn't seem like a very hard task either.

Bob

From help-lucid-emacs-request@lucid.com  Fri Aug 21 17:15:46 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA21238; Fri, 21 Aug 92 17:15:46 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA18336g; Fri, 21 Aug 92 17:05:54 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA23309; Fri, 21 Aug 92 20:16:32 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA23305; Fri, 21 Aug 92 20:16:30 -0400
Path: uunet!mcsun!uknet!mucs!uts.mcc.ac.uk!ssurhode
From: ssurhode@susssys1.rdg.ac.uk (Paul Rhodes)
Newsgroups: alt.lucid-emacs.help
Subject: Hyperbole
Message-Id: <SSURHODE.92Aug21103747@suma1.susssys1.rdg.ac.uk>
Date: 21 Aug 92 09:37:47 GMT
Distribution: alt
Organization: Reading University, England
Lines: 4
Originator: netnews@uts.mcc.ac.uk
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Has anyone written some lucid specific code for hyperbole yet ? I've
just got the latest version down and I can't do anything with it.

Paul.

From help-lucid-emacs-request@lucid.com  Fri Aug 21 17:58:28 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA21300; Fri, 21 Aug 92 17:58:28 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA18411g; Fri, 21 Aug 92 17:49:16 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA23776; Fri, 21 Aug 92 20:59:53 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA23772; Fri, 21 Aug 92 20:59:51 -0400
Path: uunet!mcsun!corton!loria!news.loria.fr!bosch
From: bosch%loria.fr@lucid.com (Guido Bosch)
Newsgroups: alt.lucid-emacs.help
Subject: Re: Menu and mouse support for News ?
Message-Id: <BOSCH.92Aug21131728@moebius.loria.fr>
Date: 21 Aug 92 11:17:28 GMT
References: <SSURHODE.92Aug19142124@suma1.susssys1.rdg.ac.uk>
Reply-To: Guido BOSCH <bosch%loria.fr@lucid.com>
Distribution: alt
Organization: INRIA-Lorraine / CRIN, Nancy, France
Lines: 205
In-Reply-To: ssurhode@susssys1.rdg.ac.uk's message of 19 Aug 92 13:21:24 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <SSURHODE.92Aug19142124@suma1.susssys1.rdg.ac.uk> ssurhode@susssys1.rdg.ac.uk (Paul Rhodes) writes:

 > Has anyone written some lucid emacs specific code for use with gnus. I
 > like the menu/mouse support someone posted for VM, and am looking for
 > something similar. Is there an FTP site that has all the lucid
 > specific code on it ???? or is it a case of just looking thru the
 > alt.lucid-emacs.help archives ????

Here is what I'm using for GNUS.

	Enjoy,
		Guido


------------------------- gnus-lucid.el ---------------------------
;;; Mouse and font support for GNUS running in Lucid GNU Emacs
;; Copyright (C) 1992 Free Software Foundation, Inc.

;; This file is part of GNU Emacs.

;; GNU Emacs is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation; either version 2, or (at your option)
;; any later version.

;; GNU Emacs is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
;; GNU General Public License for more details.

;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING.  If not, write to
;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.


;; Put different fonts on articles 
(add-hook 'gnus-Select-article-hook 'gnus-fontify-headers)


;;; Right button pops up a menu of commands in Newsgroup and Subject buffers.
;;; Middle button selects indicated newsgroup or article.

(defvar gnus-Group-menu
  '("GNUS Group Commands"
    ["Select Newsgroup" gnus-Group-read-group t]
    ["Unsubscribe Newsgroup" gnus-Group-unsubscribe-current-group t]
    ["Get New News" gnus-Group-get-new-news t]
    "----"
    ["Mark Newsgroup as Read" gnus-Group-catch-up t]
    ["Mark All Newsgroups as Read" gnus-Group-catch-up-all t]
    ["Show All Newsgroups" gnus-Group-list-all-groups t]
    ["Show Subscribed Nonempty Newsgroups" gnus-Group-list-groups t]
    ["Check Bogosity" gnus-Group-check-bogus-groups t]
    "----"
    ["Save .newsrc" gnus-Group-force-update t]
    ["GNUS Manual" gnus-Info-find-node t]
    ["Suspend GNUS" gnus-Group-suspend t]
    ["Quit GNUS" gnus-Group-exit t]
    ))

(defvar gnus-Subject-menu
  '("GNUS Subject Commands"
    ["Select Article / Next Page" gnus-Subject-next-page t]
    ["Prev Page" gnus-Subject-prev-page t]
    ["Select Parent Article" gnus-Subject-refer-parent-article t]
    "----"
    ["Beginning of Article" gnus-Subject-beginning-of-article t]
    ["End of Article" gnus-Subject-end-of-article t]
    ["Show all Headers" gnus-Subject-show-all-headers t]
    ["ROT13 Article" gnus-Subject-caesar-message t]
    ["Save Article to Mail File" gnus-Subject-save-in-mail t]
    "----"
    ["Mail Reply" gnus-Subject-mail-reply t]
    ["Mail Reply (Citing Original)" gnus-Subject-mail-reply-with-original t]
    ["Post Reply" gnus-Subject-post-reply t]
    ["Post Reply (Citing Original)" gnus-Subject-post-reply-with-original t]
    "----"
    ["Mark Article as Read" gnus-Subject-mark-as-read-forward t]
    ["Mark Article as Unread" gnus-Subject-mark-as-unread-backward t]
    ["Mark Similar Subjects as Read" gnus-Subject-kill-same-subject t]
    ["Quit this Newsgroup" gnus-Subject-exit t]
    ["Quit this Newsgroup (mark everything as read)"
     gnus-Subject-catch-up-and-exit t]
    ))


(defvar gnus-Article-menu 
  '("GNUS Article Commands"

    ["Next Page" gnus-Article-next-page t]
    ["Prev Page" gnus-Article-prev-page t]
    ["Pop Article History" gnus-Article-pop-article t]
    ["Refer Article" gnus-Article-refer-article t]
    ["Show Subjects" gnus-Article-show-subjects t]
    ["Gnus Info Find Node" gnus-Info-find-node t]
    ["Describe Briefly" gnus-Article-describe-briefly t]))




(defun gnus-Group-menu (e)
  (interactive "@e")
  (popup-menu gnus-Group-menu))

(defun gnus-Subject-menu (e)
  (interactive "@e")
  (popup-menu gnus-Subject-menu))

(defun gnus-Article-menu (e)
  (interactive "@e")
  (popup-menu gnus-Article-menu))

(defun gnus-Group-mouse-read-group (e)
  (interactive "e")
  (mouse-set-point e)
  (beginning-of-line)
  (search-forward ":" nil t)
  ;; (funcall mouse-motion-handler e)
  (gnus-Group-read-group nil))

(defun gnus-Subject-mouse-next-page (e)
  (interactive "e")
  (mouse-set-point e)
  (beginning-of-line)
  (search-forward ":" nil t)
  ;; (funcall mouse-motion-handler e)
  (gnus-Subject-next-page nil))


(define-key gnus-Subject-mode-map 'button2 'gnus-Subject-mouse-next-page)
(define-key gnus-Group-mode-map   'button2 'gnus-Group-mouse-read-group)

(define-key gnus-Subject-mode-map 'button3 'gnus-Subject-menu)
(define-key gnus-Group-mode-map   'button3 'gnus-Group-menu)
(define-key gnus-Article-mode-map 'button3 'gnus-Article-menu)

;;; Put message headers in boldface, etc...

(defun gnus-fontify-headers ()
  (let* ((current 'italic)
	 p)
    (save-excursion
      (set-buffer gnus-Article-buffer)
      (goto-char (point-min))
      (while (and (not (eobp)) (not (looking-at "\n")))
	(cond
	 ((looking-at "^[^ \t\n]+[ \t]*:")
	  (set-extent-face
	   (make-extent (match-beginning 0) (match-end 0))
	   'bold)
	  (setq p (match-end 0))
	  (cond
	   ((looking-at "Subject[ \t]*:")
	    (setq current 'bold-italic)
	    (end-of-line)
	    (set-extent-face (make-extent p (point)) current))
	   ((looking-at "\\(From\\|Resent-From\\)[ \t]*:")
	    (setq current 'bold-italic)
	    (goto-char (match-end 0))
	    (or (looking-at ".*(\\(.*\\))")
		(looking-at "\\(.*\\)<")
		(looking-at "\\(.*\\)[@%]")
		(looking-at "\\(.*\\)"))
	    (end-of-line)
	    (set-extent-face (make-extent p (match-beginning 1)) 'italic)
	    (set-extent-face (make-extent (match-beginning 1) (match-end 1))
			     current)
	    (set-extent-face (make-extent (match-end 1) (point)) 'italic)
	    )
	   (t
	    (setq current 'italic)
	    (end-of-line)
	    (set-extent-face (make-extent p (point)) current))))
	 (t
	  (setq p (point))
	  (end-of-line)
	  (set-extent-face (make-extent p (point)) current)))
	(forward-line 1))
      (while (not (eobp))
	(cond ((looking-at "^[ \t]*[A-Z]*[]}<>|][ \t]*")
	       (goto-char (match-end 0))
	       (setq current 'italic))
	      ((or (looking-at "^In article\\|^In message")
		   (looking-at
	    "^[^ \t].*\\(writes\\|wrote\\|said\\):\n^[ \t]+[A-Z]*[]}<>|]"))
	       (setq current 'bold-italic))
	      (t (setq current nil)))
	(cond (current
	       (setq p (point))
	       (end-of-line)
	       (set-extent-face (make-extent p (point)) current)))
	(forward-line 1))
      )))



--
Guido BOSCH, INRIA-Lorraine/CRIN
Institut National de Recherche en Informatique et en Automatique (INRIA)
Centre de Recherche en Informatique de Nancy (CRIN)
Campus scientifique, B.P. 239            
54506 Vandoeuvre-les-Nancy CEDEX       	
Tel.: (+33) 83.91.24.24
Fax.: (+33) 83.41.30.79                	
email: bosch@loria.fr             	

From help-lucid-emacs-request@lucid.com  Mon Aug 24 02:35:53 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA27117; Mon, 24 Aug 92 02:35:53 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA21597g; Mon, 24 Aug 92 02:24:55 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA19572; Mon, 24 Aug 92 05:35:37 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA19568; Mon, 24 Aug 92 05:35:36 -0400
Path: uunet!mcsun!corton!seti!margaux.inria.fr!murthy
From: murthy%margaux.inria.fr@lucid.com (Chet Murthy)
Newsgroups: alt.lucid-emacs.help
Subject: Long time for new-screen (and also INT signals)
Message-Id: <4105@seti.UUCP>
Date: 24 Aug 92 08:40:31 GMT
Reply-To: murthy%margaux.inria.fr@lucid.com (Chet Murthy)
Distribution: alt
Organization: INRIA Rocquencourt France
Lines: 11
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


I have noticed that Lucid 19.2 sometimes takes a VERY long time to
create a new screen - the screen gets created, but then Lucid freezes
up for a (sometimes) long while.

Also, sometimes, it just doesn't come back.  In addition, sometimes it
simply hangs up, and I can't interrupt it, even with a kill -INT.
Anybody got any idea how to improve this behaviour?

Thanks,
--chet--

From help-lucid-emacs-request@lucid.com  Mon Aug 24 05:21:04 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA28023; Mon, 24 Aug 92 05:21:04 PDT
Received: by heavens-gate.lucid.com id AA21780g; Mon, 24 Aug 92 05:11:55 PDT
Received: from moebius.loria.fr by heavens-gate.lucid.com id AA21776g; Mon, 24 Aug 92 05:11:40 PDT
Received: by moebius.loria.fr id AA07434
  (5.65c+/IDA-1.4.3 for help-lucid-emacs@lucid.com); Mon, 24 Aug 92 14:22:18 +0200
Date: Mon, 24 Aug 92 14:22:18 +0200
From: Guido Bosch <Guido.Bosch%loria.fr@lucid.com>
Message-Id: <9208241222.AA07434@moebius.loria.fr>
To: Chet.Murthy@inria.fr
Cc: help-lucid-emacs@lucid.com
Subject: Re: mode-motion package 
In-Reply-To: <1780.714650145@margaux.inria.fr>
References: <1780.714650145@margaux.inria.fr>
	<9208171623.AA01660@moebius.loria.fr>
Reply-To: Guido BOSCH <bosch%loria.fr@lucid.com>

Chet.Murthy@inria.fr writes:
 > 
 > I started using your mode-motion package, and noticed that when I
 > first visit an info (or lisp) file, from time to time, the
 > highlighting doesn't happen.  I can get it to happen, though, by 
 > hitting control-l - after the refresh, everything works as it should.
 > 
 > Actually, I guess since it is happening in info-mode, too, that means
 > that it is not just specific to mode-motion.  But I figured perhaps
 > you might know what was going on.
 > 

I also noticed that. I'm not shure whether its a general problem of
the mouse motion handling or a particular one of my mode-motion
package.  It happens rather often, but I couldn't yet figure out the
exact conditions to reproduce it.

Jamie told me that there will a be a somewhat different implementation
of mode motion in the next release (19.3), and maybe then we will see
clearer.

	Guido

From help-lucid-emacs-request@lucid.com  Mon Aug 24 10:04:26 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA28829; Mon, 24 Aug 92 10:04:26 PDT
Received: by heavens-gate.lucid.com id AA22265g; Mon, 24 Aug 92 09:52:08 PDT
Received: from chenas.inria.fr by heavens-gate.lucid.com id AA22261g; Mon, 24 Aug 92 09:51:57 PDT
Received: from iris.ccvr.fr by chenas.inria.fr (5.65c8d/92.02.29)
	via Fnet-EUnet id AA22536; Mon, 24 Aug 1992 19:02:38 +0200 (MET)
Received: from hebe.ccvr.fr by iris.ccvr.fr, Mon, 24 Aug 92 18:50:26 +0200
Received: by hebe.ccvr.fr (AIX 3.2/UCB 5.64/4.03)
          id AA32332; Mon, 24 Aug 1992 19:02:02 +0200
Date: Mon, 24 Aug 1992 19:02:02 +0200
From: ssos006%hebe.ccvr.fr@lucid.com (ccvr__MERCIER_Claude)
Message-Id: <9208241702.AA32332@hebe.ccvr.fr>
To: help-lucid-emacs@lucid.com
Subject: install on rs/6000



salutations,

I am trying to install lemacs on an RS/6000, 950 but when I look for the files
s-aix3.1.h and m-ibmrs6000.h as it is recommended into the etc/MACHINES file
I cannot find them, We are actually running the aix3.2 version, does anyone
already wrote those files? 
My E-mail address is mercier@ccvr.fr

I did ftp the 19.2 version today to make sure I had all the files and
they are not in the .tar.Z file I got today.

Thanks a lot

claude mercier, part of the User Support Group of CCVR, Palaiseau France.

PS: hope the english is clear enough

From help-lucid-emacs-request@lucid.com  Mon Aug 24 10:43:34 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA28913; Mon, 24 Aug 92 10:43:34 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA22436g; Mon, 24 Aug 92 10:32:14 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA03267; Mon, 24 Aug 92 13:42:55 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA03263; Mon, 24 Aug 92 13:42:53 -0400
Path: uunet!mcsun!corton!loria!news.loria.fr!bosch
From: bosch%loria.fr@lucid.com (Guido Bosch)
Newsgroups: alt.lucid-emacs.help
Subject: Re: Long time for new-screen (and also INT signals)
Message-Id: <BOSCH.92Aug24192646@moebius.loria.fr>
Date: 24 Aug 92 17:26:46 GMT
References: <4105@seti.UUCP>
Distribution: alt
Organization: INRIA-Lorraine / CRIN, Nancy, France
Lines: 31
In-Reply-To: murthy@margaux.inria.fr's message of 24 Aug 92 08:40:31 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <4105@seti.UUCP> murthy@margaux.inria.fr (Chet Murthy) writes:

   I have noticed that Lucid 19.2 sometimes takes a VERY long time to
   create a new screen - the screen gets created, but then Lucid freezes
   up for a (sometimes) long while.

   Also, sometimes, it just doesn't come back.  In addition, sometimes it
   simply hangs up, and I can't interrupt it, even with a kill -INT.
   Anybody got any idea how to improve this behaviour?

Yes, I seem to have exactly the same problem. Each time I create a new
window (e.g. with C-x 5) Lucid Emacs frezes and can only be killed by
a KILL signal. It happens also with a uninitialized `lemacs -q'.

Im using X11R4 with tvtwm on a sparc station 2, but other people using
a similar working environment don't have that problem. There must be
sth. in my  personal custommization of the X environment that makes
trouble. 

Any ideas??

Guido
--
Guido BOSCH, INRIA-Lorraine/CRIN
Institut National de Recherche en Informatique et en Automatique (INRIA)
Centre de Recherche en Informatique de Nancy (CRIN)
Campus scientifique, B.P. 239            
54506 Vandoeuvre-les-Nancy CEDEX       	
Tel.: (+33) 83.91.24.24
Fax.: (+33) 83.41.30.79                	
email: bosch@loria.fr             	

From help-lucid-emacs-request@lucid.com  Mon Aug 24 11:23:07 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA29172; Mon, 24 Aug 92 11:23:07 PDT
Received: by heavens-gate.lucid.com id AA22596g; Mon, 24 Aug 92 11:12:59 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA22589g; Mon, 24 Aug 92 11:11:12 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA22383; Mon, 24 Aug 92 11:20:30 PDT
Date: Mon, 24 Aug 92 11:20:30 PDT
Message-Id: <9208241820.AA22383@thalidomide.lucid>
X-Windows: It could happen to you.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: Guido BOSCH <bosch%loria.fr@lucid.com>
Cc: Chet.Murthy@inria.fr, help-lucid-emacs@lucid.com
Subject: Re: mode-motion package 
In-Reply-To: Guido Bosch's message of Mon 24-Aug-92 14:22:18 +0200 <9208241222.AA07434@moebius.loria.fr>
References: <1780.714650145@margaux.inria.fr>
	<9208171623.AA01660@moebius.loria.fr>
	<9208241222.AA07434@moebius.loria.fr>

19.2 has a bug where sometimes motion events stop getting processed until
you click the mouse.  This will be fixed in the next release.

From help-lucid-emacs-request@lucid.com  Mon Aug 24 13:22:33 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA29590; Mon, 24 Aug 92 13:22:33 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA23035g; Mon, 24 Aug 92 13:10:30 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA17219; Mon, 24 Aug 92 16:21:14 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA17214; Mon, 24 Aug 92 16:21:12 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!cis.ohio-state.edu!zaphod.mps.ohio-state.edu!sol.ctr.columbia.edu!ira.uka.de!uni-heidelberg!vm.urz.uni-heidelberg.de!L58
From: L58%vm.urz.uni-heidelberg.de@lucid.com (Dieter Menszner)
Subject: gnus-3.13
Message-Id: <1684D136AC.L58@vm.urz.uni-heidelberg.de>
Organization: University of Heidelberg, Germany
Date: Mon, 24 Aug 92 22:05:31 CET
Lines: 10
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

gnus-3.13 is starting up and shows the newsgroups  but
when I select an article gnus says:
 
cannot select <article>. May be security or active file problem
 
What does that mean ?
 
Thanks
 
Dieter

From help-lucid-emacs-request@lucid.com  Mon Aug 24 13:59:45 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA29674; Mon, 24 Aug 92 13:59:45 PDT
Received: by heavens-gate.lucid.com id AA23134g; Mon, 24 Aug 92 13:47:42 PDT
Received: from jpmorgan.jpmorgan.com by heavens-gate.lucid.com id AA23130g; Mon, 24 Aug 92 13:47:22 PDT
Received: by jpmorgan.jpmorgan.com (5.65/fma-120691);
	id AA00199; Mon, 24 Aug 92 16:50:57 -0400
Received: from maxwell.ny.jpmorgan.com by newton.ny.jpmorgan.com (4.1/SMI-4.0)
	id AA06710; Mon, 24 Aug 92 16:50:56 EDT
From: chan@jpmorgan.com (Milo A. Chan)
Message-Id: <9208242050.AA06710@newton.ny.jpmorgan.com>
Subject: Need help using purify to link Lucid Emacs
To: help-lucid-emacs@lucid.com
Date: Mon, 24 Aug 92 16:50:54 EDT
X-Mailer: ELM [version 2.3(JPM) PL11]

Need help using 'purify' with lemacs:
------------------------------------

My copy of lemacs exhibits symptoms of a memory leak (i.e., it just keeps
getting bigger and bigger ;-).  I am trying to link Lucid Emacs 19.2 using
'purify', but I am getting errors.  

Has anyone used purify to link lemacs?

Here are the error messages:
------------------------------
make -e -k LD="$PURIFYHOME/nld/ld"
make  -f xmakefile -ek all
/home1/fimsdev/purify/nld/ld   -e __start -Bstatic  -L/usr/local/gui/X11/R5/lib  -L. -L./lwlib -o temacs crt0.o dispnew.o screen.o scroll.o xdisp.o window.o  events.o event-alloc.o event-stream.o  term.o cm.o xterm.o xfns.o xselect.o xutils.o event-Xt.o menubar.o   emacs.o keyboard.o macros.o keymap.o sysdep.o  buffer.o filelock.o insdel.o marker.o  minibuf.o fileio.o dired.o filemode.o  cmds.o casetab.o casefiddle.o indent.o search.o regex.o undo.o  alloc.o data.o doc.o editfns.o callint.o  eval.o floatfns.o fns.o print.o lread.o  abbrev.o syntax.o unexec.o mocklisp.o bytecode.o  process.o callproc.o environ.o  doprnt.o extents.o faces.o elhash.o hash.o tparam.o lastfile.o gmalloc.o vm-limit.o ScreenWidget.o ColumnWidget.o EmacsShell.o   -llw  -lXaw -lXext -lXt -lXmu -lX11   -ltermcap  -lg /usr/local/lib/gcc/libgcc.a -lm -lc

Error: Start up routine is not 'start' from crt0.o or equivalent
System error code: Not owner
If this is a bug, please send a bug report to support@pure.com
 including the errors, the version of purify, and ideally a uuencoded copy of
 the object file.  Thank you.
Purifying*** Error code 1
------------------------------


Any help would be greatly appreciated!


-- 
Milo Chan,  Fixed Income Market Strategies,  J.P. Morgan Securities, Inc.
email:   chan_milo@jpmorgan.com    ...or...   chan@fractl.tn.cornell.edu
phone:   212.648.4483              ...or...          212.648.4486 (sec'y)

From help-lucid-emacs-request@lucid.com  Mon Aug 24 16:47:03 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA00299; Mon, 24 Aug 92 16:47:03 PDT
Received: by heavens-gate.lucid.com id AA23668g; Mon, 24 Aug 92 16:37:48 PDT
Received: from dido.caltech.edu by heavens-gate.lucid.com id AA23664g; Mon, 24 Aug 92 16:37:21 PDT
Received: by dido.caltech.edu (4.1/1.2)
	id AA08398; Mon, 24 Aug 92 16:47:20 PDT
Date: Mon, 24 Aug 92 16:47:20 PDT
From: gwp@dido.caltech.edu (G. W. Pigman III)
Message-Id: <9208242347.AA08398@dido.caltech.edu>
To: help-lucid-emacs@lucid.com
Subject: tags-query-replace

complains

	Wrong type argument: syntax-table-p, nil

What do I need to do make it work?

From help-lucid-emacs-request@lucid.com  Tue Aug 25 00:48:11 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01111; Tue, 25 Aug 92 00:48:11 PDT
Received: by heavens-gate.lucid.com id AA24436g; Tue, 25 Aug 92 00:33:53 PDT
Received: from chenas.inria.fr by heavens-gate.lucid.com id AA24432g; Tue, 25 Aug 92 00:33:38 PDT
Received: from sid1.cenaath.cena.dgac.fr by chenas.inria.fr (5.65c8d/92.02.29)
	via Fnet-EUnet id AA03768; Tue, 25 Aug 1992 09:44:14 +0200 (MET)
Received: from geant.cenatls.cena.dgac.fr by sid1.cenaath.cena.dgac.fr (4.1/SMI-4.1)
	id AA04985; Tue, 25 Aug 92 09:45:58 +0200
Received: from gogol.cenatls by geant.cenatls.cena.dgac.fr (4.1/SMI-4.1)
	id AA20901; Tue, 25 Aug 92 09:42:05 +0200
Date: Tue, 25 Aug 92 09:42:05 +0200
From: queinnec%geant.cenatls.cena.dgac.fr@lucid.com (Philippe Queinnec)
Message-Id: <9208250742.AA20901@geant.cenatls.cena.dgac.fr>
Received: by gogol.cenatls (4.1/SMI-4.1)
	id AA00741; Tue, 25 Aug 92 09:42:07 +0200
To: bosch%loria.fr@lucid.com (Guido Bosch)
Cc: help-lucid-emacs@lucid.com
Subject: Re: Long time for new-screen (and also INT signals)
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Your message of  24 August 92, 17:26:46 GMT
References: <4105@seti.UUCP>
	<BOSCH.92Aug24192646@moebius.loria.fr>

On 24 August 92, the keyboard of Guido Bosch< bosch@loria.fr> wrote:

> In article <4105@seti.UUCP> murthy@margaux.inria.fr (Chet Murthy) writes:
> 
>    I have noticed that Lucid 19.2 sometimes takes a VERY long time to
>    create a new screen - the screen gets created, but then Lucid freezes
>    up for a (sometimes) long while.
> 
> Yes, I seem to have exactly the same problem. Each time I create a new
> window (e.g. with C-x 5) Lucid Emacs frezes and can only be killed by
> a KILL signal. It happens also with a uninitialized `lemacs -q'.
> 
> Any ideas??

I had this same problem when I had a ressource Emacs*geometry: <anything>
The doc explicitly states that this is a very bad idea. Changing it to
Emacs.geometry removed the problem.
(depending on the <antything>, lemacs may as well crash)

Phil    (queinnec@dgac.fr, queinnec@enseeiht.fr)

From help-lucid-emacs-request@lucid.com  Tue Aug 25 07:40:40 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA02494; Tue, 25 Aug 92 07:40:40 PDT
Received: by heavens-gate.lucid.com id AA24936g; Tue, 25 Aug 92 07:27:58 PDT
Received: from portal.bcm.tmc.edu by heavens-gate.lucid.com id AA24929g; Tue, 25 Aug 92 07:25:04 PDT
Received: from shell.shell.com by shell.com SHELL-X1.3 id AA21464; Tue, 25 Aug 92 08:24:06 -0500
Received: from patriot by shell.shell.com SHELL-I1.3 id AA21453; Tue, 25 Aug 92 08:23:14 -0500
Received: from colorado.AGR by patriot.brc.shell.com (4.1/AGR-2.0)
	id AA00776; Tue, 25 Aug 92 08:28:56 CDT
Date: Tue, 25 Aug 92 08:28:56 CDT
From: jody@shell.com
Message-Id: <9208251328.AA00776@patriot.brc.shell.com>
Received: by colorado.AGR (4.1/SMI-4.1)
	id AA08403; Tue, 25 Aug 92 08:31:58 CDT
To: chan@jpmorgan.com
Cc: help-lucid-emacs@lucid.com
In-Reply-To: "Milo A. Chan"'s message of Mon, 24 Aug 92 16:50:54 EDT <9208242050.AA06710@newton.ny.jpmorgan.com>
Subject: Need help using purify to link Lucid Emacs
Sender: jody@shell.com
Source-Info:  From (or Sender) name not authenticated.

Here's what I did to get emacs 18.58 running with purify and X11R5 on
Suns.  The changes should be simular for lemacs:

*** 1.1	1992/02/20 20:38:44
--- crt0.c	1992/07/10 16:38:53
***************
*** 532,535 ****
--- 532,554 ----
  asm ("	call	__exit");
  asm ("	nop");
  
+ /* For purify jbw */
+ 
+ asm (".global start");
+ asm (".text");
+ asm ("start:");
+ asm ("	mov	0, %fp");
+ asm ("	ld	[%sp + 64], %o0");
+ asm ("	add	%sp, 68, %o1");
+ asm ("	sll	%o0, 2,	%o2");
+ asm ("	add	%o2, 4,	%o2");
+ asm ("	add	%o1, %o2, %o2");
+ asm ("	sethi	%hi(_environ), %o3");
+ asm ("	st	%o2, [%o3+%lo(_environ)]");
+ asm ("	andn	%sp, 7,	%sp");
+ asm ("	call	_main");
+ asm ("	sub	%sp, 24, %sp");
+ asm ("	call	__exit");
+ asm ("	nop");
+ 
  #endif /* sparc */
*** 1.1	1992/02/20 20:41:57
--- m-sparc.h	1992/07/10 16:40:14
***************
*** 68,73 ****
--- 68,81 ----
  
  #define LOAD_AVE_TYPE long
  
+ 
+ /* Define CANNOT_DUMP on machines where unexec does not work.
+    Then the function dump-emacs will not be defined
+    and temacs will do (load "loadup") automatically unless told otherwise.  */
+ 
+ /* For purify jbw */
+ #define CANNOT_DUMP
+ 
  /* Convert that into an integer that is 100 for a load average of 1.0  */
  
  #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE)
*** 1.1	1992/02/20 20:39:07
--- s-sunos4-1.h	1992/07/10 16:39:05
***************
*** 20,29 ****
  /* The following is needed to work with the "Open Windows"
     version of X windows.  But it should do no harm if you don't have that.  */
  #if 1  /* The -I and -L options should be harmless otherwise.  */
  #undef LD_SWITCH_SYSTEM
! #define LD_SWITCH_SYSTEM -e __start -Bstatic -L/usr/openwin/lib
  
! #define C_SWITCH_SYSTEM -I/usr/openwin/include
  #endif 
  
  /* Enable a fix in malloc.  */
--- 20,32 ----
  /* The following is needed to work with the "Open Windows"
     version of X windows.  But it should do no harm if you don't have that.  */
  #if 1  /* The -I and -L options should be harmless otherwise.  */
+ 
+ /* For purify jbw */
+ 
  #undef LD_SWITCH_SYSTEM
! #define LD_SWITCH_SYSTEM -e start -Bstatic -L/usr/X11R5/lib
  
! #define C_SWITCH_SYSTEM -I/usr/X11R5/include
  #endif 
  
  /* Enable a fix in malloc.  */
*** 1.1	1992/02/20 20:37:34
--- ymakefile	1992/07/10 16:27:38
***************
*** 131,141 ****
     if requested by configuration.  */
  
  #ifdef LD_TEXT_START_ADDR
! STARTFLAGS = -T LD_TEXT_START_ADDR -e __start
  #endif
  
  #ifndef LINKER
! #define LINKER ld
  #endif
  LD=LINKER
  LDFLAGS = LD_SWITCH_SYSTEM LD_SWITCH_MACHINE
--- 131,141 ----
     if requested by configuration.  */
  
  #ifdef LD_TEXT_START_ADDR
! STARTFLAGS = -T LD_TEXT_START_ADDR -e start
  #endif
  
  #ifndef LINKER
! #define LINKER ${PURIFYHOME}/nld/ld
  #endif
  LD=LINKER
  LDFLAGS = LD_SWITCH_SYSTEM LD_SWITCH_MACHINE

Jody Winston		jody@shell.com
..!{sun,psuvax1,bcm,rice,decwrl,cs.utexas.edu}!shell!jody
Consultant to:
Shell Development Company, Bellaire Research Center
P.O. Box 481, Room 4205, Houston, TX 77001	(Voice: 713 245-7574)


From help-lucid-emacs-request@lucid.com  Tue Aug 25 09:03:53 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA02817; Tue, 25 Aug 92 09:03:53 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA25099g; Tue, 25 Aug 92 08:51:39 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA07704; Tue, 25 Aug 92 12:02:22 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA07699; Tue, 25 Aug 92 12:02:19 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!boulder!news!grunwald
From: grunwald@mumble.cs.colorado.edu (Dirk Grunwald)
Subject: TeX-mode hacks for Lucid
Message-Id: <GRUNWALD.92Aug25094350@mumble.cs.colorado.edu>
Nntp-Posting-Host: mumble.cs.colorado.edu
Reply-To: grunwald@foobar.cs.colorado.edu
Organization: University of Colorado at Boulder
Date: 25 Aug 92 09:43:50
Lines: 107
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


put something like this in your .emacs....

(defun dirk::lucid-tex-mode-hook ()
  (require 'tex-lucid)
  )
(add-hook 'tex-mode-hook 'dirk::lucid-tex-mode-hook)


and then put the file tex-lucid.el (see below) somewhere in your EMACSPATH.

You select text with normal mouse buttons.
mouse button3 pops up a menu.
You can then e.g., centerline the highlighted region, or
put it in $...$.

Ideally, I should also make it spell the region, but haven't needed it yet.

;;
;; Extensions to VorTeX mode for Lucid Emacs
;;

(setq TeX::zone-menu
  '("TeX Zone Coniptions"
    ["\\begin{center}" tex-latex-center t]
    ["\\begin{itemize}" tex-latex-itemize t]
    ["\\begin{tabular}" tex-latex-tabular t]
    ["\\begin{quote}" tex-latex-quote t]
    ["\\begin{verbatim}" tex-latex-verbatim t]
    ["\\begin{singlespace}" tex-latex-singlespace t]
    ["\\begin{figure}" tex-latex-figure t]
    ["\\begin{slide}" tex-latex-slide t]
    ["\\begin{code}" tex-latex-code t]
    ["\\begin{answer}" tex-latex-answer t]
    "--"
    ["\\bf" tex-zone-bf t]
    ["\\tt" tex-zone-tt t]
    ["\\it" tex-zone-it t]
    ["\\rm" tex-zone-rm t]
    ["\\sl" tex-zone-sl t]
    "--"
    ["$..$" tex-zone-math t]
    ["$$..$$" tex-zone-display-math t]
    ["'...'" tex-zone-single-quote t]
    ["\"...\"" tex-zone-single-quote t]
    ["\\centerline" tex-zone-centerline t]
    ["\\hbox" tex-zone-hbox t]
    ["\\vbox" tex-zone-vbox t]
    )
  )

;;
;; Replacement version that uses the zone stuff for compatiblity with menus
;;
(defun tex-latex-putenv (n env &optional arg)
  (let* ((col (current-column))
	 (n (+ (if n (if (< n 0) 0 n) tex-latex-indentation) col))
	 (env (concat "{" env "}"))
	 (arg (if arg (read-string (concat "Arguments to environment " env ": ")) ""))
	 (begin-string (concat "\\begin" env arg "\n"))
	 (end-string (concat "\\end" env"\n"))
	 (zone-mark (if tex-zone-marker-stack
			(car tex-zone-marker-stack)))
	 (beginning (if (markerp zone-mark) (marker-position zone-mark)))
	 (end (point))
	 (first (min beginning end))
	 (second (max beginning end))
	 )
    (save-excursion
     (goto-char first)
     (if (not (bolp))
	 (setq begin-string (concat "\n" begin-string)))
     (goto-char second)
     (if (not (bolp))
	 (setq end-string (concat "\n" end-string)))
     )
    (tex-zone begin-string end-string)
    )
)

(defun TeX::popup-wrapper (e)
  (interactive "e")
  (let (here there)
    (save-excursion
      (if (and (x-selection-owner-p) primary-selection-extent)
	  (progn
	    (set-buffer (extent-buffer primary-selection-extent))
	    (setq here (extent-start-position primary-selection-extent))
	    (setq there (extent-end-position primary-selection-extent))
	    )
	(progn
	  (mouse-set-point e)
	  (setq here (point))
	  (setq there (point))
	  )
	)
      (goto-char here)
      (tex-zone-open)
      (goto-char there)
      (popup-menu TeX::zone-menu)
      )
    )
  )
    
(define-key tex-mode-map 'button3 'TeX::popup-wrapper)

(provide 'tex-lucid)

From help-lucid-emacs-request@lucid.com  Tue Aug 25 09:10:44 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA02836; Tue, 25 Aug 92 09:10:44 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA25126g; Tue, 25 Aug 92 09:01:31 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA08425; Tue, 25 Aug 92 12:12:03 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA08420; Tue, 25 Aug 92 12:11:54 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!spsgate!mogate!newsgate!chdasic.sps.mot.com!jennings
From: jennings@chdasic.sps.mot.com (Tim Jennings)
Subject: Setting  Icon in  OpenWindows
Message-Id: <1992Aug25.154054.17331@newsgate.sps.mot.com>
Originator: root@mogate.sps.mot.com
Nntp-Posting-Host: 223.200.55.36
Organization: SPS
Date: Tue, 25 Aug 1992 15:40:54 GMT
Lines: 9
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I have been trying to set the icon type for Lemacs. I am
using the Open Windows environment. I've tried setting the resource 
in the .Xresource file. OpenWindows*iconImage does not seem to work.
Does anybody have this working?
-- 
----------------------
Timothy J. Jennings 			"I Yam What I Yam."
Motorola ASIC Division			--Popeye
email: jennings@chdasic.sps.mot.com

From help-lucid-emacs-request@lucid.com  Tue Aug 25 11:02:25 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA03249; Tue, 25 Aug 92 11:02:25 PDT
Received: by heavens-gate.lucid.com id AA25476g; Tue, 25 Aug 92 10:52:09 PDT
Received: from jpmorgan.jpmorgan.com by heavens-gate.lucid.com id AA25466g; Tue, 25 Aug 92 10:50:43 PDT
Received: by jpmorgan.jpmorgan.com (5.65/fma-120691);
	id AA01908; Tue, 25 Aug 92 14:01:23 -0400
Received: from hawking.ny.jpmorgan.com by newton.ny.jpmorgan.com (4.1/SMI-4.0)
	id AA08281; Tue, 25 Aug 92 14:01:21 EDT
From: chan@jpmorgan.com (Milo A. Chan)
Message-Id: <9208251801.AA08281@newton.ny.jpmorgan.com>
Subject: Re: purify & lemacs
To: weiner@pts.MOT.COM (Bob Weiner)
Date: Tue, 25 Aug 92 14:01:19 EDT
Cc: help-lucid-emacs@lucid.com
In-Reply-To: <9208251716.AA01704@pts5.pts.mot.com>; from "Bob Weiner" at Aug 25, 92 1:16 pm
X-Mailer: ELM [version 2.3(JPM) PL11]

From the Purify User's Guide:

"What Purify Does
 ----------------

Purify intercepts every memory access by inserting instructions into your
executable before every load and store.  Purify detects memory corruption
when it happens.  The origin of the problem is immediately and precisely
identified, by line number in the source code, making error correction quick
and easy.

Purify detects the following errors and pinpoints their origins:

    o	Reading or writing memory beyond the bounds of an array.
    o	Reading or writing freed memory.
    o	Freeing memory multiple times.
    o	Reading and using uninitialized memory.
    o	Reading or writing through null pointers.
    o	Memory leaks.


Purify finds these errors in the entire program  including third party
libraries which are linked with your code.  Because purify uncovers memory
access errors and memory leaks in all of the code used by a program, you can
change and improve your code with less fear of interducing new,
hard-to-detect errors."


The most basic usage of purify requires no code changes, just relink and run.


(I am not affiliated in any way with Pure Software Inc.)


-- 
Milo Chan,  Fixed Income Market Strategies,  J.P. Morgan Securities, Inc.
email:   chan_milo@jpmorgan.com    ...or...   chan@fractl.tn.cornell.edu
phone:   212.648.4483              ...or...          212.648.4486 (sec'y)

From help-lucid-emacs-request@lucid.com  Tue Aug 25 11:17:02 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA03313; Tue, 25 Aug 92 11:17:02 PDT
Received: by heavens-gate.lucid.com id AA25543g; Tue, 25 Aug 92 11:07:42 PDT
Received: from jpmorgan.jpmorgan.com by heavens-gate.lucid.com id AA25533g; Tue, 25 Aug 92 11:06:49 PDT
Received: by jpmorgan.jpmorgan.com (5.65/fma-120691);
	id AA02006; Tue, 25 Aug 92 14:17:32 -0400
Received: from hawking.ny.jpmorgan.com by newton.ny.jpmorgan.com (4.1/SMI-4.0)
	id AA08288; Tue, 25 Aug 92 14:17:31 EDT
From: chan@jpmorgan.com (Milo A. Chan)
Message-Id: <9208251817.AA08288@newton.ny.jpmorgan.com>
Subject: Re: Need help using purify to link Lucid Emacs
To: jody@shell.COM
Date: Tue, 25 Aug 92 14:17:30 EDT
Cc: help-lucid-emacs@lucid.com
In-Reply-To: <9208251328.AA00776@patriot.brc.shell.com>; from "jody@shell.com" at Aug 25, 92 8:28 am
X-Mailer: ELM [version 2.3(JPM) PL11]

jody@shell.com writes:
|
|Here's what I did to get emacs 18.58 running with purify and X11R5 on
|Suns.  The changes should be simular for lemacs:

[...diffs deleted...]

|Jody Winston		jody@shell.com
|..!{sun,psuvax1,bcm,rice,decwrl,cs.utexas.edu}!shell!jody
|Consultant to:
|Shell Development Company, Bellaire Research Center
|P.O. Box 481, Room 4205, Houston, TX 77001	(Voice: 713 245-7574)

I tried your changes, Jody, but I got the same results (as related by my last
post with the core trace).  

Has anyone succeeded in running lemacs with purify?

-- 
Milo Chan,  Fixed Income Market Strategies,  J.P. Morgan Securities, Inc.
email:   chan_milo@jpmorgan.com    ...or...   chan@fractl.tn.cornell.edu
phone:   212.648.4483              ...or...          212.648.4486 (sec'y)

From help-lucid-emacs-request@lucid.com  Tue Aug 25 11:39:00 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA03384; Tue, 25 Aug 92 11:39:00 PDT
Received: by heavens-gate.lucid.com id AA25593g; Tue, 25 Aug 92 11:25:55 PDT
Received: from jpmorgan.jpmorgan.com by heavens-gate.lucid.com id AA25586g; Tue, 25 Aug 92 11:24:35 PDT
Received: by jpmorgan.jpmorgan.com (5.65/fma-120691);
	id AA02083; Tue, 25 Aug 92 14:35:20 -0400
Received: from hawking.ny.jpmorgan.com by newton.ny.jpmorgan.com (4.1/SMI-4.0)
	id AA08308; Tue, 25 Aug 92 14:35:18 EDT
From: chan@jpmorgan.com (Milo A. Chan)
Message-Id: <9208251835.AA08308@newton.ny.jpmorgan.com>
Subject: Got temacs.purify to work
To: warsaw@nlm.NIH.GOV (Barry A. Warsaw)
Date: Tue, 25 Aug 92 14:35:17 EDT
Cc: help-lucid-emacs@lucid.com
X-Mailer: ELM [version 2.3(JPM) PL11]

I was able to bring up Lucid Emacs with purify by commenting out two
(garbage-collect)'s in loadup.el: the ones after (load "lisp-mode") and
(load "fill").  

Perhaps there is a problem in garbage collection or gnu malloc/free?

Here's what I got from purify after running temacs for a few minutes, then
exiting with C-x C-c the usual way.  Not particularly revealing.


------------------------------begin incl------------------------------
----  Purify'd temacs exit summary  ----
----  0 unsuppressed errors; 0 suppressed errors  ----

Purify: Searching for all memory leaks...
Found 4 leaks.
There are 37 leaked bytes, which is 0.002% of the 1876712 bytes in the heap.

(Purify...reading symbol table from /tmp_mnt/usr/local/wolfram/X11r5/lucid/lemacs-19.2/src/temacs...shared libraries...sorting...Done.)
16     bytes at 0x34f390 lost (mlk), malloc called from:
             _XlcDupLocale (<shared library>; pc = 0xf73535ec)
             _XrmInitParseInfo (<shared library>; pc = 0xf7353aac)
             XrmStringToBindingQuarkList (<shared library>; pc = 0xf7301514)
             XrmCombineFileDatabase (<shared library>; pc = 0xf73051bc)
             _XtToolkitInitialize (<shared library>; pc = 0xf743cbfc)
             XtScreenDatabase (<shared library>; pc = 0xf743d310)

16     bytes at 0x24a390 lost (mlk), malloc called from:
             _XlcDupLocale (<shared library>; pc = 0xf73535ec)
             _XrmInitParseInfo (<shared library>; pc = 0xf7353aac)
             XrmStringToBindingQuarkList (<shared library>; pc = 0xf7301514)
             XrmCombineFileDatabase (<shared library>; pc = 0xf73051bc)
             XtScreenDatabase (<shared library>; pc = 0xf743d37c)
             _XtDisplayInitialize (<shared library>; pc = 0xf743e518)

4      bytes at 0x3265d0 lost (mlk), malloc called from:
             xmalloc (alloc.o; line 164)
             make_argc_argv (xterm.o; line 2202)
             x_term_init (xterm.o; line 2255)
             Fx_open_connection (xfns.o; line 1941)
             Ffuncall (eval.o; line 1804)
             Fbyte_code (bytecode.o; line 428)

1      bytes at 0x24aed0 lost (mlk), malloc called from:
             getpwent (<shared library>; pc = 0xf71bf2e4)
             getpwent (<shared library>; pc = 0xf71bd65c)
             getpwuid (<shared library>; pc = 0xf71bc438)
             init_editfns (editfns.o; line 71)
             main (emacs.o; line 740)
             start (usr_local_compilers_SunC++_SC1.0_crt0.o; pc = 0x2064)


 ------- Overall memory usage ----
 1697132 code
  171499 data/bss
 1876712 heap
   12564 stack
  466944 libXaw.pure.so.5.0	(shared code)
   40960 libXaw.pure.so.5.0	(private data)
   73728 libXext.pure.so.4.10	(shared code)
    8192 libXext.pure.so.4.10	(private data)
  614400 libXt.pure.so.4.10	(shared code)
   40960 libXt.pure.so.4.10	(private data)
  163840 libXmu.pure.so.4.10	(shared code)
   16384 libXmu.pure.so.4.10	(private data)
 1024000 libX11.pure.so.4.10	(shared code)
   49152 libX11.pure.so.4.10	(private data)
 1056768 _lib_libc.516096.pure.so.1.7	(shared code)
   16384 _lib_libc.516096.pure.so.1.7	(private data)
    8192 libinternal_stubs.so.1.0	(shared code)
    8192 libinternal_stubs.so.1.0	(private data)
      14 mmap'd at 0xf7120000
 -------
 7346017 total bytes.
------------------------------end incl------------------------------



-- 
Milo Chan,  Fixed Income Market Strategies,  J.P. Morgan Securities, Inc.
email:   chan_milo@jpmorgan.com    ...or...   chan@fractl.tn.cornell.edu
phone:   212.648.4483              ...or...          212.648.4486 (sec'y)

From help-lucid-emacs-request@lucid.com  Tue Aug 25 16:17:06 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA04059; Tue, 25 Aug 92 16:17:06 PDT
Received: by heavens-gate.lucid.com id AA26701g; Tue, 25 Aug 92 16:07:53 PDT
Received: from motgate.mot.com by heavens-gate.lucid.com id AA26685g; Tue, 25 Aug 92 16:06:12 PDT
Received: from pts1.pts.mot.com ([145.4.3.2]) by pobox.mot.com (4.1/SMI-4.0)
	id AA01059; Tue, 25 Aug 92 18:15:08 CDT
Received: from pts4.pts.mot.com by pts1.pts.mot.com (4.1/SMI-4.1)
	id AA05921; Tue, 25 Aug 92 19:05:53 EDT
Received: from msn25.motorola by pts4.pts.mot.com (4.1/SMI-4.1)
	id AA08280; Tue, 25 Aug 92 19:17:05 EDT
Date: Tue, 25 Aug 92 19:17:05 EDT
From: ex594bw@pts.mot.com (Bob Weiner)
Message-Id: <9208252317.AA08280@pts4.pts.mot.com>
Received: by msn25.motorola (4.1/SMI-4.1)
	id AA00623; Tue, 25 Aug 92 19:17:20 EDT
To: help-lucid-emacs@lucid.com
Subject: Will the next version of Lucid Emacs have the following?

1.  An operator that returns a list of the extents in a buffer.
    It would be nice to be able to filter this list when making the
    call so that it returned only those extents using a specified
    set of faces.

2.  get-face-<attribute> functions, e.g. get-face-color.
    To match the set-face functions presently available, so one
    doesn't have to parse the face data structure.

3.  A way to delete all extents in a buffer.
    A way to delete all extents with a set attributes in a buffer.
    A way to delete all extents with a particular set of faces in a buffer.

If not, I would suggest that all of these could prove very useful
and should not be difficult to implement.

My experience so far in building Hyperbole support for Lucid Emacs
(which I have done and will release on this mail list and the
hyperbole list after a short personal testing period), is that it is a
good bit more difficult than producing the same support for Epoch.
Which is just to say that the Epoch zone/style API seems more mature.
An easy way to get Lucid Emacs there is just to compare how simply the
zone/style functions in Epoch can be done using extent/face operators
in Lucid Emacs and to plug any holes found.  This should be a much
more efficient process than trying to figure out from scratch what
operators Lucid Emacs should have.

Bob


From help-lucid-emacs-request@lucid.com  Tue Aug 25 16:50:25 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA04114; Tue, 25 Aug 92 16:50:25 PDT
Received: by heavens-gate.lucid.com id AA26826g; Tue, 25 Aug 92 16:41:03 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA26822g; Tue, 25 Aug 92 16:38:28 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA28320; Tue, 25 Aug 92 16:47:52 PDT
Date: Tue, 25 Aug 92 16:47:52 PDT
Message-Id: <9208252347.AA28320@thalidomide.lucid>
X-Windows: The problem for your problem.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: ex594bw@pts.mot.com (Bob Weiner)
Cc: help-lucid-emacs@lucid.com
Subject: Re: Will the next version of Lucid Emacs have the following?
In-Reply-To: Bob Weiner's message of Tue 25-Aug-92 19:17:05 EDT <9208252317.AA08280@pts4.pts.mot.com>
References: <9208252317.AA08280@pts4.pts.mot.com>

In message <9208252317.AA08280@pts4.pts.mot.com> Bob Weiner wrote:
>
> 1.  An operator that returns a list of the extents in a buffer.

You can use map-extents for this, and if you get in the habit of using
map-extents instead of building a list and iterating over it, your code
will generate less garbage.

>     It would be nice to be able to filter this list when making the
>     call so that it returned only those extents using a specified
>     set of faces.

In 19.2 there is no way to get the face of an extent, but there will be
in 19.3.

> 2.  get-face-<attribute> functions, e.g. get-face-color.
>     To match the set-face functions presently available, so one
>     doesn't have to parse the face data structure.

It's in there; (apropos "^face-") or see prim/faces.el.

> 3.  A way to delete all extents in a buffer.
>     A way to delete all extents with a set attributes in a buffer.
>     A way to delete all extents with a particular set of faces in a buffer.

These would be good utilities to have.  They can all be implemented in
terms of map-extents.

> Which is just to say that the Epoch zone/style API seems more mature.

No surprise there, I guess :-)  We put a lot more work into the substrate
needed to implement extents/faces than the API; Energize doesn't need an
emacs-lisp interface to them at all; and until about two weeks before 19.1
was released, there wasn't one.  So the paint's still a little wet.

> An easy way to get Lucid Emacs there is just to compare how simply the
> zone/style functions in Epoch can be done using extent/face operators
> in Lucid Emacs and to plug any holes found.  This should be a much
> more efficient process than trying to figure out from scratch what
> operators Lucid Emacs should have.

Agreed; that's why I'm glad you're porting Hyperbole!

	-- Jamie

From help-lucid-emacs-request@lucid.com  Tue Aug 25 18:34:11 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA04294; Tue, 25 Aug 92 18:34:11 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA27142g; Tue, 25 Aug 92 18:23:30 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA09366; Tue, 25 Aug 92 21:34:10 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA09362; Tue, 25 Aug 92 21:34:09 -0400
Path: uunet!charon.amdahl.com!amdahl!JUTS!quail!hmnarvae
From: hmnarvae@ras.amdahl.com (Howard M. Narvaez)
Newsgroups: alt.lucid-emacs.help
Subject: is there a list of lemacs packages
Message-Id: <77QF02VQ1fZG01@JUTS.ccc.amdahl.com>
Date: 26 Aug 92 01:11:19 GMT
Reply-To: hmnarvae@ras.amdahl.com
Organization: Amdahl Corporation, Sunnyvale CA
Lines: 19
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Hello all!

I was wondering if there was a list or index of all (or many) of the packages
available for lemacs.  I've heard about a lot of interesting packages but I
don't read the news often enough to catch everything.

Thanks!!

-Howard

-------------------------------------------------------------------------------
| hmnarvae@ras.amdahl.com
| Howard Narvaez
| Amdahl Corporation
| 1250 East Arques Avenue (M/S 281)
| P.O. Box 3470
| Sunnyvale, CA 94088-3470
| (408) 992-2160
-------------------------------------------------------------------------------

From help-lucid-emacs-request@lucid.com  Wed Aug 26 01:27:07 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA05077; Wed, 26 Aug 92 01:27:07 PDT
Received: by heavens-gate.lucid.com id AA27799g; Wed, 26 Aug 92 01:17:47 PDT
Received: from moebius.loria.fr by heavens-gate.lucid.com id AA27795g; Wed, 26 Aug 92 01:16:05 PDT
Received: by moebius.loria.fr id AA08805
  (5.65c+/IDA-1.4.3 for help-lucid-emacs@lucid.com); Wed, 26 Aug 92 10:26:44 +0200
Date: Wed, 26 Aug 92 10:26:44 +0200
From: Guido Bosch <Guido.Bosch%loria.fr@lucid.com>
Message-Id: <9208260826.AA08805@moebius.loria.fr>
To: queinnec@geant.cenatls.cena.dgac.fr (Philippe Queinnec)
Cc: help-lucid-emacs@lucid.com
Subject: Re: Long time for new-screen (and also INT signals)
Newsgroups: alt.lucid-emacs.help
In-Reply-To: <9208250742.AA20901@geant.cenatls.cena.dgac.fr>
References: <4105@seti.UUCP>
	<9208250742.AA20901@geant.cenatls.cena.dgac.fr>
	<BOSCH.92Aug24192646@moebius.loria.fr>
Reply-To: Guido BOSCH <bosch%loria.fr@lucid.com>

Philippe Queinnec writes:
 > I had this same problem when I had a ressource Emacs*geometry: <anything>
 > The doc explicitly states that this is a very bad idea. Changing it to
 > Emacs.geometry removed the problem.
 > (depending on the <antything>, lemacs may as well crash)
 > 


Right, it has to do sth. with my resource specification. The hang-up is
due to the following form in my .Xdefaults:

Emacs*font: -adobe-courier-medium-r-normal--14-100-100-100-m-90-iso8859-1

However, the doc in the NEWS  file says that this is the right way to
specify  resources that apply to all screens:

------------------------------ NEWS ------------------------------
X Resources
===========

The Emacs resources are generally per-screen.  Each Emacs screen can have its
own name, or the same name as another, depending on the name passed to the
x-create-screen function.  

You can specify resources for all screens with the syntax

	Emacs*parameter: value
or
	Emacs.EmacsScreen*parameter: value

	...

--------------------------------------------------------------------


Am I missing sth. or is this a bug??

	Guido



From help-lucid-emacs-request@lucid.com  Wed Aug 26 05:30:41 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA06125; Wed, 26 Aug 92 05:30:41 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA28091g; Wed, 26 Aug 92 05:19:50 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA22686; Wed, 26 Aug 92 08:30:30 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA22682; Wed, 26 Aug 92 08:30:28 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!cs.utexas.edu!qt.cs.utexas.edu!yale.edu!ira.uka.de!uni-heidelberg!vm.urz.uni-heidelberg.de!L58
From: L58%vm.urz.uni-heidelberg.de@lucid.com (Dieter Menszner)
Subject: scroll-left broken ?
Message-Id: <1684FC570.L58@vm.urz.uni-heidelberg.de>
Organization: University of Heidelberg, Germany
Date: Wed, 26 Aug 92 14:02:24 CET
Lines: 7
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

scroll-left and scroll-right don't work for me. Calling them
scrolls the window horizontally only by one colummn for
arbitray times  of invoking this function.
(scroll-left 10) also is broken.
Is there a fix ?
 
Dieter

From help-lucid-emacs-request@lucid.com  Wed Aug 26 07:30:39 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA06511; Wed, 26 Aug 92 07:30:39 PDT
Received: by heavens-gate.lucid.com id AA28255g; Wed, 26 Aug 92 07:18:24 PDT
Received: from motgate.mot.com by heavens-gate.lucid.com id AA28249g; Wed, 26 Aug 92 07:16:40 PDT
Received: from pts1.pts.mot.com ([145.4.3.2]) by pobox.mot.com (4.1/SMI-4.0)
	id AA12275; Wed, 26 Aug 92 09:25:37 CDT
Received: from pts5.pts.mot.com ([192.8.210.19]) by pts1.pts.mot.com (4.1/SMI-4.1)
	id AA07861; Wed, 26 Aug 92 10:16:20 EDT
Received: by pts5.pts.mot.com ( 5.52 (84)/SMI-4.1)
	id AA02123; Wed, 26 Aug 92 10:22:56 EDT
Date: Wed, 26 Aug 92 10:22:56 EDT
From: weiner@pts.mot.com (Bob Weiner)
Message-Id: <9208261422.AA02123@pts5.pts.mot.com>
To: jwz@lucid.com
Cc: ex594bw@pts.mot.com, help-lucid-emacs@lucid.com
In-Reply-To: Jamie Zawinski's message of Tue, 25 Aug 92 16:47:52 PDT <9208252347.AA28320@thalidomide.lucid>
Subject: Re: Will the next version of Lucid Emacs have the following?

   In message <9208252317.AA08280@pts4.pts.mot.com> Bob Weiner wrote:
   >
   > 1.  An operator that returns a list of the extents in a buffer.

   You can use map-extents for this, and if you get in the habit of using
   map-extents instead of building a list and iterating over it, your code
   will generate less garbage.

Ok.  Why does map-extents always return nil, rather than a list of results
of the function application, as is common for map operators?  If this
was done to minimize unused return values, a flag that would return
the list would be handy so that the programmer still has control without
having to assemble the list himself.

   >     It would be nice to be able to filter this list when making the
   >     call so that it returned only those extents using a specified
   >     set of faces.

   In 19.2 there is no way to get the face of an extent, but there will be
   in 19.3.

   > 2.  get-face-<attribute> functions, e.g. get-face-color.
   >     To match the set-face functions presently available, so one
   >     doesn't have to parse the face data structure.

   It's in there; (apropos "^face-") or see prim/faces.el.

Got it.

   > 3.  A way to delete all extents in a buffer.
   >     A way to delete all extents with a set attributes in a buffer.
   >     A way to delete all extents with a particular set of faces in a buffer.

   These would be good utilities to have.  They can all be implemented in
   terms of map-extents.

   > Which is just to say that the Epoch zone/style API seems more mature.

   No surprise there, I guess :-)  We put a lot more work into the substrate
   needed to implement extents/faces than the API; Energize doesn't need an
   emacs-lisp interface to them at all; and until about two weeks before 19.1
   was released, there wasn't one.  So the paint's still a little wet.

   > An easy way to get Lucid Emacs there is just to compare how simply the
   > zone/style functions in Epoch can be done using extent/face operators
   > in Lucid Emacs and to plug any holes found.  This should be a much
   > more efficient process than trying to figure out from scratch what
   > operators Lucid Emacs should have.

   Agreed; that's why I'm glad you're porting Hyperbole!

I just hope the real V19 doesn't have another incompatible API.

Bob



From help-lucid-emacs-request@lucid.com  Wed Aug 26 09:58:57 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA07082; Wed, 26 Aug 92 09:58:57 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA28668g; Wed, 26 Aug 92 09:49:18 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA08600; Wed, 26 Aug 92 13:00:04 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA08596; Wed, 26 Aug 92 13:00:02 -0400
Path: uunet!cs.utexas.edu!qt.cs.utexas.edu!yale.edu!jvnc.net!darwin.sura.net!zaphod.mps.ohio-state.edu!rphroy!kocrsv01!c23mts
From: c23mts@kocrsv01.delcoelect.com (Mike Scheidler)
Newsgroups: alt.lucid-emacs.help
Subject: Mouse enhancements for buffer-menu mode
Message-Id: <1992Aug26.165853.22947@kocrsv01.delcoelect.com>
Date: 26 Aug 92 16:58:53 GMT
Reply-To: c23mts@kocrsv01.delcoelect.com
Organization: Delco Electronics Corp.
Lines: 39
Originator: c23mts@kocrsw12
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


Here are a couple of mouse-based functions I use with buffer menu mode.
They're not elegant or complicated, but they make my life a little easier.

I have these new functions mapped to buttons 2 and 3, keeping the default
mapping for button 1.  This lets me switch to the buffer menu window with a
click of button 1 whenever I want to do other buffer menu operations.

Clicking button 2 on a buffer menu line will switch to that buffer, closing
all other windows on that screen.  (This is just like pressing '1' on the
line).  Clicking button 3 in a similar manner will cause the selected buffer
to come up in a new screen and switch focus there.


(defun Buffer-mouse-1-window (event)
  "Switch to buffer in 1 window using mouse."
  (interactive "@e")
  (select-window (event-window event))
  (mouse-set-point event)
  (switch-to-buffer (Buffer-menu-buffer t))
  (bury-buffer (other-buffer))
  (delete-other-windows))

(defun Buffer-mouse-new-screen (event)
  "Switch to buffer in a new screen using mouse."
  (interactive "@e")
  (select-window (event-window event))
  (mouse-set-point event)
  (select-screen (new-screen))
  (switch-to-buffer (Buffer-menu-buffer t)))
 
(define-key Buffer-menu-mode-map 'button2 'Buffer-mouse-1-window)
(define-key Buffer-menu-mode-map 'button3 'Buffer-mouse-new-screen)

-- 
 Mike Scheidler                    INTERNET:  c23mts@kocrsv01.delcoelect.com
 Software Technology               UUCP:      deaes!c23mts
 Delco Electronics Corporation     PHONE:     (317) 451-0642
 Kokomo, IN 46904                  GMNET:     8-322-0642

From help-lucid-emacs-request@lucid.com  Wed Aug 26 10:36:00 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA07187; Wed, 26 Aug 92 10:36:00 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA28866g; Wed, 26 Aug 92 10:26:40 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA11219; Wed, 26 Aug 92 13:37:27 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA11206; Wed, 26 Aug 92 13:37:25 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!decwrl!csus.edu!netcom.com!kemmer
From: kemmer@netcom.com (Todd Kemmerling)
Subject: Re: Will the next version of Lucid Emacs have the following?
Message-Id: <-wbnrs-.kemmer@netcom.com>
Date: Wed, 26 Aug 92 16:48:31 GMT
Organization: Netcom - Online Communication Services  (408 241-9760 guest) 
References: <9208261422.AA02123@pts5.pts.mot.com>
Lines: 1
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com



From help-lucid-emacs-request@lucid.com  Wed Aug 26 10:53:29 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA07271; Wed, 26 Aug 92 10:53:29 PDT
Received: by heavens-gate.lucid.com id AA28925g; Wed, 26 Aug 92 10:43:26 PDT
Received: from chenas.inria.fr by heavens-gate.lucid.com id AA28917g; Wed, 26 Aug 92 10:43:07 PDT
Received: from iris.ccvr.fr by chenas.inria.fr (5.65c8d/92.02.29)
	via Fnet-EUnet id AA22876; Wed, 26 Aug 1992 19:53:47 +0200 (MET)
Received: from hebe.ccvr.fr by iris.ccvr.fr, Wed, 26 Aug 92 19:41:26 +0200
Received: by hebe.ccvr.fr (AIX 3.2/UCB 5.64/4.03)
          id AA54364; Wed, 26 Aug 1992 19:53:11 +0200
Date: Wed, 26 Aug 1992 19:53:11 +0200
From: ssos006%hebe.ccvr.fr@lucid.com (ccvr__MERCIER_Claude)
Message-Id: <9208261753.AA54364@hebe.ccvr.fr>
To: help-lucid-emacs@lucid.com
Subject: wrong mailing address, install on AIX 3.2
Cc: ssos006@hebe.ccvr.fr




Thanks for adding me to the mailing list, but you tell me
that you added ssos006@hebe.ccvr.fr and my real address is
mercier@ccvr.fr (same for the bug mails)

Beside that, I have been thru all help-lucid-emacs messages
and made all the changes to install it on the rs/6000 that I could
see in it, but the last I have done is to change startup.el
and replace the two function as I understood I should do but I still
get the message :
Symbol's value as variable is void: lock-directory

when loading Loading startup...

Is there any solution? did I mis understood the fact that I had to replace those
functions?

claude





From help-lucid-emacs-request@lucid.com  Wed Aug 26 11:16:08 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA07334; Wed, 26 Aug 92 11:16:08 PDT
Received: by heavens-gate.lucid.com id AA29033g; Wed, 26 Aug 92 11:05:37 PDT
Received: from chenas.inria.fr by heavens-gate.lucid.com id AA29028g; Wed, 26 Aug 92 11:04:49 PDT
Received: from iris.ccvr.fr by chenas.inria.fr (5.65c8d/92.02.29)
	via Fnet-EUnet id AA23283; Wed, 26 Aug 1992 20:15:35 +0200 (MET)
Received: from hebe.ccvr.fr by iris.ccvr.fr, Wed, 26 Aug 92 20:03:08 +0200
Received: by hebe.ccvr.fr (AIX 3.2/UCB 5.64/4.03)
          id AA57046; Wed, 26 Aug 1992 20:14:54 +0200
Date: Wed, 26 Aug 1992 20:14:54 +0200
From: ssos006%hebe.ccvr.fr@lucid.com (ccvr__MERCIER_Claude)
Message-Id: <9208261814.AA57046@hebe.ccvr.fr>
To: help-lucid-emacs@lucid.com
Subject: sorry
Cc: ssos006@hebe.ccvr.fr



sorry, I had forget to compile the file startup.el, forget about the preceding
message

claude


From help-lucid-emacs-request@lucid.com  Thu Aug 27 03:14:21 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA10045; Thu, 27 Aug 92 03:14:21 PDT
Received: by heavens-gate.lucid.com id AA01383g; Thu, 27 Aug 92 03:00:20 PDT
Received: from ntu.ac.sg ([155.69.1.5]) by heavens-gate.lucid.com id AA01377g; Thu, 27 Aug 92 03:00:06 PDT
Received: by ntu.ac.sg (5.57/Ultrix3.0-C)
	id AA26369; Thu, 27 Aug 92 18:10:42 +0800
Message-Id: <9208271010.AA26369@ntu.ac.sg>
Sender: franks%ntu.ac.sg@lucid.com
Date: Thu, 27 Aug 1992 18:11:17 +0730
To: help-lucid-emacs@lucid.com
From: franks%ntu.ac.sg@lucid.com (Frank Siebenlist)
Subject: please add me to mailing list


________________________________________________________________________
Frank Siebenlist                             Email: franks@imt.ntu.ac.sg
Institute of Manufacturing Technology (IMT)    Tel: (65) 799-1336
Nanyang Technological University (NTU)         Fax: (65) 791-2927
Nanyang Avenue
Singapore 2263


From help-lucid-emacs-request@lucid.com  Thu Aug 27 07:36:32 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA10386; Thu, 27 Aug 92 07:36:32 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA01664g; Thu, 27 Aug 92 07:23:28 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA28242; Thu, 27 Aug 92 10:34:16 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA28238; Thu, 27 Aug 92 10:34:14 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!cs.utexas.edu!csc.ti.com!tilde.csc.ti.com!m2.dseg.ti.com!lystad
From: lystad@m2.dseg.ti.com (Garr Lystad)
Subject: Re: Mouse enhancements for buffer-menu mode
Organization: TI DSEG, Spring Creek, Plano, Tx.
In-Reply-To: c23mts@kocrsv01.delcoelect.com's message of 26 Aug 92 16:58:53 GMT
References: <1992Aug26.165853.22947@kocrsv01.delcoelect.com>
Message-Id: <LYSTAD.92Aug27090446@m2.dseg.ti.com>
Reply-To: Garr Lystad <lystad@m2.dseg.ti.com>
Date: Thu, 27 Aug 1992 15:04:46 GMT
Lines: 180
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <1992Aug26.165853.22947@kocrsv01.delcoelect.com> c23mts@kocrsv01.delcoelect.com (Mike Scheidler) writes:


>   Here are a couple of mouse-based functions I use with buffer menu mode.
>   They're not elegant or complicated, but they make my life a little easier.
>   ....

I too have made some functions for buffer-menu-mode.  Mine are not
elegant or complicated either, but they offer a couple of other
options.
 
The commands and key settings are as follows:
(local-set-key '(shift button1) 'mouse-select-buffer-1-window)
(local-set-key '(shift button2) 'mouse-select-buffer-this-window)
(local-set-key '(shift button3) 'mouse-select-buffer-other-window) )))
(local-set-key '(button2) 'mouse-select-buffer-this-window)
(local-set-key '(button3) 'mouse-select-buffer-other-window)
(define-key global-map "\C-c\C-b" 'list-buffers-1-window)

I don't use multiple screens, so I don't have something for that, as
Mike does.  

Since I often have a lot of buffers, I have added a command to put the
buffer list in one window, the last command above.

I have also altered list-buffers, as commented in the code below, so
that an argument of 2 will list only modified file buffers (handy in
the middle of various tags operations) and an argument of 3 will list
only dired mode buffers.  An argument of anything else, as previously,
will list all file buffers only.

In case you are wondering why the macro is written without backquotes,
etc., it was for practice.  I remember finding a bug in the backquote
package a year or more ago with Emacs 18.58 and was thinking about
repairs.  Then I got to use a Lisp machine again and now I've
forgotten what the bug was.  Does anyone know of anything wrong with
backquotes or anything that has been fixed since that Emacs?


;;;; modifications to list buffers, and eval-in-buffer macro used there

;; Taken from the file sun-mouse.el
(defmacro  (buffer &rest forms)
  "Macro to switches to BUFFER, evaluates FORMS, returns to original buffer."
  ;; When you don't need the complete window context of eval-in-window
  (nconc (list 'let)
	 (list '((start-buffer (current-buffer))))
	 (list (nconc (list 'unwind-protect)
		      (list (nconc (list 'progn)
				   (list (list 'set-buffer buffer))
				   forms))
		      (list '(set-buffer start-buffer)) ))) )

(put 'eval-in-buffer 'lisp-indent-hook 1)

(defun goto-event-char (event)
  "Arglist: (event). Move point to the mouse-click."
  (let ((event-buffer (window-buffer (event-window event))))
    (if (eql (current-buffer) event-buffer)  
	(switch-to-buffer event-buffer)
      (switch-to-buffer-other-window event-buffer) )
    (if (event-point event) (goto-char (event-point event))) ))

(defun mouse-select-buffer-1-window (event)
  "Select this line's buffer, alone, in full screen."
  (interactive "e")
  (goto-event-char event)
  (Buffer-menu-1-window) )

(defun mouse-select-buffer-other-window (event)
  "Select this line's buffer, alone, in other window."
  (interactive "e")
  (goto-event-char event)
  (Buffer-menu-other-window) )

(defun mouse-select-buffer-this-window (event)
  "Select this line's buffer, alone, in this window."
  (interactive "e")
  (goto-event-char event)
  (Buffer-menu-this-window) )

;;; for buffer-menu-mode

(defun install-buffer-list-map ()
  (let ((buffer (get-buffer "*Buffer List*")))
    (eval-in-buffer buffer
      (local-set-key '(shift button1) 'mouse-select-buffer-1-window)
      (local-set-key '(shift button2) 'mouse-select-buffer-this-window)
      (local-set-key '(button2) 'mouse-select-buffer-this-window)
      (local-set-key '(button3) 'mouse-select-buffer-other-window)
      (local-set-key '(shift button3) 'mouse-select-buffer-other-window) )))


(install-buffer-list-map)
 
(defun list-buffers-1-window (files)
  (interactive "P")
  (list-buffers files)
  (switch-to-buffer (get-buffer "*Buffer List*"))
  (delete-other-windows)
  )

(define-key global-map "\C-c\C-b" 'list-buffers-1-window)

(defun list-buffers (&optional files-only)
  "Display a list of names of existing buffers.
Inserts it in buffer *Buffer List* and displays that.
Note that buffers with names starting with spaces are omitted.
Non-null optional arg FILES-ONLY means mention only file buffers.
  If FILES-ONLY has the special value 2, then only modified file buffers are listed.
  If FILES-ONLY has the special value 3, then only dired buffers are listed.

The M column contains a * for buffers that are modified.
The R column contains a % for buffers that are read-only."
  (interactive "P")
  (let ((current (current-buffer))
	(col1 19)
	output)
    (save-excursion
      (with-output-to-temp-buffer "*Buffer List*"
        (let ((buffers (buffer-list)))
          (setq output standard-output)
          (set-buffer output)
          (Buffer-menu-mode)
          (setq buffer-read-only nil)
          (buffer-disable-undo output)
          (insert list-buffers-header-line)
          (while buffers
            (let* ((buffer (car buffers))
                   (name (buffer-name buffer))
                   (file (buffer-file-name buffer)))
              (setq buffers (cdr buffers))
              (cond ((null name)) ;deleted buffer
                    ((and (/= 0 (length name));don't mention if starts with " "
                          (= (aref name 0) ?\ )))
                    ((and files-only (null file)
			  (not (eql files-only 3))))                            ;; gsl 8-20-92
		    ((and (eql files-only 2) (not (buffer-modified-p buffer)))) ;; gsl 8-20-92
		    ((and (eql files-only 3)                                    ;; gsl 8-20-92
			  (not (eql 'dired-mode                                 ;; gsl 8-20-92
				    (eval-in-buffer buffer major-mode))) ))     ;; gsl 8-20-92
                    (t
                     (set-buffer buffer)
                     (let ((ro buffer-read-only)
                           (id list-buffers-identification))
                       (set-buffer output)
                       (insert (if (eq buffer current)
                                   (progn (setq current (point)) ?\.)
                                   ?\ ))
		       (insert (if (buffer-modified-p buffer)
                                   ?\* 
				   ?\ ))
		       (insert (if ro
                                   ?\%
                                   ?\ ))
                       (if (string-match "[\n\"\\ \t]" name)
                           (let ((print-escape-newlines t))
                             (prin1 name output))
                           (insert ?\  name))
                       (indent-to col1 1)
                       (cond ((stringp id)
                              (insert id))
                             (id
                              (set-buffer buffer)
                              (condition-case e
                                  (funcall id output)
                                (error
                                 (princ "***" output) (prin1 e output)))
                              (set-buffer output)
                              (goto-char (point-max)))))
                     (insert ?\n)))))
          (setq buffer-read-only t))))
    (if (not (bufferp current))
	(save-excursion
	  (set-buffer output)
	  (goto-char current)))))

;;------------------------------------- end of file

  --  Garr

From help-lucid-emacs-request@lucid.com  Thu Aug 27 08:14:09 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA10486; Thu, 27 Aug 92 08:14:09 PDT
Received: by heavens-gate.lucid.com id AA01754g; Thu, 27 Aug 92 08:02:00 PDT
Received: from chenas.inria.fr by heavens-gate.lucid.com id AA01750g; Thu, 27 Aug 92 08:01:44 PDT
Received: from iris.ccvr.fr by chenas.inria.fr (5.65c8d/92.02.29)
	via Fnet-EUnet id AA25677; Thu, 27 Aug 1992 17:12:22 +0200 (MET)
Received: from hebe.ccvr.fr by iris.ccvr.fr, Thu, 27 Aug 92 16:59:57 +0200
Received: by hebe.ccvr.fr (AIX 3.2/UCB 5.64/4.03)
          id AA64019; Thu, 27 Aug 1992 17:11:46 +0200
Date: Thu, 27 Aug 1992 17:11:46 +0200
From: ssos006%hebe.ccvr.fr@lucid.com (ccvr__MERCIER_Claude)
Message-Id: <9208271511.AA64019@hebe.ccvr.fr>
To: help-lucid-emacs@lucid.com
Subject: lemacs on AIX 3.2



I got the executable xemacs making the same changes that anybody else
who tried but when I start it with "xemacs" it open a clear window which
does not display anything or takes any input, I can sit in front of it
half an hour and nothing happen. If I start it with "xemacs file"
then it core dump. 
I tried to dbx it in both cases and got the following:

case 1: 
(after I interrupt  with ^C)

interrupt in unnamed block $b667 at line 455 in file "gmalloc.c"
  455             i = _heapinfo[i].free.prev;


result of where:

unnamed block $b667, line 455 in "gmalloc.c"
__free(ptr = "C-x C-f"), line 455 in "gmalloc.c"
gmalloc.free(ptr = "C-x C-f"), line 591 in "gmalloc.c"
free_widget_value(wv = 0x202051d8), line 129 in "menubar.c"
free_widget_value(wv = 0x202051a8), line 141 in "menubar.c"
free_widget_value(wv = 0x20205178), line 140 in "menubar.c"
free_widget_value(wv = 0x20205148), line 140 in "menubar.c"
Fset_screen_menubar(menubar = 336915596, screen = 940941312), line 518 in "menubar.c"
Fx_create_screen(parms = 337098468, lisp_window_id = 68298756), line 884 in "xfns.c"
Ffuncall(nargs = 2, args = 0x2016002c), line 1807 in "eval.c"
Fbyte_code(bytestr = 202874172, vector = 269880928, maxdepth = 4, 0x0, 0x0, 0x0, 0x20001c98, 0x2017c228
), line 428 in "bytecode.c"
funcall_lambda(fun = 404098624, nargs = 1, arg_vector = 0x20148eac), line 1968 in "eval.c"
Ffuncall(nargs = 2, args = 0x20148ea8), line 1835 in "eval.c"
Fbyte_code(bytestr = 202874136, vector = 269661184, maxdepth = 2, 0x201609cc, 0x2017c220, 0x0, 0x20001c
98, 0x2017c228), line 428 in "bytecode.c"
funcall_lambda(fun = 404098592, nargs = 1, arg_vector = 0x201609cc), line 1968 in "eval.c"
Ffuncall(nargs = 2, args = 0x201609c8), line 1835 in "eval.c"
Fbyte_code(bytestr = 202734980, vector = 269662784, maxdepth = 4, 0x1414edcc, 0x0, 0x0, 0xdeadbeef, 0xd
eadbeef), line 428 in "bytecode.c"
funcall_lambda(fun = 404062528, nargs = 0, arg_vector = 0x2ff7e324), line 1968 in "eval.c"
Ffuncall(nargs = 1, args = 0x2ff7e320), line 1835 in "eval.c"
Ffuncall(nargs = 2, args = 0x2ff7e31c), line 1785 in "eval.c"
unnamed block $b475, line 1613 in "eval.c"
call1(fn = 68405272, arg = 68635692, 0x413c818, 0x1414edcc, 0x0, 0x0, 0xdeadbeef, 0xdeadbeef), line 161
3 in "eval.c"
mapcar1(leni = 1, vals = 0x20148fd8, fn = 68405272, seq = 336915916, 0x0, 0x0, 0xdeadbeef, 0xdeadbeef),
 line 1267 in "fns.c"
Fmapcar(fn = 68405272, seq = 336915916), line 1324 in "fns.c"
Ffuncall(nargs = 3, args = 0x201603c8), line 1807 in "eval.c"
Fbyte_code(bytestr = 201990024, vector = 269098952, maxdepth = 4, 0x0, 0x0, 0x0, 0xdeadbeef, 0xdeadbeef
), line 428 in "bytecode.c"
funcall_lambda(fun = 403316572, nargs = 1, arg_vector = 0x20148ebc), line 1968 in "eval.c"
Ffuncall(nargs = 2, args = 0x20148eb8), line 1835 in "eval.c"
Fbyte_code(bytestr = 202068416, vector = 269177312, maxdepth = 2, 0x1001dc94, 0xdeadbeef, 0xdeadbeef, 0
xdeadbeef, 0xdeadbeef), line 428 in "bytecode.c"
unnamed block $b472, line 1417 in "eval.c"
Feval(form = 336286136, 0x4122804, 0xdeadbeef, 0x1001dc94, 0xdeadbeef, 0xdeadbeef, 0xdeadbeef, 0xdeadbe
ef), line 1417 in "eval.c"
Fcondition_case(args = 337098444), line 967 in "eval.c"
Fbyte_code(bytestr = 202068200, vector = 269177480, maxdepth = 9, 0x4122804, 0x0, 0x0, 0x0, 0x0), line
582 in "bytecode.c"
unnamed block $b472, line 1417 in "eval.c"
Feval(form = 336285920, 0x2011bef8, 0x412282c, 0x4122804, 0x0, 0x0, 0x0, 0x0), line 1417 in "eval.c"
Fprogn(args = 336286440), line 290 in "eval.c"
funcall_lambda(fun = 336286448, nargs = 0, arg_vector = 0x2012720c), line 1966 in "eval.c"
Ffuncall(nargs = 1, args = 0x20127208), line 1844 in "eval.c"
Fbyte_code(bytestr = 202066704, vector = 269176312, maxdepth = 25, 0x0, 0x0, 0x0, 0xdeadbeef, 0xdeadbee
f), line 428 in "bytecode.c"
unnamed block $b472, line 1417 in "eval.c"
Feval(form = 336284424, 0x2011bef8, 0x412282c, 0x0, 0x0, 0x0, 0xdeadbeef, 0xdeadbeef), line 1417 in "ev
al.c"
Fprogn(args = 336285368), line 290 in "eval.c"
funcall_lambda(fun = 336285376, nargs = 0, arg_vector = 0x20148ffc), line 1966 in "eval.c"
Ffuncall(nargs = 1, args = 0x20148ff8), line 1844 in "eval.c"
Fbyte_code(bytestr = 202066360, vector = 269175276, maxdepth = 2, 0x1001dc94, 0xdeadbeef, 0xdeadbeef, 0
xdeadbeef, 0xdeadbeef), line 428 in "bytecode.c"
unnamed block $b472, line 1417 in "eval.c"
Feval(form = 336284080, 0x4122804, 0xdeadbeef, 0x1001dc94, 0xdeadbeef, 0xdeadbeef, 0xdeadbeef, 0xdeadbe
ef), line 1417 in "eval.c"
Fcondition_case(args = 336923332), line 967 in "eval.c"
Fbyte_code(bytestr = 202066028, vector = 269175436, maxdepth = 9, 0x1001def0, 0xdeadbeef, 0xdeadbeef, 0
xdeadbeef, 0xdeadbeef), line 582 in "bytecode.c"
unnamed block $b472, line 1417 in "eval.c"
Feval(form = 336283748, 0x2011bef8, 0x412282c, 0x1001def0, 0xdeadbeef, 0xdeadbeef, 0xdeadbeef, 0xdeadbe
ef), line 1417 in "eval.c"
Fprogn(args = 336284400), line 290 in "eval.c"
funcall_lambda(fun = 336284408, nargs = 0, arg_vector = (nil)), line 1966 in "eval.c"
apply_lambda(fun = 336284408, args = 68298756, eval_flag = 1, 0x1001def0, 0xdeadbeef, 0xdeadbeef, 0xdea
dbeef, 0xdeadbeef), line 1899 in "eval.c"
Feval(form = 336884636, 0xdeadbeef, 0xdeadbeef, 0x1001def0, 0xdeadbeef, 0xdeadbeef, 0xdeadbeef, 0xdeadb
eef), line 1456 in "eval.c"
top_level_2(), line 394 in "keyboard.c"
internal_condition_case(bfun = 0x20115dd8, handlers = 68299036, hfun = 0x20115dcc), line 1001 in "eval.
c"
top_level_1(dummy = 68298756), line 403 in "keyboard.c"
internal_catch(tag = 68299016, func = 0x20115db4, arg = 68298756), line 813 in "eval.c"
command_loop(), line 363 in "keyboard.c"
recursive_edit_1(), line 221 in "keyboard.c"
Frecursive_edit(), line 250 in "keyboard.c"
main(argc = 1, argv = 0x2ff7fc08, envp = 0x2ff7fc10), line 899 in "emacs.c"


print i
231 (which is always the same)


In the second case (call with a file)


it does not core dump if I run it under dbx but does otherwise.

 xemacs emacs.c
Fatal error (11).Segmentation fault(coredump)

then dbx xemacs, and where gives the following result:

segmentation violation in fatal_error_signal at line 145 in file "emacs.c"
  145     kill (getpid (), fatal_error_code);


does anyone know what I did wrong ? 
thanks




From help-lucid-emacs-request@lucid.com  Thu Aug 27 09:00:31 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA10585; Thu, 27 Aug 92 09:00:31 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA01857g; Thu, 27 Aug 92 08:51:16 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA05931; Thu, 27 Aug 92 12:02:05 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA05927; Thu, 27 Aug 92 12:02:03 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!zaphod.mps.ohio-state.edu!cs.utexas.edu!csc.ti.com!tilde.csc.ti.com!m2.dseg.ti.com!lystad
From: lystad@m2.dseg.ti.com (Garr Lystad)
Subject: point-to-register
Organization: TI DSEG, Spring Creek, Plano, Tx.
Message-Id: <LYSTAD.92Aug27102717@m2.dseg.ti.com>
Reply-To: Garr Lystad <lystad@m2.dseg.ti.com>
Distribution: alt
Date: Thu, 27 Aug 1992 16:27:17 GMT
Lines: 37
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


The bug mentioned earlier that manifests itself as a problem with
point-to-register not returning the cursor from the minibuffer seems
to be a problem with interactive.  I ran a little test:

(defun xx (char)
  (interactive "cPrompt")
  (message "complete") )

(define-key global-map '(hyper z) 'xx)

The cursor stayed in the minibuffer.

I don't have the time or knowledge to fix the C code, but I have
made the following changes to fix point-to-register.

(defun set-register (char value)
  "Set contents of Emacs register named CHAR to VALUE.
Returns VALUE."
  ;;Next line doesn't fix problem, but change %c to %s and it does, 
  ;; but then the message is more or less useless. gsl 8-27-92
  (message "Point to register: %c" char)
  ;;Next line returns the cursor to the buffer where it belongs. gsl 8-27-92
  (switch-to-buffer (marker-buffer (point-marker))) 
  (let ((aelt (assq char register-alist)))
    (if aelt
	(setcdr aelt value)
      (setq aelt (cons char value))
      (setq register-alist (cons aelt register-alist)))
    value))

Obviously, such switch-to-buffer lines may need to be added to other
(interactive "c...") fuctions to make them work until we have a real
fix.  A lot of them already do something that gets the cursor back to
the buffer where it belongs, however.

  --  Garr

From help-lucid-emacs-request@lucid.com  Thu Aug 27 09:04:13 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA10609; Thu, 27 Aug 92 09:04:13 PDT
Received: by heavens-gate.lucid.com id AA01885g; Thu, 27 Aug 92 08:54:44 PDT
Received: from jpmorgan.jpmorgan.com by heavens-gate.lucid.com id AA01878g; Thu, 27 Aug 92 08:54:27 PDT
Received: by jpmorgan.jpmorgan.com (5.65/fma-120691);
	id AA06833; Thu, 27 Aug 92 12:05:16 -0400
Received: from hawking.ny.jpmorgan.com by newton.ny.jpmorgan.com (4.1/SMI-4.0)
	id AA11468; Thu, 27 Aug 92 12:05:10 EDT
From: chan@jpmorgan.com (Milo A. Chan)
Message-Id: <9208271605.AA11468@newton.ny.jpmorgan.com>
Subject: Re: lemacs on AIX 3.2
To: help-lucid-emacs@lucid.com
Date: Thu, 27 Aug 92 12:05:13 EDT
Cc: warsaw@nlm.NIH.GOV (Barry A. Warsaw),
        jwz%thalidomide@lucid.com (Jamie Zawinski),
        ssos006%hebe.ccvr.fr@lucid.com
In-Reply-To: <9208271511.AA64019@hebe.ccvr.fr>; from "ccvr__MERCIER_Claude" at Aug 27, 92 5:11 pm
X-Mailer: ELM [version 2.3(JPM) PL11]

ccvr__MERCIER_Claude writes:
|I got the executable xemacs making the same changes that anybody else
|who tried but when I start it with "xemacs" it open a clear window which
|does not display anything or takes any input, I can sit in front of it
|half an hour and nothing happen. If I start it with "xemacs file"
|then it core dump. 
|I tried to dbx it in both cases and got the following:
|
|case 1: 
|(after I interrupt  with ^C)
|
|interrupt in unnamed block $b667 at line 455 in file "gmalloc.c"
|  455             i = _heapinfo[i].free.prev;
|
|
|result of where:
|
|unnamed block $b667, line 455 in "gmalloc.c"
|__free(ptr = "C-x C-f"), line 455 in "gmalloc.c"
|gmalloc.free(ptr = "C-x C-f"), line 591 in "gmalloc.c"
|free_widget_value(wv = 0x202051d8), line 129 in "menubar.c"

[...core trace deleted...]

It's interesting to note that this is the same place where the purify'd
version of temacs I have been working with dumps core.  Two different
hardware and software platforms, different compilers, different debuggers,
with and without purify.  Different stack frames, though.  Is there any
connection?  Or am I just confusing myself?

|
|In the second case (call with a file)
|
|
|it does not core dump if I run it under dbx but does otherwise.

I get the same behavior running purified temacs, gcc-1.40, sparc SunOS4.1.2,
gdb-4.6.



-- 
Milo Chan,  Fixed Income Market Strategies,  J.P. Morgan Securities, Inc.
email:   chan_milo@jpmorgan.com    ...or...   chan@fractl.tn.cornell.edu
phone:   212.648.4483              ...or...          212.648.4486 (sec'y)

From help-lucid-emacs-request@lucid.com  Thu Aug 27 10:46:24 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA10922; Thu, 27 Aug 92 10:46:24 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA02231g; Thu, 27 Aug 92 10:34:00 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA13815; Thu, 27 Aug 92 13:44:49 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA13806; Thu, 27 Aug 92 13:44:47 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!cs.utexas.edu!csc.ti.com!tilde.csc.ti.com!m2.dseg.ti.com!lystad
From: lystad@m2.dseg.ti.com (Garr Lystad)
Subject: retained state from byte compile
Organization: TI DSEG, Spring Creek, Plano, Tx.
Message-Id: <LYSTAD.92Aug27120852@m2.dseg.ti.com>
Reply-To: Garr Lystad <lystad@m2.dseg.ti.com>
Distribution: alt
Date: Thu, 27 Aug 1992 18:08:52 GMT
Lines: 15
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


I wrote a little advise macro when I first started using Epoch.  
One of my files advises an lemacs function (call it x) and the advice
calls a function I define in the same file (call this function of mine
y).  If I do not load or evaluate any part of the file, but I do byte
compile it, the advice on x remains and I get an error because y is
undefined.  That shouldn't really be, should it?

And while on the subject of advise, I read somewhere that there is an
advise package somewhere.  Is that true?  Mine is pretty simple only
allowing one piece of around advise at a time.  If anyone is familiar
with another advise package, can (s)he tell me what features it offers
and where to get it?

  --  Garr

From help-lucid-emacs-request@lucid.com  Thu Aug 27 11:06:35 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA11001; Thu, 27 Aug 92 11:06:35 PDT
Received: by heavens-gate.lucid.com id AA02307g; Thu, 27 Aug 92 10:57:04 PDT
Received: from clouso.crim.ca by heavens-gate.lucid.com id AA02282g; Thu, 27 Aug 92 10:53:57 PDT
Received: from fatman.crim.ca by clouso.crim.ca (4.1/SMI-4.1)
	id AA06855; Thu, 27 Aug 92 14:03:52 EDT
Received: by fatman.crim.ca (4.1/SMI-4.1)
	id AA01864; Thu, 27 Aug 92 14:03:12 EDT
Date: Thu, 27 Aug 92 14:03:12 EDT
From: paquette%fatman.crim.ca@lucid.com (Marc Paquette)
Message-Id: <9208271803.AA01864@fatman.crim.ca>
To: help-lucid-emacs@lucid.com
In-Reply-To: <LYSTAD.92Aug27120852@m2.dseg.ti.com>
Subject: RE: retained state from byte compile


lystad@m2.dseg.ti.com (Garr Lystad) wrote,

> And while on the subject of advise, I read somewhere that there is an
> advise package somewhere.  Is that true?  Mine is pretty simple only
> allowing one piece of around advise at a time.  If anyone is familiar
> with another advise package, can (s)he tell me what features it offers
> and where to get it?

The advise package I know of is the one from TMC (Thinking
Machines).  It is said to be similar to the lispm advise.  It
provides :before, :after and :around advises.  

The package I have is version 1.2, dated 89/03/25, authored by
brewster@think.com.

Hope this helps.

--
Marc Paquette
Conseiller Technique, UNIX
Centre de recherche informatique de Montreal (CRIM)
Tel   : (514) 340-5758
Fax   : (514) 340-5777
email : paquette@crim.ca

From help-lucid-emacs-request@lucid.com  Thu Aug 27 13:03:03 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA11380; Thu, 27 Aug 92 13:03:03 PDT
Received: by heavens-gate.lucid.com id AA02668g; Thu, 27 Aug 92 12:53:49 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA02661g; Thu, 27 Aug 92 12:51:18 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA06497; Thu, 27 Aug 92 13:00:44 PDT
Date: Thu, 27 Aug 92 13:00:44 PDT
Message-Id: <9208272000.AA06497@thalidomide.lucid>
X-Windows: It could be worse, but it'll take time.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: Garr Lystad <lystad@m2.dseg.ti.com>
Cc: help-lucid-emacs@lucid.com
Subject: Re: retained state from byte compile
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Garr Lystad's message of Thu 27-Aug-92 18:08:52 GMT <LYSTAD.92Aug27120852@m2.dseg.ti.com>
References: <LYSTAD.92Aug27120852@m2.dseg.ti.com>

In message <LYSTAD.92Aug27120852@m2.dseg.ti.com> Garr Lystad wrote:
>
> I wrote a little advise macro when I first started using Epoch.  
> One of my files advises an lemacs function (call it x) and the advice
> calls a function I define in the same file (call this function of mine
> y).  If I do not load or evaluate any part of the file, but I do byte
> compile it, the advice on x remains and I get an error because y is
> undefined.  That shouldn't really be, should it?

It sounds to me like your adviser is a macro, and it is doing its work
in the macroexpander function rather than in the emitted code.  This is
a no-no.  It worked with the old byte compiler because it simply didn't
compile top-level calls to macros.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Thu Aug 27 13:05:28 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA11390; Thu, 27 Aug 92 13:05:28 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA02677g; Thu, 27 Aug 92 12:56:16 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA24057; Thu, 27 Aug 92 16:06:50 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA24053; Thu, 27 Aug 92 16:06:49 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!nestroy!news-mail-gateway
From: jwz@lucid.com (Jamie Zawinski)
Subject: Re: retained state from byte compile
Message-Id: <9208272000.AA06497@thalidomide.lucid>
Organization: WU Mail/News Gateway
References: <LYSTAD.92Aug27120852@m2.dseg.ti.com>
Date: Thu, 27 Aug 1992 20:00:44 GMT
Lines: 15
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In message <LYSTAD.92Aug27120852@m2.dseg.ti.com> Garr Lystad wrote:
>
> I wrote a little advise macro when I first started using Epoch.  
> One of my files advises an lemacs function (call it x) and the advice
> calls a function I define in the same file (call this function of mine
> y).  If I do not load or evaluate any part of the file, but I do byte
> compile it, the advice on x remains and I get an error because y is
> undefined.  That shouldn't really be, should it?

It sounds to me like your adviser is a macro, and it is doing its work
in the macroexpander function rather than in the emitted code.  This is
a no-no.  It worked with the old byte compiler because it simply didn't
compile top-level calls to macros.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Thu Aug 27 13:31:22 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA11486; Thu, 27 Aug 92 13:31:22 PDT
Received: by heavens-gate.lucid.com id AA02782g; Thu, 27 Aug 92 13:22:09 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA02769g; Thu, 27 Aug 92 13:20:53 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA06576; Thu, 27 Aug 92 13:30:17 PDT
Date: Thu, 27 Aug 92 13:30:17 PDT
Message-Id: <9208272030.AA06576@thalidomide.lucid>
X-Windows: Warn your friends about it.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: Garr Lystad <lystad@m2.dseg.ti.com>
Cc: help-lucid-emacs@lucid.com
Subject: Re: Mouse enhancements for buffer-menu mode
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Garr Lystad's message of Thu 27-Aug-92 15:04:46 GMT <LYSTAD.92Aug27090446@m2.dseg.ti.com>
References: <1992Aug26.165853.22947@kocrsv01.delcoelect.com>
	<LYSTAD.92Aug27090446@m2.dseg.ti.com>

We have been trying to stay consistent with the following guidelines:

	button1 moves point
	button2 "selects" or "opens"
	button3 pops up a menu of all your choices

It would be good if others could try to be consistent with this as well,
because otherwise nobody will ever know what their mouse is likely to do
from one mode to another.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Thu Aug 27 13:33:31 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA11493; Thu, 27 Aug 92 13:33:31 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA02785g; Thu, 27 Aug 92 13:24:10 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA25733; Thu, 27 Aug 92 16:34:58 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA25729; Thu, 27 Aug 92 16:34:57 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!nestroy!news-mail-gateway
From: jwz@lucid.com (Jamie Zawinski)
Subject: Re: Mouse enhancements for buffer-menu mode
Message-Id: <9208272030.AA06576@thalidomide.lucid>
Organization: WU Mail/News Gateway
References: <LYSTAD.92Aug27090446@m2.dseg.ti.com>
Date: Thu, 27 Aug 1992 20:30:17 GMT
Lines: 11
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

We have been trying to stay consistent with the following guidelines:

	button1 moves point
	button2 "selects" or "opens"
	button3 pops up a menu of all your choices

It would be good if others could try to be consistent with this as well,
because otherwise nobody will ever know what their mouse is likely to do
from one mode to another.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Thu Aug 27 14:37:26 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA11683; Thu, 27 Aug 92 14:37:26 PDT
Received: by heavens-gate.lucid.com id AA02995g; Thu, 27 Aug 92 14:26:37 PDT
Received: from motgate.mot.com by heavens-gate.lucid.com id AA02981g; Thu, 27 Aug 92 14:24:48 PDT
Received: from pts1.pts.mot.com ([145.4.3.2]) by pobox.mot.com (4.1/SMI-4.0)
	id AA21855; Thu, 27 Aug 92 16:33:48 CDT
Received: from pts5.pts.mot.com ([192.8.210.19]) by pts1.pts.mot.com (4.1/SMI-4.1)
	id AA13148; Thu, 27 Aug 92 17:24:29 EDT
Received: by pts5.pts.mot.com ( 5.52 (84)/SMI-4.1)
	id AA03116; Thu, 27 Aug 92 17:31:08 EDT
Date: Thu, 27 Aug 92 17:31:08 EDT
From: weiner@pts.mot.com (Bob Weiner)
Message-Id: <9208272131.AA03116@pts5.pts.mot.com>
To: help-lucid-emacs@lucid.com
In-Reply-To: Jamie Zawinski's message of Thu, 27 Aug 92 13:30:17 PDT <9208272030.AA06576@thalidomide.lucid>
Subject: Re: Mouse enhancements for buffer-menu mode
Reply-To: bob_weiner@pts.mot.com

<jwZ@lucid.com> writes:
   We have been trying to stay consistent with the following guidelines:
	   button1 moves point
	   button2 "selects" or "opens"
	   button3 pops up a menu of all your choices
   It would be good if others could try to be consistent with this as well,
   because otherwise nobody will ever know what their mouse is likely to do
   from one mode to another.

Well, as I mentioned before on this list, Hyperbole already provides
mouse handling for many modes.  I believe it pre-dates Lucid Emacs and
runs across all GNU Emacs version and window systems, so people should
try to stay compatible with it.  It is also pretty easy to configure
to your needs.  The basics are:

	   button1 moves point
	   button2 (primary smart key) acts on items (can also pop up a menu)
	   button3 (secondary smart key) provides help or does the inverse of button2

For example, a button2 click at the end of a line scrolls forward a page
and a button3 click scrolls backward.

I'll mail out the updates to make Hyperbole work with Lucid Emacs today.
In the mean time, here's the complete help summary (also provided by button3)
of what the smart keys do, so that people DO know what their keys do:

==============================================================================
Context                                     Smart Key
                                Primary                    Secondary
==============================================================================
Hyperbole
  On a menu item                Item is activated          Item help
  On an explicit button         Button is activated        Button help
  Reading argument
    1st press at an arg value   Value copied to minibuffer <- same
    2nd press at an arg value   Value used as argument     <- same
    In minibuffer               Minibuf arg is applied     Completion help
  On an implicit button         Button is activated        Button help
  Wrolo Match Buffer            Toggles narrow to one entry and edits entries

Screen Control
  Line end, not end of buffer   Scrolls up a windowful     Scrolls down
  End of Any Help buffer        Screen restored to previous state

Special Modes
  C Mode                        Jumps to id def            Jumps to next def
  Any Lisp mode                 Jumps to id def            Jumps to next def
  Occur match                   Jumps to match source line <- same
  Multi-buffer occur match      Jumps to match source line <- same
  Outline Major/Minor Modes     Collapses, expands, and moves outline entries
  Man Apropos                   Displays man page entry    <- same
  Man Pages                     Follows cross refs, file refs and C code refs
  Buffer Menu                   Saves, deletes and displays buffers

Emacs Info Reader
  Menu Entry or Cross Ref       Jumps to referent          <- same
  Up, Next or Prev Header       Jumps to referent          Jumps to prior node
  File entry of Header          Jumps to top node          Jumps to (DIR) node
  End of current node           Jumps to next node         Jumps to prev node
  Anywhere else                 Scrolls up a windowful     Scrolls down a wind

Subsystems
  Calendar                      Scrolls or shows appts  Scrolls or marks dates
  Dired Mode                    Views and deletes files from directory listing
  GNUS News Reader              Toggles group subscriptions, gets new news,
                                  and browses articles
  Mail reader and Summaries     Browses, deletes and expunges messages

Any other context (defaults)    Hyperbole top menu      Smart Key summary
==============================================================================


From help-lucid-emacs-request@lucid.com  Thu Aug 27 15:14:25 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA11813; Thu, 27 Aug 92 15:14:25 PDT
Received: by heavens-gate.lucid.com id AA03152g; Thu, 27 Aug 92 15:05:11 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA03148g; Thu, 27 Aug 92 15:03:32 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA06890; Thu, 27 Aug 92 15:12:58 PDT
Date: Thu, 27 Aug 92 15:12:58 PDT
Message-Id: <9208272212.AA06890@thalidomide.lucid>
X-Windows: Live the nightmare.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: bob_weiner@pts.mot.com
Cc: help-lucid-emacs@lucid.com
Subject: Re: Mouse enhancements for buffer-menu mode
In-Reply-To: Bob Weiner's message of Thu 27-Aug-92 17:31:08 EDT <9208272131.AA03116@pts5.pts.mot.com>
References: <9208272030.AA06576@thalidomide.lucid>
	<9208272131.AA03116@pts5.pts.mot.com>

In message <9208272131.AA03116@pts5.pts.mot.com> Bob Weiner wrote:
>
> Hyperbole already provides mouse handling for many modes.  I believe it
> pre-dates Lucid Emacs and runs across all GNU Emacs version and window
> systems, so people should try to stay compatible with it.
> 
> 	   button1 moves point
> 	   button2 (primary smart key) acts on items (can also pop up a menu)
> 	   button3 (secondary smart key) provides help or does the inverse of button2

Well I hear the sound of dead horses being beaten, but I feel compelled to
mention that "right button = popup menu" is the standard in Motif, OpenLook,
NeXTStep, and the Lisp Machine OS.

	-- Jamie


From help-lucid-emacs-request@lucid.com  Thu Aug 27 15:27:56 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA11844; Thu, 27 Aug 92 15:27:56 PDT
Received: by heavens-gate.lucid.com id AA03202g; Thu, 27 Aug 92 15:18:14 PDT
Received: from motgate.mot.com by heavens-gate.lucid.com id AA03195g; Thu, 27 Aug 92 15:15:46 PDT
Received: from pts1.pts.mot.com ([145.4.3.2]) by pobox.mot.com (4.1/SMI-4.0)
	id AA23657; Thu, 27 Aug 92 17:24:29 CDT
Received: from pts4.pts.mot.com by pts1.pts.mot.com (4.1/SMI-4.1)
	id AA13371; Thu, 27 Aug 92 18:15:09 EDT
Received: from msn25.motorola by pts4.pts.mot.com (4.1/SMI-4.1)
	id AA19956; Thu, 27 Aug 92 18:27:24 EDT
Date: Thu, 27 Aug 92 18:27:23 EDT
From: ex594bw@pts.mot.com (Bob Weiner)
Message-Id: <9208272227.AA19956@pts4.pts.mot.com>
Received: by msn25.motorola (4.1/SMI-4.1)
	id AA01252; Thu, 27 Aug 92 18:26:34 EDT
To: hyperbole@cs.brown.edu, help-lucid-emacs@lucid.com
Subject: Code and installation instructions for Hyperbole Lucid Emacs support.
Reply-To: hyperbole@pts.mot.com

Read the contents of the first file included below, LEMACS-INSTALL.
If you don't know what Lucid Emacs is or you don't use it,
just ignore this message.

#!/bin/sh
# This is a shell archive (produced by shar 3.49)
# To extract the files from this archive, save it to a file, remove
# everything above the "!/bin/sh" line above, and type "sh file_name".
#
# made 08/27/1992 22:22 UTC by ex594bw@msn25
# Source directory /tmp_mnt/home/apl_ind/research/info/hypb
#
# existing files will NOT be overwritten unless -c is specified
#
# This shar contains:
# length  mode       name
# ------ ---------- ------------------------------------------
#   1316 -rw-r--r-- LEMACS-INSTALL
#   3372 -rw-r--r-- MANIFEST
#  16661 -rw-r--r-- hui-le-but.el
#   6326 -rw-r--r-- hinit.el
#  11171 -rw-r--r-- hmouse-key.el
#  13603 -rw-r--r-- hui-menus.el
#   7288 -rw-r--r-- hsite-ex.el
#
# ============= LEMACS-INSTALL ==============
if test -f 'LEMACS-INSTALL' -a X"$1" != X"-c"; then
	echo 'x - skipping LEMACS-INSTALL (File already exists)'
else
echo 'x - extracting LEMACS-INSTALL (Text)'
sed 's/^X//' << 'SHAR_EOF' > 'LEMACS-INSTALL' &&
To: hyperbole@cs.brown.edu, help-lucid-emacs@lucid.com
Subject: Code and installation instructions for Hyperbole Lucid Emacs support.
Reply-to: hyperbole@cs.brown.edu
X
If you don't know what Lucid Emacs is or you don't use it,
just ignore this message.
X
If you don't know what Hyperbole is or don't have a copy,
see the README file or get the compressed, tarred archive
from:
X
X	"/wilma.cs.brown.edu:pub/hyperbole"
X
The Lucid Emacs support provides highlighting and flashing of
Hyperbole buttons, smart key mouse control (as explained in a prior message),
and event-based key handling.  This code will be included as a
standard part of the next Hyperbole release, whenever that is.
X
To install it, first get a Hyperbole distribution (V3.04 would be
best) and unpack it or use your current version, then OVERWRITE the
files from the distribution with those included in this message (2 of
the files included here did not exist in prior Hyperbole
distributions: LEMACS-INSTALL and hui-le-but.el),
X
Then follow the site-specific configuration instructions in the README
file, use {C-u M-x byte-recompile-directory RTN} to byte-compile the
files from this posting which does not include .elc files and finally
load it for use.
X
Send all replies concerning Hyperbole to the hyperbole mail list
given in the Reply-to above.
SHAR_EOF
chmod 0644 LEMACS-INSTALL ||
echo 'restore of LEMACS-INSTALL failed'
Wc_c="`wc -c < 'LEMACS-INSTALL'`"
test 1316 -eq "$Wc_c" ||
	echo 'LEMACS-INSTALL: original size 1316, current size' "$Wc_c"
fi
# ============= MANIFEST ==============
if test -f 'MANIFEST' -a X"$1" != X"-c"; then
	echo 'x - skipping MANIFEST (File already exists)'
else
echo 'x - extracting MANIFEST (Text)'
sed 's/^X//' << 'SHAR_EOF' > 'MANIFEST' &&
--- INTRODUCTION ---
DEMO            - Demonstration of basic Hyperbole button capabilities.
README          - Intro information on Hyperbole.  
REDISTRIB       - Optional info on redistributing Hyperbole. 
ChangeLog       - Summary of changes in recent Hyperbole releases.
X
--- DOCUMENTATION ---
hypb.info       - The Hyperbole Manual  (online version, top-level).
hypb.info-N     - The Hyperbole Manual  (online version, subpart N).
hypb.ps         - The Hyperbole Manual  (Postscript form).
hypb.texinfo    - The Hyperbole Manual  (source form).
hmouse-doc      - Summarizes Smart Key behaviors in different contexts.
X
--- SYSTEM ---
hact.el         - Hyperbole button action handling.
hactypes.el     - Default action types for Hyperbole.
hargs.el        - Obtains user input through Emacs for Hyperbole.
hbdata.el       - Hyperbole button attribute accessor methods.
hbmap.el        - Hyperbole button map maintenance for queries and lookups.
hbut.el         - Hyperbole button constructs.
hhist.el        - Maintains history of Hyperbole buttons selected.
hibtypes.el     - Hyperbole System Implicit Button Types.
hib-kbd.el      - Implicit button type for key sequences delimited with {}.
hinit.el        - Standard initializations for Hyperbole hypertext system.
hlvar.el        - Permits use of Hyperbole variables in local variable lists.
hmoccur.el      - Multi-buffer or multi-file regexp occurrence location.
hpath.el        - Hyperbole support routines for handling UNIX paths.  
hsite-ex.el     - Site-specific setup template for Hyperbole.
htz.el          - Timezone-based time and date support for Hyperbole.
hypb.el         - Miscellaneous Hyperbole support features.
set.el          - Provide general mathematical operators on unordered sets.
X
--- MAIL SUPPORT ---
hmail.el        - Support for Hyperbole buttons embedded in e-mail messages.
hmh.el          - Support for Hyperbole buttons in mail reader:   Mh.
hrmail.el       - Support for Hyperbole buttons in mail reader:   Rmail.
hsmail.el       - Support for Hyperbole buttons in mail composer: mail.
hvm.el          - Support for Hyperbole buttons in mail reader:  {Vm.
g#
--- USENET NEWS SUPPORT ---
hgnus.el        - Support Hyperbole buttons in news reader/poster: Gnus.
X
--- ROLODEX SUPPORT ---
wrolo.el        - Hierarchical, multi-file rolodex system
wrolo-logic.el  - Performs logical retrievals on rolodex files
Also a portion of hui-menus.el.
X
--- USER INTERFACE ---
hmous-info.el   - Walks through Info networks using one key.
hmouse-drv.el   - Smart Key/Mouse driver functions.
hmouse-key.el   - Key bindings for Hyperbole mouse control.
hmouse-tag.el   - Smart Key support of programming language tags location.
hui-ep-but.el   - Shared support for highlighting/flashing buttons under Epoch.
hui-epV3-b.el   - Epoch V3-specific button support.
hui-epV4-b.el   - Epoch V4-specific button support.
hui-le-but.el   - Lucid Emacs button highlighting and flashing support.
hui-menus.el    - One line command menus for Hyperbole.
hui-mouse.el    - Use key or mouse key for many functions, e.g. Hypb menus.
hui.el          - GNU Emacs User Interface to Hyperbole.
X
--- SYSTEM ENCAPSULATIONS ---
hsys-hbase.el   - Hyperbole support for the Hyperbase system.
hsys-wais.el    - Hyperbole support for WAIS browsing.
hsys-www.el     - Hyperbole support for WorldWide Web (WWW) document browsing.
SHAR_EOF
chmod 0644 MANIFEST ||
echo 'restore of MANIFEST failed'
Wc_c="`wc -c < 'MANIFEST'`"
test 3372 -eq "$Wc_c" ||
	echo 'MANIFEST: original size 3372, current size' "$Wc_c"
fi
# ============= hui-le-but.el ==============
if test -f 'hui-le-but.el' -a X"$1" != X"-c"; then
	echo 'x - skipping hui-le-but.el (File already exists)'
else
echo 'x - extracting hui-le-but.el (Text)'
sed 's/^X//' << 'SHAR_EOF' > 'hui-le-but.el' &&
;;!emacs
;; $Id: 
;;
;; FILE:         hui-le-but.el
;; SUMMARY:      Lucid Emacs button highlighting and flashing support.
;; USAGE:        Lucid Emacs Lisp Library
;;
;; AUTHOR:       Bob Weiner
;; ORG:          Brown U.
;;
;; ORIG-DATE:    21-Aug-92
;; LAST-MOD:     26-Aug-92 at 22:53:35 by Bob Weiner
;;
;; This file is part of Hyperbole.
;; It is for use with Lucid Emacs, a modified version of GNU Emacs V19.
;;
;; Copyright (C) 1992  Brown University
;; Developed with support from Motorola Inc.
;; Available for use and distribution under the same terms as GNU Emacs.
;;
;; DESCRIPTION:  
;;
;;   This is truly prototype code.
;;
;;   Can't use read-only buttons here because then outline-mode
;;   becomes unusable.
;;
;; DESCRIP-END.
X
(if (not hyperb:lemacs-p)
X    (error "(hui-le-but.el): Load only under Lucid Emacs."))
X
;;; ************************************************************************
;;; Other required Elisp libraries
;;; ************************************************************************
X
(require 'hbut)
X
(defun le:background ()
X  "Returns default background color for current screen."
X  (face-background (get-face 'default)))
X
(defun le:foreground ()
X  "Returns default foreground color for current screen."
X  (face-foreground (get-face 'default)))
X
;;; ************************************************************************
;;; Public variables
;;; ************************************************************************
X
(defvar le:item-highlight-color (le:foreground)
X  "Color with which to highlight list/menu selections.
Call (ep:set-item-highlight <color>) to change value.")
X
;;; ************************************************************************
;;; Public functions
;;; ************************************************************************
X
(fset 'ep:but-add 'le:but-add)
X
(defun le:but-color ()
X  "Return current color of buffer's buttons."
X  (if le:color-ptr
X      (car le:color-ptr)
X    (le:foreground)))
X
(defun ep:but-create (&optional start-delim end-delim regexp-match)
X  "Mark all hyper-buttons in buffer as Lucid Emacs extents.
Will use optional strings START-DELIM and END-DELIM instead of default values.
If END-DELIM is a symbol, e.g. t, then START-DELIM is taken as a regular
expression which matches an entire button string.
If REGEXP-MATCH is non-nil, only buttons matching this argument are
highlighted."
X  (interactive)
X  (le:but-clear)
X  (le:but-create-all start-delim end-delim regexp-match))
X
(fset 'le:but-create 'ep:but-create)
X
(defun le:but-clear ()
X  "Delete all Hyperbole buttons from current buffer."
X  (interactive)
X  ;; Should only delete an extent if it uses 'hbut face,
X  ;; but V19.2 has no operator to get the face of an extent.
X  (map-extents '(lambda (extent unused-arg) (delete-extent extent)))
X  )
X
(defun le:but-create-all (&optional start-delim end-delim regexp-match)
X  "Mark all hyper-buttons in buffer as Epoch buttons, for later highlighting.
Will use optional strings START-DELIM and END-DELIM instead of default values.
If END-DELIM is a symbol, e.g. t, then START-DELIM is taken as a regular
expression which matches an entire button string.
If REGEXP-MATCH is non-nil, only buttons matching this argument are
highlighted."
X  (ebut:map '(lambda (lbl start end) (le:but-add start end le:but-face))
X	    start-delim end-delim regexp-match 'include-delims))
X	       
(defun ep:but-delete (&optional pos)
X  (delete-extent (extent-at (or pos (point)))))
X
;;; ************************************************************************
;;; Private functions
;;; ************************************************************************
X
(defun le:but-add (start end face)
X  "Add between START and END a button using FACE in current buffer."
X  (set-extent-face (make-extent start end) face)
X  )
X
(defmacro le:list-cycle (list-ptr list)
X  "Move LIST-PTR to next element in LIST or when at end to first element."
X  (` (or (and (, list-ptr)
X	      (setq (, list-ptr) (cdr (, list-ptr))))
X	 (setq (, list-ptr) (, list)))))
X
;;; ************************************************************************
;;; Private variables
;;; ************************************************************************
X
(defconst le:color-list '( "red" "blue" "paleturquoise4" "mediumpurple2"
"lightskyblue3" "springgreen2" "salmon" "yellowgreen" "darkorchid2"
"aquamarine4" "slateblue4" "slateblue1" "olivedrab1" "goldenrod4"
"goldenrod3" "cadetblue2" "burlywood1" "slategrey" "mistyrose"
"limegreen" "lightcyan" "goldenrod" "gainsboro" "skyblue1" "honeydew"
"yellow2" "tomato3" "skyblue" "purple4" "orange3" "bisque3" "bisque2"
"grey34" "gray99" "gray63" "gray44" "gray37" "gray33" "gray26" "azure1"
"snow4" "peru" "red" "lightgoldenrod4" "mediumseagreen" "blush"
"mediumorchid2" "lightskyblue1" "darkslateblue" "midnightblue"
"lightsalmon1" "lemonchiffon" "yellow" "lightsalmon" "coral"
"dodgerblue3" "darkorange4" "blue" "royalblue4" "red" "green" "cyan"
"darkviolet" "darksalmon" "darkorange" "blue" "pink" "magenta2"
"sienna4" "khaki2" "grey75" "grey74" "grey73" "grey69" "grey68" "grey35"
"grey13" "gray90" "gray81" "gray55" "gray51" "gray31" "snow2" "pink3"
"grey7" "gray1" "red4" "red3" "tan" "red" "yellow" "mediumvioletred"
"lightslategrey" "lavenderblush4" "turquoise" "darkturquoise"
"darkslategrey" "lightskyblue" "lightsalmon4" "lightsalmon3"
"forestgreen" "dodgerblue4" "orchid" "rosybrown4" "brown" "peachpuff3"
"palegreen3" "orangered2" "rose" "lightcyan4" "indianred4" "indianred3"
"seagreen2" "indianred" "deeppink1" "navyblue" "lavender" "grey"
"deeppink" "salmon4" "salmon3" "oldlace" "grey78" "grey77" "grey54"
"grey45" "grey21" "gray97" "gray96" "gray95" "gray88" "gray87" "gray86"
"gray70" "gray57" "gray38" "gray12" "gray11" "plum3" "linen" "gray9"
"gray8" "blue4" "beige" "turquoise" "blue" "lemonchiffon4"
"darkseagreen1" "antiquewhite3" "mediumorchid" "springgreen"
"turquoise4" "steelblue3" "mistyrose2" "lightcyan2" "red" "firebrick2"
"royalblue" "cadetblue" "skyblue3" "yellow3" "salmon1" "orange4"
"hotpink" "grey90" "gray56" "gray39" "gray18" "gray14" "plum4" "grey6"
"gray6" "gold3" "gold1" "blue2" "tan2" "cyan" "mediumspringgreen"
"darkolivegreen2" "goldenrod" "lightsteelblue" "brown" "whip"
"chartreuse3" "violetred4" "royalblue2" "royalblue1" "papayawhip"
"mistyrose3" "lightcyan1" "aquamarine" "skyblue4" "hotpink4" "hotpink3"
"hotpink2" "dimgray" "tomato" "grey66" "grey65" "grey64" "grey33"
"grey27" "gray76" "gray69" "gray68" "grey0" "azure" "green"
"darkgoldenrod4" "darkgoldenrod3" "darkgoldenrod2" "darkgoldenrod"
"brown" "lightsalmon2" "deepskyblue4" "deepskyblue3" "deepskyblue2"
"deepskyblue" "darkorange1" "violetred3" "violetred2" "violetred1"
"slateblue3" "slateblue2" "drab" "indianred1" "firebrick1" "cadetblue4"
"violetred" "rosybrown" "blue" "firebrick" "grey100" "wheat4" "grey79"
"grey76" "grey61" "gray93" "gray84" "gray65" "gray36" "gray32" "gray13"
"gray10" "azure3" "snow1" "tan1" "gray" "darkolivegreen1" "blue"
"almond" "lavenderblush3" "lavenderblush2" "lavenderblush1"
"darkolivegreen" "lavenderblush" "aquamarine2" "red" "olivedrab2"
"mistyrose4" "mistyrose1" "lightcyan3" "lightcoral" "chartreuse"
"peachpuff" "palegreen" "mintcream" "skyblue2" "moccasin" "tomato1"
"orchid3" "maroon3" "salmon" "grey81" "grey62" "grey39" "grey38"
"grey37" "gray92" "gray83" "gray66" "gray54" "gray50" "gray30" "gray19"
"gray15" "azure4" "grey3" "tan3" "pink" "gray" "blue" "lightsteelblue2"
"lightsteelblue1" "green" "lightslategray" "lemonchiffon2"
"springgreen1" "greenyellow" "chartreuse2" "grey" "royalblue3"
"powderblue" "peachpuff2" "palegreen2" "cream" "slateblue" "seashell2"
"deeppink2" "darkkhaki" "maroon4" "sienna" "grey71" "grey67" "grey18"
"gray59" "gray43" "gray25" "bisque" "red1" "mediumslateblue"
"lightgoldenrod1" "goldenrod" "paleturquoise3" "lightskyblue4" "green"
"yellow" "smoke" "blue" "white" "steelblue4" "rosybrown3" "peachpuff1"
"palegreen1" "blueviolet" "seashell4" "sienna3" "grey40" "gray91"
"gray82" "gray5" "cyan2" "cyan1" "blue1" "snow" "lightgoldenrod2"
"lightslateblue" "mediumorchid3" "darkseagreen4" "springgreen3" "green"
"slategray4" "slategray3" "slategray2" "blue" "peachpuff4" "palegreen4"
"green" "orangered3" "goldenrod1" "ghostwhite" "firebrick4" "firebrick3"
"cadetblue3" "slategray" "seashell3" "honeydew3" "cornsilk4" "cornsilk2"
"purple1" "dimgrey" "khaki1" "ivory3" "grey70" "grey60" "grey32"
"grey22" "grey12" "gray98" "gray89" "gray71" "gray64" "gray60" "gray49"
"azure2" "gray3" "paleturquoise1" "mediumpurple1" "purple"
"lemonchiffon1" "blue" "navajowhite3" "darkorchid1" "orange"
"goldenrod2" "khaki" "chocolate2" "burlywood2" "honeydew1" "darkgreen"
"thistle3" "thistle2" "thistle1" "thistle" "maroon2" "maroon1" "grey53"
"grey44" "grey25" "gray74" "gray45" "gray41" "gray35" "gray27" "gray23"
"gray16" "brown4" "wheat" "coral" "tan4" "lightgoldenrodyellow" "blue"
"green" "gray" "palevioletred3" "mediumpurple4" "mediumpurple3"
"saddlebrown" "blue" "darkorchid4" "darkorchid3" "puff" "olivedrab4"
"lightblue4" "lightpink" "lightgray" "honeydew2" "cornsilk1" "lace"
"sienna1" "bisque4" "orchid" "khaki3" "grey84" "grey83" "grey82"
"grey72" "grey52" "grey43" "grey26" "grey14" "grey10" "gray75" "gray53"
"gray21" "gray20" "brown3" "grey8" "red2" "navy" "grey" "gold"
"mediumaquamarine" "lightgoldenrod" "darkslategray4" "darkseagreen3"
"darkseagreen2" "antiquewhite4" "white" "springgreen4" "lightyellow4"
"white" "aquamarine1" "turquoise3" "steelblue2" "rosybrown2" "pink"
"gray" "indianred2" "dodgerblue" "green" "seagreen1" "deeppink4"
"aliceblue" "magenta1" "pink" "sienna2" "orchid1" "gray100" "grey97"
"grey94" "grey87" "grey86" "grey51" "grey42" "grey19" "gray94" "gray85"
"gray61" "brown2" "khaki" "grey1" "gold4" "blue" "green" "grey"
"turquoise" "paleturquoise" "mediumorchid4" "antiquewhite2"
"lightyellow2" "violet" "salmon" "chartreuse1" "turquoise1" "sandybrown"
"orangered1" "lightpink1" "lightblue2" "lightblue1" "grey" "seagreen4"
"seagreen3" "lightblue" "deeppink3" "burlywood" "seashell" "hotpink1"
"gray" "yellow4" "yellow" "purple" "orange" "ivory4" "grey99" "grey89"
"grey63" "grey58" "grey49" "grey31" "grey24" "grey20" "green4" "green1"
"gray73" "gray67" "coral3" "coral2" "plum2" "pink4" "ivory" "gray4"
"gray2" "gold2" "aquamarine" "grey" "lightgoldenrod3" "darkolivegreen3"
"darkgoldenrod1" "goldenrod" "orchid" "chiffon" "navajowhite4"
"deepskyblue1" "lightyellow" "floralwhite" "blue" "mediumblue"
"chocolate4" "chocolate3" "burlywood4" "turquoise" "steelblue" "green"
"lawngreen" "honeydew4" "seagreen" "orchid4" "wheat1" "violet" "ivory1"
"grey88" "grey85" "grey57" "grey56" "grey55" "grey48" "grey47" "grey46"
"grey30" "grey17" "gray47" "gray29" "pink2" "grey5" "grey4" "green"
"gray0" "brown" "lightsteelblue4" "darkolivegreen4" "palevioletred4"
"blue" "darkslategray3" "darkslategray2" "darkslategray1"
"blanchedalmond" "palegoldenrod" "blue" "lightseagreen" "lemonchiffon3"
"darkslategray" "green" "darkseagreen" "antiquewhite" "darkorange2"
"chartreuse4" "blue" "rosybrown1" "olivedrab3" "lightpink2" "orangered"
"thistle4" "blue" "cornsilk" "salmon2" "orchid2" "ivory2" "grey93"
"grey92" "grey91" "grey36" "grey29" "grey28" "grey16" "gray79" "gray78"
"gray77" "gray48" "gray17" "coral4" "coral1" "plum1" "pink1" "grey9"
"grey2" "gray7" "cyan4" "blue3" "plum" "cornflowerblue" "lightskyblue2"
"antiquewhite1" "navajowhite2" "navajowhite1" "lightyellow3"
"navajowhite" "darkorange3" "whitesmoke" "turquoise2" "steelblue1"
"lightpink4" "lightblue3" "green" "chocolate1" "blue" "olivedrab"
"lightgrey" "chocolate" "magenta4" "magenta3" "yellow1" "purple3"
"purple2" "orange2" "orange1" "magenta" "bisque1" "wheat2" "maroon"
"khaki4" "grey96" "grey95" "grey80" "grey50" "grey41" "grey15" "grey11"
"gray80" "gray58" "gray40" "gray34" "gray22" "brown1" "snow3"
"mediumturquoise" "lightsteelblue3" "palevioletred2" "palevioletred1"
"paleturquoise2" "green" "palevioletred" "mediumorchid1" "white"
"mediumpurple" "lightyellow1" "dodgerblue2" "dodgerblue1" "violet"
"aquamarine3" "slategray1" "gray" "orangered4" "lightpink3" "blue"
"darkorchid" "cadetblue1" "burlywood3" "seashell1" "cornsilk3" "tomato4"
"tomato2" "wheat3" "grey98" "grey59" "grey23" "green3" "green2" "gray72"
"gray62" "gray52" "gray46" "gray42" "gray28" "gray24" "white" "cyan3"
"black" ))
X
(defvar le:color-ptr nil
X  "Pointer to current color name table to use for Hyperbole buttons in Lemacs.")
X
(defconst le:good-colors
X  '(
X    "medium violet red" "indianred4" "firebrick1" "DarkGoldenrod" "NavyBlue"
X    "darkorchid" "tomato3" "mediumseagreen" "deeppink" "forestgreen"
X    "mistyrose4" "slategrey" "purple4" "dodgerblue3" "mediumvioletred"
X    "lightsalmon3" "orangered2" "turquoise4" "Gray55"
X    )
X  "Good colors for contrast against wheat background and black foreground.")
X
X
;;; ************************************************************************
;;; Public functions
;;; ************************************************************************
X
(defun le:cycle-but-color (&optional color)
X  "Switches button color to optional COLOR name or next item referenced by le:color-ptr."
X  (interactive "sHyperbole button color: ")
X  (if (not (x-color-display-p))
X      nil
X    (if color (setq le:color-ptr nil))
X    (set-face-foreground
X     le:but-face (or color (car (le:list-cycle le:color-ptr le:good-colors))))
X    (set-face-background le:flash-face (le:but-color))
X    (sit-for 0)
X    t))
X
(defun le:but-flash ()
X  "Flash a Hyperbole button at point to indicate selection, when using Epoch."
X  (interactive)
X  (let ((ibut) (prev)
X	(start (hattr:get 'hbut:current 'lbl-start))
X	(end   (hattr:get 'hbut:current 'lbl-end)))
X    (and start end (setq prev (extent-at (point))
X			 ibut t)
X	 (if (not prev) (le:but-add start end le:but-face)))
X    (let* ((b (extent-at (point)))
X	   (a (and (extentp b)
X		   ;; This should be changed to (get-extent-face b) when that
X		   ;; function is available.
X		   le:but-face)))
X      (if a
X	  (progn
X	    (set-extent-face b le:flash-face)
X	    (sit-for 0)  ;; Force display update
X	    ;; Delay before redraw button
X	    (let ((i 0)) (while (< i le:but-flash-time) (setq i (1+ i))))
X	    (set-extent-face b le:but-face)
X	    (sit-for 0)  ;; Force display update
X	    )))
X    (if (and ibut (not prev)) (le:but-delete))
X    ))
X
(defun ep:set-item-highlight (&optional color-name)
X  "Setup or reset item highlight style using optional color-name."
X  (make-local-variable 'le:item-style)
X  (if (stringp color-name) (setq le:item-highlight-color color-name))
X  (if (not le:style_highlight)
X      (progn 
X	(setq le:style_highlight (make-face 'hbut-highlight))
X	(set-face-foreground le:style_highlight (le:background))
X	(set-face-background le:style_highlight le:item-highlight-color)
X	(set-face-underline-p le:style_highlight nil)))
X  (if (not (equal (face-background le:style_highlight)
X		  le:item-highlight-color))
X      (set-face-background le:style_highlight le:item-highlight-color))
X  (setq le:item-style le:style_highlight)
X  )
X
(defun le:select-item (&optional pnt)
X  "Select item in current buffer at optional position PNT using le:item-style."
X  (if le:item-button
X      nil
X    (set-extent-face (setq le:item-button (make-extent (point) (point)))
X		     le:item-style))
X  (if pnt (goto-char pnt))
X  (skip-chars-forward " \t")
X  (skip-chars-backward "^ \t\n")
X  (let ((start (point)))
X    (save-excursion
X      (skip-chars-forward "^ \t\n")
X      (update-extent le:item-button start (point))
X      ))
X  (sit-for 0)  ;; Force display update
X  )
X
(defun ep:select-line (&optional pnt)
X  "Select line in current buffer at optional position PNT using le:item-style."
X  (if le:item-button
X      nil
X    (set-extent-face (setq le:item-button (make-extent (point) (point)))
X		     le:item-style))
X  (if pnt (goto-char pnt))
X  (save-excursion
X    (beginning-of-line)
X    (update-extent le:item-button (point) (progn (end-of-line) (point)))
X    )
X  (sit-for 0)  ;; Force display update
X  )
X
;;; ************************************************************************
;;; Private variables
;;; ************************************************************************
X
(defvar le:but-face (make-face 'hbut) "Face for hyper-buttons.")
(setq ep:but le:but-face)
(defvar le:flash-face (make-face 'hbut-flash) "Style for flashing hyper-buttons.")
(set-face-foreground le:but-face (le:but-color))
(set-face-background le:but-face (le:background))
(set-face-background le:flash-face (le:but-color))
(set-face-foreground le:flash-face (le:foreground))
X
(make-variable-buffer-local 'le:item-button)
(defvar le:item-style nil "Style for item marking.")
(defvar le:style_highlight nil "Highlight style available for item marking.")
X
(provide 'hui-le-but)
SHAR_EOF
chmod 0644 hui-le-but.el ||
echo 'restore of hui-le-but.el failed'
Wc_c="`wc -c < 'hui-le-but.el'`"
test 16661 -eq "$Wc_c" ||
	echo 'hui-le-but.el: original size 16661, current size' "$Wc_c"
fi
# ============= hinit.el ==============
if test -f 'hinit.el' -a X"$1" != X"-c"; then
	echo 'x - skipping hinit.el (File already exists)'
else
echo 'x - extracting hinit.el (Text)'
sed 's/^X//' << 'SHAR_EOF' > 'hinit.el' &&
;;!emacs
;; $Id: hinit.el,v 1.2 1992/05/14 10:11:00 rsw Exp $
;;
;; FILE:         hinit.el
;; SUMMARY:      Standard initializations for Hyperbole hypertext system.
;; USAGE:        GNU Emacs Lisp Library
;;
;; AUTHOR:       Bob Weiner
;; ORG:          Brown U.
;;
;; ORIG-DATE:     1-Oct-91 at 02:32:51
;; LAST-MOD:      3-Mar-92 at 00:23:38 by Bob Weiner
;;
;; This file is part of Hyperbole.
;; 
;; Copyright (C) 1991, Brown University, Providence, RI
;; Developed with support from Motorola Inc.
;; 
;; Permission to use, modify and redistribute this software and its
;; documentation for any purpose other than its incorporation into a
;; commercial product is hereby granted without fee.  A distribution fee
;; may be charged with any redistribution.  Any distribution requires
;; that the above copyright notice appear in all copies, that both that
;; copyright notice and this permission notice appear in supporting
;; documentation, and that neither the name of Brown University nor the
;; author's name be used in advertising or publicity pertaining to
;; distribution of the software without specific, written prior permission.
;; 
;; Brown University makes no representations about the suitability of this
;; software for any purpose.  It is provided "as is" without express or
;; implied warranty.
;;
;;
;; DESCRIPTION:  
;; DESCRIP-END.
X
;;; ************************************************************************
;;; Public variables
;;; ************************************************************************
X
(defconst hyperb:version "3.05P" "Hyperbole revision number.")
X
(defvar   hyperb:host-domain nil
X  "<@domain-name> for current host.  Set automatically by 'hyperb:init'.")
X
;;; ************************************************************************
;;; Required Init functions
;;; ************************************************************************
X
(require 'set)
X
(defun var:append (var-symbol-name list-to-add)
X  "Appends to value held by VAR-SYMBOL-NAME, LIST-TO-ADD.  Returns new value.
If VAR-SYMBOL-NAME is unbound, it is set to LIST-TO-ADD.
Often used to append to 'hook' variables."
X  (let ((val))
X    (if (and (boundp var-symbol-name)
X	     (setq val (symbol-value var-symbol-name))
X	     (or (if (symbolp val) (setq val (cons val nil)))
X		 (listp val)))
X	;; Don't add if list elts are already there.
X	(if (memq nil (mapcar '(lambda (elt) (set:member elt val))
X			      list-to-add))
X	    (set-variable var-symbol-name
X			  (if (eq (car val) 'lambda)
X			      (apply 'list val list-to-add)
X			    (append val list-to-add)))
X	  val)
X      (set-variable var-symbol-name list-to-add))))
X
(defun first-line-p ()
X  "Returns true if point is on the first line of the buffer."
X  (save-excursion (beginning-of-line) (bobp)))
X
(defun last-line-p ()
X  "Returns true if point is on the last line of the buffer."
X  (save-excursion (end-of-line) (eobp)))
X
;;; ************************************************************************
;;; Other required Elisp libraries
;;; ************************************************************************
X
(if (fboundp 'smart-menu)
X    (makunbound 'smart-key-alist))
(mapcar 'require '(hui-mouse hypb hui-menus hbmap hibtypes))
X
;;; Hyperbole msg reader autoloads.
(autoload 'Rmail-init "hrmail" "Initializes Hyperbole Rmail support.")
(autoload 'Mh-init    "hmh"    "Initializes Hyperbole Mh support.")
(autoload 'Vm-init    "hvm"    "Initializes Hyperbole Vm support.")
(autoload 'Pm-init    "hpm"    "Initializes Hyperbole PIEmail support.")
(autoload 'Gnus-init  "hgnus"  "Initializes Hyperbole Gnus support.")
X
;;; ************************************************************************
;;; Public functions
;;; ************************************************************************
X
(defun hyperb:init ()
X  "Standard configuration routine for Hyperbole."
X  (interactive)
X  (run-hooks 'hyperb:init-hook)
X  (hyperb:check-dir-user)
X  (or hyperb:host-domain (setq hyperb:host-domain (hypb:domain-name)))
X  (hyperb:act-set)
X  ;;
X  ;; Highlight explicit buttons whenever a file is read in.
X  ;;
X  (if (or hyperb:epoch-p hyperb:lemacs-p)
X      (var:append 'find-file-hooks '(ep:but-create)))
X  ;;
X  ;; Save button attribute file whenever same dir file is saved and
X  ;; 'ebut:hattr-save' is non-nil.
X  ;;
X  (var:append 'write-file-hooks '(hattr:save))
)
X
(defun hyperb:act-set ()
X  "COORDINATION IS NOT YET OPERATIONAL.  hui-coord.el IS NOT INCLUDED.
Sets Hyperbole action command to uncoordinated or coordinated operation.
Coordinated is used when 'hcoord:hosts' is a non-nil list.
See \"hui-coord.el\"."
X  (interactive)
X  (fset 'hyperb:act (if (and (boundp 'hcoord:hosts) hcoord:hosts)
X		     'hcoord:act 'hbut:act)))
X
(defun hyperb:action-v1 ()
X  "Signals error if Version 1 Hyperbole link button is selected."
X  (error "(hyperb:action-v1): Hyperbole version 1 buttons are not supported."))
X
;;; ************************************************************************
;;; Private functions
;;; ************************************************************************
X
(defun hyperb:check-dir-user ()
X  "Ensures 'hbmap:dir-user' exists and is writable or signals an error."
X  (if (or (null hbmap:dir-user) (not (stringp hbmap:dir-user))
X	  (and (setq hbmap:dir-user (file-name-as-directory
X				     (expand-file-name hbmap:dir-user)))
X	       (file-directory-p hbmap:dir-user)
X	       (not (file-writable-p hbmap:dir-user))))
X      (error
X       "(hyperb:init): 'hbmap:dir-user' must be a writable directory name."))
X  (let ((hbmap:dir-user (directory-file-name hbmap:dir-user)))
X    (or (file-directory-p hbmap:dir-user)   ;; Exists and is writable.
X	(let* ((parent-dir (file-name-directory
X			    (directory-file-name hbmap:dir-user))))
X	  (cond
X	   ((not (file-directory-p parent-dir))
X	    (error
X	     "(hyperb:init): 'hbmap:dir-user' parent dir does not exist."))
X	   ((not (file-writable-p parent-dir))
X	    (error
X	     "(hyperb:init): 'hbmap:dir-user' parent directory not writable."))
X	   ((hypb:call-process-p "mkdir" nil nil hbmap:dir-user)
X	    (or (file-writable-p hbmap:dir-user)
X		(or (progn (hypb:chmod '+ 700 hbmap:dir-user)
X			   (file-writable-p hbmap:dir-user))
X		    (error "(hyperb:init): Can't write to 'hbmap:dir-user'.")
X		    )))
X	   (t (error "(hyperb:init): 'hbmap:dir-user' create failed."))))))
X  t)
X
(provide 'hinit)
X
SHAR_EOF
chmod 0644 hinit.el ||
echo 'restore of hinit.el failed'
Wc_c="`wc -c < 'hinit.el'`"
test 6326 -eq "$Wc_c" ||
	echo 'hinit.el: original size 6326, current size' "$Wc_c"
fi
# ============= hmouse-key.el ==============
if test -f 'hmouse-key.el' -a X"$1" != X"-c"; then
	echo 'x - skipping hmouse-key.el (File already exists)'
else
echo 'x - extracting hmouse-key.el (Text)'
sed 's/^X//' << 'SHAR_EOF' > 'hmouse-key.el' &&
;;!emacs
;; $Id: hmouse-key.el,v 1.2 1992/05/14 10:11:30 rsw Exp $
;;
;; FILE:         hmouse-key.el
;; SUMMARY:      System-dependent key bindings for Hyperbole mouse control.
;; USAGE:        GNU Emacs Lisp Library
;;
;; AUTHOR:       Bob Weiner
;; ORG:          Brown U.
;;
;; ORIG-DATE:     3-Sep-91 at 21:40:58
;; LAST-MOD:      9-Jan-92 at 09:04:27 by Bob Weiner
;;
;; This file is part of Hyperbole.
;; 
;; Copyright (C) 1991, Brown University, Providence, RI
;; Developed with support from Motorola Inc.
;; 
;; Permission to use, modify and redistribute this software and its
;; documentation for any purpose other than its incorporation into a
;; commercial product is hereby granted without fee.  A distribution fee
;; may be charged with any redistribution.  Any distribution requires
;; that the above copyright notice appear in all copies, that both that
;; copyright notice and this permission notice appear in supporting
;; documentation, and that neither the name of Brown University nor the
;; author's name be used in advertising or publicity pertaining to
;; distribution of the software without specific, written prior permission.
;; 
;; Brown University makes no representations about the suitability of this
;; software for any purpose.  It is provided "as is" without express or
;; implied warranty.
;;
;;
;; DESCRIPTION:  
;;
;;   Supports Epoch, Lucid Emacs, X, Sunview, NeXTstep, and Apollo DM
;;   window systems.
;;
;;   'sm-mouse-setup' globally binds middle and right mouse buttons as
;;   primary and secondary Smart Keys respectively.
;;
;;   'sm-mouse-toggle-bindings' may be bound to a key.  It switches between
;;   Smart Key mouse bindings and previous mouse key bindings any time
;;   after 'sm-mouse-setup' has been called.
;;
;; DESCRIP-END.
X
;;; ************************************************************************
;;; Required Elisp Libraries
;;; ************************************************************************
X
(defun sm-window-sys-term ()
X  "Returns the first part of the term-type if running under a window system, else nil.
Where a part in the term-type is delimited by a '-' or  an '_'."
X  (let ((term (cond (hyperb:epoch-p "epoch")
X		    (hyperb:lemacs-p "lemacs")
X		    ((eq window-system 'x) "xterm")
X		    ((or window-system 
X			 (featurep 'mouse)     (featurep 'x-mouse)
X			 (featurep 'sun-mouse) (featurep 'apollo)
X			 (featurep 'eterm-mouse))
X		     (getenv "TERM")))))
X    (and term
X	 (substring term 0 (string-match "[-_]" term)))))
X
(let ((wsys (sm-window-sys-term)))
X  (cond
X   ;; Epoch
X   ((equal wsys "epoch")   (require 'mouse))
X   ;; Lucid Emacs
X   ((equal wsys "lemacs")  (require 'x-mouse))
X   ;; X
X   ((equal wsys "xterm")   (require 'x-mouse))
X   ;; SunView
X   ((equal wsys "sun")     (require 'sun-fns))
X   ;; NeXT
X   ((equal wsys "next")    (require 'eterm-mouse))
X   ;; Apollo
X   ((equal wsys "apollo")  (require 'apollo))
X   ))
X
;;; ************************************************************************
;;; Public functions
;;; ************************************************************************
X
(defun sm-mouse-get-bindings ()
X  "Returns list of bindings for mouse keys prior to their use as Smart Keys."
X  (let ((wsys (sm-window-sys-term)))
X    (cond
X     ;; Epoch
X     ((equal wsys "epoch")
X      (mapcar '(lambda (key) (cons key (aref mouse::global-map key)))
X	      (list (mouse::index mouse-middle mouse-down)
X		    (mouse::index mouse-middle mouse-up)
X		    (mouse::index mouse-right mouse-down)
X		    (mouse::index mouse-right mouse-up))))
X     ;; Lucid Emacs
X     ((equal wsys "lemacs")
X      (mapcar '(lambda (key) (cons key (lookup-key global-map key)))
X	      '(button2 button2up button3 button3up)))
X     ;; X
X     ((equal wsys "xterm")
X      (mapcar '(lambda (key) (cons key (lookup-key mouse-map key)))
X	      (list x-button-middle x-button-middle-up
X		    x-button-right  x-button-right-up)))
X     ;; SunView or NeXT
X     ((or (equal wsys "sun") (equal wsys "next"))
X      (mapcar '(lambda (key)
X		 (setq key (mouse-list-to-mouse-code key))
X		 (cons key (mousemap-get key current-global-mousemap)))
X	      '((text        middle) (text     up middle)
X		(text         right) (text     up  right))))
X     ;; Apollo Display Manager
X     ((equal wsys "apollo")
X      (mapcar '(lambda (key-str) (apollo-mouse-key-and-binding key-str))
X	      '("M2D" "M2U" "M3D" "M3U")))
X     )))
X
(defun sm-mouse-set-bindings (key-binding-list)
X  "Sets mouse keys used as Smart Keys to bindings in KEY-BINDING-LIST.
KEY-BINDING-LIST is the value returned by 'sm-mouse-get-bindings' prior to
Smart Key setup."
X  (let ((wsys (sm-window-sys-term)))
X    (cond
X     ;; Epoch
X     ((equal wsys "epoch")
X      (mapcar
X       '(lambda (key-and-binding)
X	  (aset mouse::global-map (car key-and-binding)
X		(cdr key-and-binding)))
X       key-binding-list))
X     ;; Lucid Emacs
X     ((equal wsys "lemacs")
X      (mapcar
X       '(lambda (key-and-binding)
X	  (global-set-key (car key-and-binding) (cdr key-and-binding)))
X       key-binding-list))
X     ;; X
X     ((equal wsys "xterm")
X      (mapcar
X       '(lambda (key-and-binding)
X	  (define-key mouse-map (car key-and-binding) (cdr key-and-binding)))
X       key-binding-list))
X     ;; SunView or NeXT
X     ((or (equal wsys "sun") (equal wsys "next"))
X      (mapcar
X       '(lambda (key-and-binding)
X	  (global-set-mouse (car key-and-binding) (cdr key-and-binding)))
X       key-binding-list))
X     ;; Apollo Display Manager
X     ((equal wsys "apollo")
X      (mapcar
X       '(lambda (key-and-binding)
X	  (global-set-key (car key-and-binding) (cdr key-and-binding)))
X       key-binding-list))
X     )))
X
(defun sm-mouse-setup ()
X  "Binds mouse keys for use as Smart Keys."
X  (interactive)
X  (or sm-mouse-bindings-p
X      (setq sm-mouse-previous-bindings (sm-mouse-get-bindings)))
X  (let ((wsys (sm-window-sys-term)))
X    ;; Ensure Gillespie's Info mouse support is off since
X    ;; Hyperbole handles that.
X    (setq Info-mouse-support nil)
X    (cond ((equal wsys "epoch")
X	   (setq mouse-set-point-command 'mouse::set-point)
X	   (global-set-mouse mouse-middle mouse-down  'sm-depress)
X	   (global-set-mouse mouse-middle mouse-up    'smart-key-mouse)
X	   (global-set-mouse mouse-right  mouse-down  'sm-depress-meta)
X	   (global-set-mouse mouse-right  mouse-up    'smart-key-mouse-meta))
X	  ((equal wsys "lemacs")
X	   (setq mouse-set-point-command 'sm-lemacs-move-point)
X	   (global-set-key 'button2     'sm-depress)
X	   (global-set-key 'button2up   'smart-key-mouse)
X	   (global-set-key 'button3     'sm-depress-meta)
X	   (global-set-key 'button3up   'smart-key-mouse-meta))
X	  ((equal wsys "xterm")
X	   (setq mouse-set-point-command 'x-mouse-set-point)
X	   (define-key mouse-map x-button-middle 'sm-depress)
X	   (define-key mouse-map x-button-middle-up 'smart-key-mouse)
X	   (define-key mouse-map x-button-right 'sm-depress-meta)
X	   (define-key mouse-map x-button-right-up 'smart-key-mouse-meta)
X	   ;; Use these instead of the above for a true META-BUTTON binding.
X	   ;; (define-key mouse-map x-button-m-middle 'sm-depress-meta)
X	   ;; (define-key mouse-map x-button-m-middle-up 'smart-key-mouse-meta)
X	   )
X	  ;; SunView or NeXT
X	  ((or (equal wsys "sun") (equal wsys "next"))
X	   (setq mouse-set-point-command 'sm-sun-move-point)
X	   (global-set-mouse '(text        middle) 'sm-depress)
X	   (global-set-mouse '(text     up middle) 'smart-key-mouse)
X	   (global-set-mouse '(text         right) 'sm-depress-meta)
X	   (global-set-mouse '(text     up  right) 'smart-key-mouse-meta)
X	   ;; Use these instead of the above for a true META-BUTTON binding.
X	   ;; (global-set-mouse '(text meta   middle) 'sm-depress-meta)
X	   ;; (global-set-mouse '(text meta up middle) 'smart-key-mouse-meta)
X	   )
X	  ((equal wsys "apollo")
X	   (setq mouse-set-point-command 'apollo-mouse-move-point)
X	   (bind-apollo-mouse-button "M2D" 'sm-depress)
X	   (bind-apollo-mouse-button "M2U" 'smart-key-mouse)
X	   (bind-apollo-mouse-button "M3D" 'sm-depress-meta)
X	   (bind-apollo-mouse-button "M3U" 'smart-key-mouse-meta)
X	   ;; Use these instead of the above for a true META-BUTTON binding.
X	   ;; (bind-apollo-mouse-button "M2U" 'smart-key-mouse
X	   ;;  'smart-key-mouse-meta)
X	   ;; (bind-apollo-mouse-button "M2D" 'sm-depress 'sm-depress-meta)
X	   )))
X  (setq sm-mouse-bindings (sm-mouse-get-bindings)
X	sm-mouse-bindings-p t))
X
(defun sm-mouse-toggle-bindings ()
X  "Toggles between Smart Key mouse settings and their prior bindings."
X  (interactive)
X  (let ((key-binding-list (if sm-mouse-bindings-p
X			      sm-mouse-previous-bindings
X			    sm-mouse-bindings))
X	(other-list-var (if sm-mouse-bindings-p
X			    'sm-mouse-bindings
X			  'sm-mouse-previous-bindings)))
X    (if key-binding-list
X	(progn
X	  (set other-list-var (sm-mouse-get-bindings))
X	  (sm-mouse-set-bindings key-binding-list)
X	  (message "%s mouse bindings in use."
X		   (if (setq sm-mouse-bindings-p (not sm-mouse-bindings-p))
X		       "Smart Key" "Personal")))
X      (error "(sm-mouse-toggle-bindings): Null %s." other-list-var))))
X
;;; ************************************************************************
;;; Private functions
;;; ************************************************************************
X
(if (fboundp 'bind-apollo-mouse-button)
X    (defun apollo-mouse-key-and-binding (mouse-button)
X      "Returns binding for an Apollo MOUSE-BUTTON (a string) or nil if none."
X      (interactive "sMouse Button: ")
X      (let ((numeric-code (cdr (assoc mouse-button *apollo-mouse-buttons*))))
X	(if (null numeric-code)
X	    (error "(hmouse-key): %s is not a valid Apollo mouse key name."
X		   mouse-button))
X	(if (stringp numeric-code)
X	    (setq numeric-code
X		  (cdr (assoc numeric-code *apollo-mouse-buttons*))))
X	(let ((key-sequence (concat "\M-*" (char-to-string numeric-code))))
X	  (cons key-sequence (global-key-binding key-sequence))))))
X
(defun sm-depress (&rest args)
X  (interactive)
X  (and (car args) (listp (car args)) (setq args (car args)))
X  (smart-key-set-point args)
X  (setq *smart-key-depressed* args
X	*smart-key-window* (selected-window)
X	*smart-key-modeline-window*
X	(if *smart-key-window* nil (selected-window)))
X  (if *smart-key-meta-depressed*
X      (smart-key-help 'meta)))
X
(defun sm-depress-meta (&rest args)
X  (interactive)
X  (and (car args) (listp (car args)) (setq args (car args)))
X  (smart-key-set-point args)
X  (setq *smart-key-meta-depressed* args
X	*smart-key-window* (selected-window)
X	*smart-key-modeline-window*
X	(if *smart-key-window* nil (selected-window)))
X  (if *smart-key-depressed*
X      (smart-key-help nil)))
X
(defun sm-lemacs-move-point ()
X  (mouse-set-point current-mouse-event))
X
(defun sm-sun-move-point (arg-list)
X  (apply 'mouse-move-point arg-list))
X
;;; ************************************************************************
;;; Private variables
;;; ************************************************************************
X
(defvar sm-mouse-bindings nil
X  "List of (key . binding) pairs for Smart Mouse Keys.")
X
(defvar sm-mouse-bindings-p nil
X  "True if Smart Key mouse bindings are in use, else nil.")
X
(defvar sm-mouse-previous-bindings nil
X  "List of previous (key . binding) pairs for mouse keys used as Smart Keys.")
X
(provide 'hmouse-key)
SHAR_EOF
chmod 0644 hmouse-key.el ||
echo 'restore of hmouse-key.el failed'
Wc_c="`wc -c < 'hmouse-key.el'`"
test 11171 -eq "$Wc_c" ||
	echo 'hmouse-key.el: original size 11171, current size' "$Wc_c"
fi
# ============= hui-menus.el ==============
if test -f 'hui-menus.el' -a X"$1" != X"-c"; then
	echo 'x - skipping hui-menus.el (File already exists)'
else
echo 'x - extracting hui-menus.el (Text)'
sed 's/^X//' << 'SHAR_EOF' > 'hui-menus.el' &&
;;!emacs
;; $Id: hui-menus.el,v 1.2 1992/05/14 10:12:25 rsw Exp $
;;
;; FILE:         hui-menus.el
;; SUMMARY:      One line command menus for Hyperbole
;; USAGE:        GNU Emacs Lisp Library
;;
;; AUTHOR:       Bob Weiner
;; ORG:          Brown U.
;;
;; ORIG-DATE:    15-Oct-91 at 20:13:17
;; LAST-MOD:     25-Feb-92 at 06:08:14 by Bob Weiner
;;
;; This file is part of Hyperbole.
;; 
;; Copyright (C) 1991, 1992  Brown University, Providence, RI
;; Developed with support from Motorola Inc.
;; 
;; Permission to use, modify and redistribute this software and its
;; documentation for any purpose other than its incorporation into a
;; commercial product is hereby granted without fee.  A distribution fee
;; may be charged with any redistribution.  Any distribution requires
;; that the above copyright notice appear in all copies, that both that
;; copyright notice and this permission notice appear in supporting
;; documentation, and that neither the name of Brown University nor the
;; author's name be used in advertising or publicity pertaining to
;; distribution of the software without specific, written prior permission.
;; 
;; Brown University makes no representations about the suitability of this
;; software for any purpose.  It is provided "as is" without express or
;; implied warranty.
;;
;;
;; DESCRIPTION:  
;; DESCRIP-END.
X
;;; ************************************************************************
;;; Other required Elisp libraries
;;; ************************************************************************
X
(require 'hui)
X
;;; ************************************************************************
;;; Public variables
;;; ************************************************************************
X
(defvar hui:menu-select "\C-m"
X  "*Upper case char-string which select Hyperbole menu item at point.")
(defvar hui:menu-quit   "Q"
X  "*Upper case char-string which quits from selecting a Hyperbole menu item.")
(defvar hui:menu-abort  "\C-g"
X  "*Same function as 'hui:menu-quit'.")
(defvar hui:menu-top    "\C-t"
X  "*Character which returns to top Hyperbole menu.")
X
(defvar hui:menu-p nil
X  "Non-nil iff a current Hyperbole menu activation exists.")
X
(defvar hui:menus nil
X  "Command menus for use with the default Hyperbole user interface.")
(setq
X hui:menus
X (list (cons
X	'hyperbole
X	(append
X	 (list (list (concat "Hypb" hyperb:version ">")))
X	 '(("Act"         hui:hbut-act
X	    "Activates button at point or prompts for explicit button.")
X	   ("ButFile/"    (menu . butfile)
X	    "Quick access button files menus.")
X	   ("Doc/"        (menu . doc)
X	    "Quick access to Hyperbole documentation.")
X	   ("EBut/"       (menu . ebut)
X	    "Explicit button commands.")
X	   ("GBut/"       (menu . gbut)
X	    "Global button commands.")
X	   ("Hist"        (hhist:remove current-prefix-arg)
X	    "Jumps back to location prior to last Hyperbole button follow.")
X	   ("IBut/"       (menu . ibut)
X	    "Implicit button and button type commands.")
X	   ("Msg/"        (menu . msg)
X	    "Mail and News messaging facilities.")
X	   ("Rolo/"       (progn (or (fboundp 'rolo-kill) (require 'wrolo))
X				 (hui:menu-act 'rolo))
X	    "Hierarchical, multi-file rolodex lookup and edit commands.")
X	   ("Types/"      (menu . types)
X	    "Provides documentation on Hyperbole types.")
X	   )))
X       '(butfile .
X	 (("ButFile>")
X	  ("DirFile"      (find-file hbmap:filename)
X	   "Edits directory-specific button file.")
X	  ("PersonalFile" (find-file (concat hbmap:dir-user hbmap:filename))
X	   "Edits user-specific button file.")
X	  ))
X       '(doc .
X	 (("Doc>")
X	  ("Demo"         (find-file-read-only (concat hyperb:dir "DEMO"))
X	   "Demonstrates Hyperbole features.")
X	  ("Files"        (find-file (concat hyperb:dir "MANIFEST"))
X	   "Summarizes Hyperbole system files.  Click on an entry to view it.")
X	  ("Glossary"     (progn
X			    (or (featurep 'info)
X				(progn (load "info") (provide 'info)))
X			    (hact 'link-to-Info-node "(hypb.info)Glossary"))
X	   "Glossary of Hyperbole terms.")
X	  ("HypbCopy"  (hact 'link-to-string-match "* Copyright" 2
X			     (concat hyperb:dir "README"))
X	   "Displays general Hyperbole copyright and license details.")
X	  ("InfoManual"   (progn (or (featurep 'info)
X				     (progn (load "info") (provide 'info)))
X				 (hact 'link-to-Info-node "(hypb.info)"))
X	   "Online Info version of Hyperbole manual.")
X	  ("MailLists"    (hact 'link-to-string-match "* Mail Lists" 2
X			     (concat hyperb:dir "README"))
X	   "Details on Hyperbole mail list subscriptions.")
X	  ("New"          (hact 'link-to-string-match "* What's New" 2
X			     (concat hyperb:dir "README"))
X	   "Recent changes to Hyperbole.")
X	  ("SmartKy"      (find-file (concat hyperb:dir "hmouse-doc"))
X	   "Summarizes Smart Key mouse or keyboard handling.")
X	 ))
X       '(ebut .
X	 (("EButton>")
X	  ("Act"    hui:hbut-act
X	    "Activates button at point or prompts for explicit button.")
X	  ("Create" hui:ebut-create)
X	  ("Delete" hui:ebut-delete)
X	  ("Edit"   hui:ebut-modify "Modifies any desired button attributes.")
X	  ("Help/"  (menu . ebut-help) "Summarizes button attributes.")
X	  ("Modify" hui:ebut-modify "Modifies any desired button attributes.")
X	  ("Rename" hui:ebut-rename "Relabels an explicit button.")
X	  ("Search" hui:ebut-search
X	   "Locates and displays personally created buttons in context.")
X	  ))
X       '(ebut-help .
X	 (("Help on>")
X	  ("BufferButs"   (hui:hbut-report -1)
X	   "Summarizes all explicit buttons in buffer.")
X	  ("CurrentBut"   (hui:hbut-report)
X	   "Summarizes only current button in buffer.")
X	  ("OrderedButs"  (hui:hbut-report 1)
X	   "Summarizes explicit buttons in lexicographically order.")
X	  ))
X       '(gbut .
X	 (("GButton>")
X	  ("Act"    gbut:act        "Activates global button by name.") 
X	  ("Create" hui:gbut-create "Adds a global button to gbut:file.")
X	  ("Help"   gbut:help       "Reports on a global button by name.") 
X	  ))
X       '(ibut .
X	 (("IButton>")
X	  ("Act"    hui:hbut-act    "Activates implicit button at point.") 
X	  ("Help"   hui:hbut-help   "Reports on button's attributes.")
X	  ("Types"  (hui:htype-help 'ibtypes 'no-sort)
X	   "Displays documentation for one or all implicit button types.")
X	  ))
X       '(msg .
X	 (("Msg>")
X	  ("Compose-Hypb-Mail"
X	   (progn
X	     (mail) (insert "hyperbole@cs.brown.edu")
X	     (forward-line 1) (end-of-line)
X	     (save-excursion
X	       (insert
X		"Use a full *sentence* here.  Make a statement or ask a question."))
X	     (hact 'hyp-config)
X	     (message "Edit and then mail."))
X	   "Send a message to the Hyperbole discussion list.")
X	  ("Edit-Hypb-Mail-List-Entry"
X	   (progn (mail) (insert "hyperbole-request@cs.brown.edu")
X		  (forward-line 1) (end-of-line)
X		  (hact 'hyp-request)
X		  (message "Edit and then mail."))
X	   "Add, remove or change your entry on a hyperbole mail list.")
X	  ))
X       '(rolo .
X	 (("Rolo>")
X	  ("Add"              rolo-add	  "Add a new rolo entry.")
X	  ("Display-again"    rolo-display-matches
X	   "Display last found rolodex matches again.")
X	  ("Edit"             rolo-edit   "Edit an existing rolo entry.")
X	  ("Kill"             rolo-kill   "Kill an existing rolo entry.")
X	  ("Order"            rolo-sort   "Order rolo entries in a file.")
X	  ("Regexp-find"      rolo-grep   "Find entries containing a regexp.")
X	  ("String-find"      rolo-fgrep  "Find entries containing a string.")
X	  ("Yank"             rolo-yank
X	   "Find an entry containing a string and insert it at point.")
X	  ))
X       '(types .
X	 (("Types>")
X	  ("ActionTypes"      (hui:htype-help   'actypes)
X	   "Displays documentation for one or all action types.")
X	  ("DeleteIButType"   (hui:htype-delete 'ibtypes)
X	   "Deletes specified button type.")
X	  ("IButTypes"        (hui:htype-help   'ibtypes 'no-sort)
X	   "Displays documentation for one or all implicit button types.")
X	  ))
X       ))
X
;;; ************************************************************************
;;; Public functions
;;; ************************************************************************
X
(defun hui:menu ()
X  "Invokes default Hyperbole menu user interface when not already active.
Suitable for binding to a key, e.g. {C-h h}.
Non-interactively, returns t if menu is actually invoked by call, else nil."
X  (interactive)
X  (condition-case ()
X      (if (and hui:menu-p (> (minibuffer-depth) 0))
X	  nil
X	(setq hui:menu-p t)
X	(hui:menu-act 'hyperbole)
X	(setq hui:menu-p nil)
X	t)
X    (quit (setq hui:menu-p nil))
X    (error (setq hui:menu-p nil))))
X
(defun hui:menu-act (menu)
X  "Prompts user with Hyperbole MENU (a symbol) and performs selected item."
X  (let ((set-menu '(or (and menu (symbolp menu)
X			    (setq menu-alist (cdr (assq menu hui:menus))))
X		       (error "(hui:menu-act): Invalid menu symbol arg: %s"
X			      menu)))
X	(show-menu t)
X	(rtn)
X	menu-alist act-form)
X    (while (and show-menu (eval set-menu))
X      (cond ((and (consp (setq act-form (hui:menu-select menu-alist)))
X		  (cdr act-form)
X		  (symbolp (cdr act-form)))
X	     ;; Display another menu
X	     (setq menu (cdr act-form)))
X	    (act-form
X	     (let ((prefix-arg current-prefix-arg))
X	       (cond ((symbolp act-form)
X		      (if (eq act-form t)
X			  nil
X			(setq show-menu nil
X			      rtn (call-interactively act-form))))
X		     ((stringp act-form)
X		      (hui:menu-help act-form)
X		      ;; Loop and show menu again.
X		      )
X		     (t (setq show-menu nil
X			      rtn (eval act-form))))))
X	    (t (setq show-menu nil))))
X    rtn))
X
(defun hui:menu-enter (&optional char-str)
X  "Uses CHAR-STR or last input character as minibuffer argument."
X  (interactive)
X  (erase-buffer)
X  (let ((input (or char-str (aref (recent-keys) (1- (length (recent-keys)))))))
X    (insert 
X     (if (and hyperb:lemacs-p (eventp input))
X	 (event-to-character input)
X       input)))
X  (exit-minibuffer))
X
(defun hui:menu-help (help-str)
X  "Displays HELP-STR in a small window.  HELP-STR must be a string."
X  (let* ((window-min-height 2)
X	 (owind (selected-window))
X	 (buf-name (hypb:help-buf-name "Menu")))
X    (unwind-protect
X	(progn
X	  (save-window-excursion
X	    (smart-key-help-show buf-name)) ;; Needed to save screen config.
X	  (if (eq (selected-window) (minibuffer-window))
X	      (other-window 1))
X	  (if (= (length (hypb:window-list 'no-mini)) 1)
X	      (split-window-vertically nil))
X	  (let* ((winds (hypb:window-list 'no-mini))
X		 (bot-list (mapcar
X			    '(lambda (wind)
X			       (nth 3 (window-edges wind))) winds))
X		 (bot (apply 'max bot-list)))
X	    (select-window
X	     (nth (- (length winds) (length (memq bot bot-list))) winds)))
X	  (switch-to-buffer (get-buffer-create buf-name))
X	  (setq buffer-read-only nil)
X	  (erase-buffer)
X	  (insert "\n" help-str)
X	  (set-buffer-modified-p nil)
X	  (shrink-window
X	   (- (window-height)
X	      (+ 3 (length
X		    (delq nil
X			  (mapcar '(lambda (chr) (= chr ?\n)) help-str)))))))
X      (select-window owind))))
X
(defun hui:menu-select (menu-alist)
X  "Prompts user to choose the first character of any item from MENU-ALIST.
Case is not significant.  If chosen by direct selection with the secondary
Smart Key, returns any help string for item, else returns the action form for
the item."
X  (let* ((menu-prompt (concat (car (car menu-alist)) "  "))
X	 (menu-items (mapconcat 'car (cdr menu-alist) "  "))
X	 (set:equal-op 'eq)
X	 (select-char (string-to-char hui:menu-select))
X	 (quit-char (string-to-char hui:menu-quit))
X	 (abort-char (string-to-char hui:menu-abort))
X	 (top-char  (string-to-char hui:menu-top))
X	 (item-keys (mapcar '(lambda (item) (aref item 0))
X			    (mapcar 'car (cdr menu-alist))))
X	 (keys (apply 'list select-char quit-char abort-char
X		      top-char item-keys))
X	 (key 0)
X	 (hargs:reading-p 'hmenu)
X	 sublist)
X    (while (not (memq (setq key (upcase
X				 (string-to-char
X				  (read-from-minibuffer
X				   "" (concat menu-prompt menu-items)
X				   hui:menu-mode-map))))
X		      keys))
X      (beep)
X      (setq hargs:reading-p 'hmenu)
X      (discard-input))
X    (cond ((eq key quit-char) nil)
X	  ((eq key abort-char) (beep) nil)
X	  ((eq key top-char) '(menu . hyperbole))
X	  ((and (eq key select-char)
X		(save-excursion
X		  (if (search-backward " " nil t)
X		      (progn (skip-chars-forward " ")
X			     (setq key (following-char))
X			     nil)  ;; Drop through.
X		    t))))
X	  (t (if (setq sublist (memq key item-keys))
X		 (let* ((label-act-help-list
X			 (nth (- (1+ (length item-keys)) (length sublist))
X			      menu-alist))
X			(act-form (car (cdr label-act-help-list))))
X		   (if (eq hargs:reading-p 'hmenu-help)
X		       (let ((help-str
X			      (or (car (cdr (cdr label-act-help-list)))
X				  "No help documentation for this item.")))
X			 (concat (car label-act-help-list) "\n  "
X				 help-str "\n    Action: "
X				 (prin1-to-string act-form)))
X		     act-form)))))))
X
;;; ************************************************************************
;;; Private variables
;;; ************************************************************************
X
;; Hyperbole menu mode is suitable only for specially formatted data.
(put 'hui:menu-mode 'mode-class 'special)
X
(defvar hui:menu-mode-map nil
X  "Keymap containing hui:menu commands.")
(if hui:menu-mode-map
X    nil
X  (setq hui:menu-mode-map (make-keymap))
X  (suppress-keymap hui:menu-mode-map)
X  (define-key hui:menu-mode-map hui:menu-quit   'hui:menu-enter)
X  (define-key hui:menu-mode-map hui:menu-abort  'hui:menu-enter)
X  (define-key hui:menu-mode-map hui:menu-top    'hui:menu-enter)
X  (define-key hui:menu-mode-map hui:menu-select 'hui:menu-enter)
X  (let ((i 32))
X    (while (<= i 126)
X      (define-key hui:menu-mode-map (char-to-string i) 'hui:menu-enter)
X      (setq i (1+ i)))))
X
(provide 'hui-menus)
SHAR_EOF
chmod 0644 hui-menus.el ||
echo 'restore of hui-menus.el failed'
Wc_c="`wc -c < 'hui-menus.el'`"
test 13603 -eq "$Wc_c" ||
	echo 'hui-menus.el: original size 13603, current size' "$Wc_c"
fi
# ============= hsite-ex.el ==============
if test -f 'hsite-ex.el' -a X"$1" != X"-c"; then
	echo 'x - skipping hsite-ex.el (File already exists)'
else
echo 'x - extracting hsite-ex.el (Text)'
sed 's/^X//' << 'SHAR_EOF' > 'hsite-ex.el' &&
;;!emacs
;; $Id: hsite-ex.el,v 1.2 1992/05/14 10:11:45 rsw Exp $
;;
;; FILE:         hsite.el
;; SUMMARY:      Site-specific setup for Hyperbole
;; USAGE:        GNU Emacs Lisp Library
;;
;; AUTHOR:       Bob Weiner
;; ORG:          Brown U.
;;
;; ORIG-DATE:    15-Apr-91 at 00:48:49
;; LAST-MOD:     24-Feb-92 at 17:15:30 by Bob Weiner
;;
;; This file is part of Hyperbole.
;; 
;; Copyright (C) 1991, Brown University, Providence, RI
;; Developed with support from Motorola Inc.
;; 
;; Permission to use, modify and redistribute this software and its
;; documentation for any purpose other than its incorporation into a
;; commercial product is hereby granted without fee.  A distribution fee
;; may be charged with any redistribution.  Any distribution requires
;; that the above copyright notice appear in all copies, that both that
;; copyright notice and this permission notice appear in supporting
;; documentation, and that neither the name of Brown University nor the
;; author's name be used in advertising or publicity pertaining to
;; distribution of the software without specific, written prior permission.
;; 
;; Brown University makes no representations about the suitability of this
;; software for any purpose.  It is provided "as is" without express or
;; implied warranty.
;;
;;
;; DESCRIPTION:  
;;
;;   COPY hsite-ex.el TO hsite.el AND THEN MODIFY AS DESIRED.
;;   A line of the form:
;;
;;      (load "<HYP-DIR>/hsite")
;;
;;   in your .emacs file will then initialize Hyperbole whenever you
;;   start up.  Substitute your chosen path for <HYP-DIR>.
;;
;;   Be sure to have users load any personal mail/news initializations
;;   before they load this file if any of Hyperbole's mail or news
;;   support features are enabled herein or within their personal
;;   Hyperbole initializations.  Otherwise, the mail/news support may
;;   not be configured properly.
;;
;; DESCRIP-END.
X
;; ************************************************************************
;; Suggestions of what to include here.
;; Comment out and uncomment lines as desired.
;; ************************************************************************
X
(message "Initializing Hyperbole...")
X
;;; Choose a key on which to place the Hyperbole menus.
;;; For most people this key binding will work and will be equivalent
;;; to {C-h h}.
;;;
(define-key help-map "h" 'hui:menu)
X
;;; Uncomment or select a key if you want a site standard way of
;;; performing explicit button renames without invoking the Hyperbole
;;; menu.
;; (global-set-key "\C-c\C-r" 'hui:ebut-rename)
X
;;; Uncomment this and choose a key binding, e.g. {C-c t}, if you want a
;;; site standard way to easily switch between the Smart Key mouse
;;; bindings and a set of personal mouse bindings.  You may instead show
;;; users how to bind this to a key via 'hyperb:init-hook' (see
;;; Hyperbole Manual).
;;;
;; (global-set-key "<KEY-BINDING>" 'sm-mouse-toggle-bindings)
X
;;; A value of t for 'smart-key-init' below will cause the Smart Keys to be
;;; bound to keyboard keys in addition to any mouse key bindings.
;;; Comment it out or set it to nil if you don't want these bindings.  Or
;;; change the bindings in the succeeding lines.
;;;
(or (boundp 'smart-key-init) (setq smart-key-init t))
(and (boundp 'smart-key-init) smart-key-init
X     (global-set-key
X      "\M-\C-m"
X      '(lambda (arg)
X	 (interactive "P")
X	 (funcall (if arg 'smart-key 'smart-key-meta)))))
;;;
;;; Smart Key bindings for many non-edit modes.
(defvar smart-key-read-only "\C-m"
X  "Local Smart Key binding for special read-only modes.")
(defvar smart-key-meta-read-only "\M-\C-m"
X  "Local secondary Smart Key binding for special read-only modes.")
X
;;; Substitute the directory in which you stored the Hyperbole code
;;; for <HYP-DIR> below.
;;;
(if (boundp 'hyperb:dir)
X    nil
X  (defconst hyperb:dir (file-name-as-directory "<HYP-DIR>")
X    "Directory where Hyperbole code and doc files are kept."))
(let (newpath)
X  (or (featurep 'set) (load (concat hyperb:dir "set")))
X  (if (setq newpath (set:add hyperb:dir load-path))
X      (setq load-path newpath)))
X
;;; Support button highlighting and flashing under Epoch.
;;;
(defvar hyperb:epoch-p
X  (if (boundp 'epoch::version)
X      (if (string< epoch::version "Epoch 4") "V3" "V4"))
X  "Simplified Epoch version string, e.g. \"V4\", else nil.")
X
(if hyperb:epoch-p
X    (progn
X      (cond ((string< hyperb:epoch-p "V4") (require 'hui-epV3-b))
X	    (t (require 'hui-epV4-b)))
X      (fset 'hui:but-flash 'ep:but-flash)
X      ;; This color cycling really must be done until a desired color is hit.
X      ;; See the hui-epV* files for how this works.
X      (ep:cycle-but-color)
X      ;; If you use Epoch and find that the Hyperbole button flash time is
X      ;; too slow or too fast, adjust it here.
X      (defvar ep:but-flash-time 1000
X	"Machine specific val for empty loop counter, Epoch but flash delay.")
X      )
X  (defun hui:but-flash ())
X  )
X
;;; Support button highlighting and flashing under Lucid Emacs.
;;;
(defvar hyperb:lemacs-p
X  (let ((case-fold-search t))
X    (if (string-match "Lucid" emacs-version)
X	emacs-version))
X  "Simplified Lucid Emacs version string, e.g. \"V4\", else nil.")
X
(if hyperb:lemacs-p
X    (progn
X      (require 'hui-le-but)
X      (fset 'hui:but-flash 'le:but-flash)
X      ;; This color cycling really must be done until a desired color is hit.
X      ;; See hui-le-but.el for how this works.
X      (le:cycle-but-color)
X      ;; If you find that the Hyperbole button flash time is too slow
X      ;; or too fast, adjust it here.
X      (defvar le:but-flash-time 1000
X	"Machine specific val for empty loop counter, Lucid Emacs but flash delay.")
X      )
X  (defun hui:but-flash ())
X  )
X
;;; You may want to look at this file just to see what it does.
;;;
(require 'hinit)
;;;
;;; This call initializes the whole Hyperbole system.
(hyperb:init)
X
;;; Even if you don't need some of the following hook settings, you might
;;; as well leave them in so that if they ever become useful to you, you
;;; need not reconfigure Hyperbole.  These settings do nothing if the
;;; corresponding subsystems are never invoked.
;;;
;;; GNUS USENET news reader/poster support.
;;;
(var:append 'gnus-Startup-hook '(Gnus-init))
;;;
;;; Hyperbole mail reader support configuration.
;;;
(var:append 'rmail-mode-hook    '(Rmail-init))
(var:append 'mh-inc-folder-hook '(Mh-init))
(var:append 'vm-mode-hooks      '(Vm-init))
(var:append 'pm-hook            '(Pm-init))
X
;;; Enables Smart Key mouse setup.
(sm-mouse-setup)
X
;;; Permits restore of screen configuration after any help buffer is shown
;;; by pressing either Smart Key at the end of the help buffer.  (Help buffer
;;; names end with "Help*".
;;;
(setq temp-buffer-show-hook 'smart-key-help-show)
X
;;; This may be removed if Hyperbole variables are never used in file local
;;; variable lists or if it causes a conflict with any local variable lists you
;;; use.  See the source file for more details.
;;;
(require 'hlvar)
X
;;; Support for encapsulations of any of these external systems may be
;;; enabled here.  You should be familiar with the external system before
;;; you try to use the Hyperbole support for it.
;;;
;(require 'hsys-hbase)
;(require 'hsys-wais)
;(require 'hsys-www)
X
(provide 'hsite)
X
(message "Hyperbole is ready for action.")
SHAR_EOF
chmod 0644 hsite-ex.el ||
echo 'restore of hsite-ex.el failed'
Wc_c="`wc -c < 'hsite-ex.el'`"
test 7288 -eq "$Wc_c" ||
	echo 'hsite-ex.el: original size 7288, current size' "$Wc_c"
fi
exit 0

From help-lucid-emacs-request@lucid.com  Thu Aug 27 17:17:43 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA12070; Thu, 27 Aug 92 17:17:43 PDT
Received: by heavens-gate.lucid.com id AA03608g; Thu, 27 Aug 92 17:05:24 PDT
Received: from motgate.mot.com by heavens-gate.lucid.com id AA03597g; Thu, 27 Aug 92 17:02:06 PDT
Received: from pts1.pts.mot.com ([145.4.3.2]) by pobox.mot.com (4.1/SMI-4.0)
	id AA27530; Thu, 27 Aug 92 19:12:11 CDT
Received: from pts5.pts.mot.com ([192.8.210.19]) by pts1.pts.mot.com (4.1/SMI-4.1)
	id AA13630; Thu, 27 Aug 92 20:01:47 EDT
Received: by pts5.pts.mot.com ( 5.52 (84)/SMI-4.1)
	id AA03153; Thu, 27 Aug 92 20:08:26 EDT
Date: Thu, 27 Aug 92 20:08:26 EDT
From: weiner@pts.mot.com (Bob Weiner)
Message-Id: <9208280008.AA03153@pts5.pts.mot.com>
To: jwz@lucid.com
Cc: help-lucid-emacs@lucid.com
In-Reply-To: Jamie Zawinski's message of Thu, 27 Aug 92 15:12:58 PDT <9208272212.AA06890@thalidomide.lucid>
Subject: Re: Mouse enhancements for buffer-menu mode
Reply-To: bob_weiner@pts.mot.com

   Well I hear the sound of dead horses being beaten, but I feel compelled to
   mention that "right button = popup menu" is the standard in Motif, OpenLook,
   NeXTStep, and the Lisp Machine OS.

I understand.  Maybe that will become the Hyperbole default at some point along
with easy configurability, which I believe I've already put in.

The reason I chose the middle is historic and two-fold.
We were working on Apollos which had no menus but whose users were very used
to using the right key to select pathnames and open them, a behavior I wanted
to leave.

Secondly my user testing showed that most people had better control and were
more comfortable using their middle finger extensively rather than their right.
That finger then led to the middle button.

Bob



From help-lucid-emacs-request@lucid.com  Thu Aug 27 17:33:49 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA12083; Thu, 27 Aug 92 17:33:49 PDT
Received: by heavens-gate.lucid.com id AA03702g; Thu, 27 Aug 92 17:24:31 PDT
Received: from motgate.mot.com by heavens-gate.lucid.com id AA03696g; Thu, 27 Aug 92 17:23:10 PDT
Received: from pts1.pts.mot.com ([145.4.3.2]) by pobox.mot.com (4.1/SMI-4.0)
	id AA27843; Thu, 27 Aug 92 19:35:21 CDT
Received: from pts5.pts.mot.com ([192.8.210.19]) by pts1.pts.mot.com (4.1/SMI-4.1)
	id AA13685; Thu, 27 Aug 92 20:22:51 EDT
Received: by pts5.pts.mot.com ( 5.52 (84)/SMI-4.1)
	id AA03159; Thu, 27 Aug 92 20:29:28 EDT
Date: Thu, 27 Aug 92 20:29:28 EDT
From: weiner@pts.mot.com (Bob Weiner)
Message-Id: <9208280029.AA03159@pts5.pts.mot.com>
To: help-lucid-emacs@lucid.com
Subject: How can I make a variable screen-local?
Reply-To: bob_weiner@pts.mot.com

It would be useful to make screen-title-format have a different value
for different screens.  I can't find a 'make-screen-local-variable' or
any such function, though.

Is there a way to do it?

From help-lucid-emacs-request@lucid.com  Thu Aug 27 18:31:36 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA12173; Thu, 27 Aug 92 18:31:36 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA03899g; Thu, 27 Aug 92 18:19:28 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA09062; Thu, 27 Aug 92 21:30:18 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA09058; Thu, 27 Aug 92 21:30:17 -0400
Path: uunet!pipex!unipalm!uknet!mucs!uts.mcc.ac.uk!ssurhode
From: ssurhode@susssys1.rdg.ac.uk (Paul Rhodes)
Newsgroups: alt.lucid-emacs.help
Subject: Lucid archive ?
Message-Id: <SSURHODE.92Aug27095116@suma1.susssys1.rdg.ac.uk>
Date: 27 Aug 92 08:51:16 GMT
Distribution: alt
Organization: Reading University, England
Lines: 6
Originator: netnews@uts.mcc.ac.uk
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Can lucid users please have an archive for lucid emacs specific lisp.
The only source of lisp at present is sort backwards through the
newsgroups. Can we have a subdirectory in the lucid directory (which
has the executables) for such a purpose? anywhere will do.

Paul.

From help-lucid-emacs-request@lucid.com  Fri Aug 28 06:28:14 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA14006; Fri, 28 Aug 92 06:28:14 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA04823g; Fri, 28 Aug 92 06:18:58 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA25341; Fri, 28 Aug 92 09:29:48 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA25335; Fri, 28 Aug 92 09:29:45 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!cs.utexas.edu!csc.ti.com!tilde.csc.ti.com!m2.dseg.ti.com!lystad
From: lystad@m2.dseg.ti.com (Garr Lystad)
Subject: Re: Mouse enhancements for buffer-menu mode
Organization: TI DSEG, Spring Creek, Plano, Tx.
In-Reply-To: jwz@lucid.COM's message of 27 Aug 92 20:30:17 GMT
References: <LYSTAD.92Aug27090446@m2.dseg.ti.com> <9208272030.AA06576@thalidomide.lucid>
Message-Id: <LYSTAD.92Aug28074944@m2.dseg.ti.com>
Reply-To: Garr Lystad <lystad@m2.dseg.ti.com>
Date: Fri, 28 Aug 1992 13:49:44 GMT
Lines: 33
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


I'm all for consistency, and I sure don't like surprises when I use an
editor.  Your guidelines are consistent with the unmodified button use
in Zmacs too, which is good for us Lisp programmers. 

Still, I  think there are some  other  considerations.  There probably
isn't more than one, or at most two, menus of any use in a given mode.
If we do get into a situation  with a lot  of menus it's probably best
to arrange them in a hierarchy with the root on button3.  So we have a
menu on button 3.  If there are quite a few useful commands to  be put
on  the  mouse  I'd  like  to  be  able   to   put  some  of  them  on
Control-button3 or shift-button3, etc.  I really believe there are too
many useful  mouse commands that can  be  created  to reserve button 3
with modifers for menus.  (Of course I put a command on an  unmodified
button3.   I thought of that as a  convenience,  particularly  since I
hadn't created a menu.  But on reflection, that is probably a mistake.)

Also there are some NATURAL assignments to the mouse that don't fit
the guidelines, such as moused-line-to-top, moused-line-to-middle, and
moused-line-to-bottom on modified buttons 1, 2, and 3 respectively.

To help remove confusion even further, I would suggest a convention
that all commands that are put on the mouse should have the word mouse
in them.  That way if someone does apropos on the word mouse he will
find the commands he has available.  Of course apropos should
be fixed to show the mouse bindings as it does with regular key
bindings. 

Well, that's my opinion anyway,  for  what its worth.  And in spite of
my opinion  on  modified mouse  buttons, I  really do  thank Jamie for
trying to put a little order in our multiple, uncoordinated efforts.

  --  Garr

From help-lucid-emacs-request@lucid.com  Fri Aug 28 07:01:03 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA14162; Fri, 28 Aug 92 07:01:03 PDT
Received: by heavens-gate.lucid.com id AA04866g; Fri, 28 Aug 92 06:51:16 PDT
Received: from clouso.crim.ca by heavens-gate.lucid.com id AA04862g; Fri, 28 Aug 92 06:51:02 PDT
Received: from fatman.crim.ca by clouso.crim.ca (4.1/SMI-4.1)
	id AA29194; Fri, 28 Aug 92 10:00:49 EDT
Received: by fatman.crim.ca (4.1/SMI-4.1)
	id AA02189; Fri, 28 Aug 92 10:00:08 EDT
Date: Fri, 28 Aug 92 10:00:08 EDT
From: paquette%fatman.crim.ca@lucid.com (Marc Paquette)
Message-Id: <9208281400.AA02189@fatman.crim.ca>
To: help-lucid-emacs@lucid.com
In-Reply-To: <9208272212.AA06890@thalidomide.lucid> (message from Jamie Zawinski on Thu, 27 Aug 92 15:12:58 PDT)
Subject: Mouse enhancements for buffer-menu mode


Jamie said (jwz@lucid.com) :

> In message <9208272131.AA03116@pts5.pts.mot.com> Bob Weiner wrote:
> >
> > Hyperbole already provides mouse handling for many modes.  I believe it
> > pre-dates Lucid Emacs and runs across all GNU Emacs version and window
> > systems, so people should try to stay compatible with it.
> > 
> > 	   button1 moves point
> > 	   button2 (primary smart key) acts on items (can also pop up a menu)
> > 	   button3 (secondary smart key) provides help or does the inverse of button2
> 
> Well I hear the sound of dead horses being beaten, but I feel compelled to
> mention that "right button = popup menu" is the standard in Motif, OpenLook,
> NeXTStep, and the Lisp Machine OS.
> 
> 	-- Jamie
> 

While on that subject, what about double click events ?  In many
GUI (OPEN LOOK, Macintosh, probably NeXTStep and MS-WINDOWS
also), double clicking the mouse button that "moves the point" on
a object, initiates a default action for that object.  

Note that (initiating a default action for the "object") is, if I
understand it correctly, the behavior of Hyperbole's primary
smart key.  So, in the simplest case, a double click event
handler on, for example, the first mouse button, could just call the
Hyperbole primary smart key, after the current action (selecting
the current word) have been performed.

Since the current behavior of double clicking in Lucid Emacs is
non-destructive (make the current word as the primary selection)
I can't see why this can't be done.  Is there any reason why
mouse double clicks events are not available ?  Maybe I haven't
looked close enough ?

--
Marc Paquette
Conseiller Technique, UNIX
Centre de recherche informatique de Montreal (CRIM)
Tel   : (514) 340-5758
Fax   : (514) 340-5777
email : paquette@crim.ca

From help-lucid-emacs-request@lucid.com  Fri Aug 28 07:10:51 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA14174; Fri, 28 Aug 92 07:10:51 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA04878g; Fri, 28 Aug 92 07:01:25 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA27035; Fri, 28 Aug 92 09:59:36 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA27031; Fri, 28 Aug 92 09:59:34 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!cs.utexas.edu!csc.ti.com!tilde.csc.ti.com!m2.dseg.ti.com!lystad
From: lystad@m2.dseg.ti.com (Garr Lystad)
Subject: Re: Mouse enhancements for buffer-menu mode
Organization: TI DSEG, Spring Creek, Plano, Tx.
In-Reply-To: weiner@pts.mot.com's message of Thu, 27 Aug 1992 17:31:08 EDT
References: <9208272131.AA03116@pts5.pts.mot.com>
Message-Id: <LYSTAD.92Aug28081813@m2.dseg.ti.com>
Reply-To: Garr Lystad <lystad@m2.dseg.ti.com>
Date: Fri, 28 Aug 1992 14:18:13 GMT
Lines: 9
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


I give up!  With something like Hyperbole apropos would do no good.
The location moused determines what happens within a single mode.
Even the basic ideas of what is useful on the mouse is different.
In the case of mouse commands I will keep my bindings to myself in the
future.  I've been using Zmacs for 9 years and I guess I'm just too
old a dog to learn more new tricks than necessary.  

  --  Garr

From help-lucid-emacs-request@lucid.com  Fri Aug 28 07:28:31 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA14223; Fri, 28 Aug 92 07:28:31 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA04930g; Fri, 28 Aug 92 07:19:06 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA29747; Fri, 28 Aug 92 10:29:48 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA29743; Fri, 28 Aug 92 10:29:43 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!sun-barr!cs.utexas.edu!csc.ti.com!tilde.csc.ti.com!m2.dseg.ti.com!lystad
From: lystad@m2.dseg.ti.com (Garr Lystad)
Subject: Re: How can I make a variable screen-local?
Organization: TI DSEG, Spring Creek, Plano, Tx.
In-Reply-To: weiner@pts.mot.com's message of Thu, 27 Aug 1992 20:29:28 EDT
References: <9208280029.AA03159@pts5.pts.mot.com>
Message-Id: <LYSTAD.92Aug28084820@m2.dseg.ti.com>
Reply-To: Garr Lystad <lystad@m2.dseg.ti.com>
Date: Fri, 28 Aug 1992 14:48:20 GMT
Lines: 52
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <9208280029.AA03159@pts5.pts.mot.com> weiner@pts.mot.com (Bob Weiner) writes:

>   It would be useful to make screen-title-format have a different value
>   for different screens.  I can't find a 'make-screen-local-variable' or
>   any such function, though.

>   Is there a way to do it?

My guess is  that there isn't such a  thing. I did a  quick search and
found nothing.

It occured  to me that  my little search function  might be  useful to
anyone who  is  new  to emacs.   I  bet a lot  of people have  written
something similar, but for those who haven't, here it is.

(defun lisp-apropos (arg)
  "Another search tool. Provide a regexp and get a list of matching lisp
variables and functions."
  (interactive "sMatch string:")
  (with-output-to-temp-buffer "*Typeout*"
    (mapatoms '(lambda (sym)
		 (if (string-match arg (symbol-name sym))
		   (let ((boundp (boundp sym))
			 (fboundp (fboundp sym)) )
		     (cond ((and boundp fboundp)
			    (princ (format "Variable %s and Function (%s )\n" sym sym) nil) )
			   (boundp (princ (format "Variable %s\n" sym) nil))
			   (fboundp (princ (format "Function (%s )\n" sym) nil))
			   (t nil) )))))))

The following is handy to use with it.
  
(defun describe-this-function ()
  "Display the full documentation of the function near point (a symbol)."
  (interactive)
  (let ((function (function-called-at-point)))
    (if function
	(with-output-to-temp-buffer "*Help*"
	  (prin1 function)
	  (princ ":\n")
	  (if (documentation function)
	      (princ (documentation function))
	    (princ "not documented")))
       (message "%s is probably undefined."
		(save-excursion
		  (let ((min (progn (forward-sexp -1)(point)))
			(max (progn (forward-sexp 1)(point))) )
		    (buffer-substring min max) ))))))

(global-set-key '(control D) 'describe-this-function) 

 --  Garr

From help-lucid-emacs-request@lucid.com  Fri Aug 28 12:50:34 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA15040; Fri, 28 Aug 92 12:50:34 PDT
Received: by heavens-gate.lucid.com id AA05763g; Fri, 28 Aug 92 12:38:00 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA05759g; Fri, 28 Aug 92 12:35:56 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA09948; Fri, 28 Aug 92 12:45:22 PDT
Date: Fri, 28 Aug 92 12:45:22 PDT
Message-Id: <9208281945.AA09948@thalidomide.lucid>
X-Windows: The problem for your problem.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: help-lucid-emacs@lucid.com
Subject: Re: Mouse enhancements for buffer-menu mode
In-Reply-To: Marc Paquette's message of Fri 28-Aug-92 10:00:08 EDT <9208281400.AA02189@fatman.crim.ca>
References: <9208272212.AA06890@thalidomide.lucid>
	<9208281400.AA02189@fatman.crim.ca>

In message <9208281400.AA02189@fatman.crim.ca> Marc Paquette wrote:
>
> Is there any reason why mouse double clicks events are not available ?  

The primary reason is that X has no notion of double clicks: every client
(or toolkit) has to hack it by hand.  (After all, implementing double-clicks
in the server where they belong might imply some kind of approval of them,
which someone might construe as X favoring a particular user interface
policy, and we couldn't have that!)  Since we don't use a toolkit for
mapping clicks to commands, that means that emacs has to re-invent the
double-click wheel yet again.

One of these days we'll probably add some kind of double-click event into
the command-loop, so that one could bind things to double-click events with
the normal define-key mechanism, but for now you have to do the same kind
of voodoo that the `mouse-track' function does: notice when the current
command has been invoked twice in a row in a very short period of time with
no intervening motion, and do something different the second time around.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Fri Aug 28 16:35:12 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA15579; Fri, 28 Aug 92 16:35:12 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA06542g; Fri, 28 Aug 92 16:25:48 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA21233; Fri, 28 Aug 92 19:36:40 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA21229; Fri, 28 Aug 92 19:36:38 -0400
Path: uunet!haven.umd.edu!mimsy!lhc!lhc!warsaw
From: warsaw@nlm.nih.gov (Barry A. Warsaw)
Newsgroups: comp.lang.c++,gnu.g++.help,gnu.emacs.sources,comp.emacs,alt.lucid-emacs.help
Subject: NEW RELEASE OF c++-mode.el.  Version 2.195
Message-Id: <WARSAW.92Aug28191047@anthem.nlm.nih.gov>
Date: 29 Aug 92 00:10:47 GMT
Reply-To: c++-mode-help@anthem.nlm.nih.gov (Barry A. Warsaw)
Organization: Century Computing, Inc.
Lines: 87
Xref: uunet comp.lang.c++:29851 gnu.g++.help:2392 gnu.emacs.sources:1150 comp.emacs:14319 alt.lucid-emacs.help:364
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


This message is to announce the new public release of c++-mode.el
version 2.195 for editing C++ code in an emacs buffer.  As usual, I am
not posting the code here directly since you should be able to
download it via either anonymous ftp, or email.  After my signature is
a brief summary of changes since the last public release 2.124.  If
you are using an older version of c++-mode.el, I definitely suggest
you upgrade.

c++-mode.el has been submitted to the elisp archive and should soon be
available from that location.  anon-ftp to archive.cis.ohio-state.edu
and cd to /pub/gnu/emacs/elisp-archive/modes.  Retrieve the file
c++-mode.el.Z and uncompress.

Alternatively, you can aftp the file from:
ftp.cme.nist.gov:pub/gnu/c++-mode.el 

Finally, if you don't have aftp access, don't dispair!  Send the
following message in the _body_ of your email (not on the subject
line) to library@cme.nist.gov:

	send pub/gnu/c++-mode.el

Be sure the mail server can decipher a path back to you. You will
receive a multi-file response containing c++-mode.el in uuencoded
form.  Simply cat the messages together (removing any mail header
cruft), uudecode and enjoy!

As always, send bug reports, problems, questions, etc to
c++-mode-help@anthem.nlm.nih.gov.  I will be on vacation from Sept 4th
until about Sept 27th.  If you have a really pressing problem, try the
discussion list, maybe they can help:
c++-mode-victims@anthem.nlm.nih.gov.

Lastly, I'll leave you with this deep thought to ponder:

If I said that I was looking to buy a graphical user interface system
which exhibits an object-oriented-like behavior, does that mean I want
an OOy GUI?

:-)

-Barry


Fixed/Changed/Added Since Last Release:
=======================================

* The big one: c++-mode.el can now be used to edit C code as well! See
  the comments in the file for how to set this up. Note that you still
  can't completely trash the distrib c-mode.el since c++-mode uses
  some c-mode internal routines, but you can use this single mode to
  edit both your C and C++ code.  It should do The Right Thing with
  comments, etc.

* The variables c++-cleanup-brace-else-brace-p and
  c++-cleanup-empty-defun-braces-p have been replaced with
  c++-cleanup-list, and this variable's semantics have been extended.
  Do a "C-h v c++-cleanup-list RET" for more details.

* nested classes should mostly work. The general approach is that
  functions defined in a class definition should format exactly as
  they would if they appeared outside a class definition, except that
  an extra indentation would be applied. The extra indentation is the
  value of the new variable c++-class-member-indent times the level of
  class nesting.

* template declarations should no longer choke c++-mode

* `*' is now electric and will automatically line up C style block
  comments according to the value of the new variable
  c++-C-block-comments-indent-p.

* new variable c++-paren-as-block-close-p which determines how to
  indent parens which close a block-like function call (ie line up
  under the block, or the statement).

* c++-untame-characters default value is now just '(?'). Single quotes
  are the most troublesome characters and the backslashing workaround
  (while necessary) annoys almost everyone (including me!). See the
  comments in the file for more information.

* copyright for c++-mode.el has been assigned to FSF.

* MANY, MANY BUG FIXES!

* (HOPEFULLY) MANY PERFORMANCE ENHANCEMENTS!

From help-lucid-emacs-request@lucid.com  Mon Aug 31 11:21:01 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA22967; Mon, 31 Aug 92 11:21:01 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA10681g; Mon, 31 Aug 92 11:08:37 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA17063; Mon, 31 Aug 92 14:19:32 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA17057; Mon, 31 Aug 92 14:19:31 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!decwrl!decwrl!parc!news!mly
From: Richard Mlynarik <Mly@LCS.MIT.EDU>
Subject: Re: Will the next version of Lucid Emacs have the following?
In-Reply-To: weiner@pts.mot.com's message of 26 Aug 92 14:22:56 GMT
Message-Id: <MLY.92Aug27234732@atalanta.parc.xerox.com>
Reply-To: Mly@LCS.MIT.EDU
Organization: Xerox PARC, Palo Alto, CA
References: <9208261422.AA02123@pts5.pts.mot.com>
Date: 27 Aug 92 23:47:32
Lines: 11
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <9208261422.AA02123@pts5.pts.mot.com> weiner@pts.mot.com (Bob Weiner) writes:

   [...]

   I just hope the real V19 doesn't have another incompatible API.

Who cares about the "real" V19?

The Lucid hackers certainly seems less confused than those working on
"FSF 19" Emacs.  Besides, I should think FSF people have better, more
productive things to do than sink yet more time into Emacs.

From help-lucid-emacs-request@lucid.com  Mon Aug 31 21:51:02 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA24286; Mon, 31 Aug 92 21:51:02 PDT
Received: by heavens-gate.lucid.com id AA12313g; Mon, 31 Aug 92 21:41:05 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA12309g; Mon, 31 Aug 92 21:40:47 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA24434; Mon, 31 Aug 92 21:50:25 PDT
Date: Mon, 31 Aug 92 21:50:25 PDT
Message-Id: <9209010450.AA24434@thalidomide.lucid>
X-Windows: The joke that kills.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: help-lucid-emacs@lucid.com
Subject: electric font lock mode

Here's a little something I hacked up last night.  It's really way too slow
to use, but if most of it were ported to C, it would probably be acceptably
fast.  (Imagine using an emacs-lisp implementation of forward-sexp...)

Doing M-x font-lock-fontify-buffer on a 35k file of C code takes about a
minute on a Sparc2.  Do M-x electric-font-lock-mode to make it auto-fontify
what you type.  This can *almost* keep up with my typing, but not quite.

Also I think that the fontification of keywords that it does by default is
really gaudy, but I wanted to see how fast that would be.

	-- Jamie

---------- slice 'n' dice --------------------------------- file: font-lock.el
;; Electric Font Lock Mode.  Yow.
;; Copyright (C) 1992 Free Software Foundation, Inc.

;; This file is part of GNU Emacs.

;; GNU Emacs is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation; either version 2, or (at your option)
;; any later version.

;; GNU Emacs is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
;; GNU General Public License for more details.

;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING.  If not, write to
;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.

;; Electric-font-lock-mode is a minor mode that causes your comments to
;; be displayed in one font, strings in another, reserved words in another,
;; etc.  Actually, it works with any display attributes, not just fonts, 
;; but the name is what it is for historical continuity...

;; Comments will be displayed in `font-lock-comment-face'.
;; Strings will be displayed in `font-lock-string-face'.
;; Function and variable names in their defining forms will be displayed
;;  in `font-lock-function-name-face'.
;; Reserved words will be displayed in `font-lock-keyword-face'.
;;
;; To initially fontify the buffer, use M-x font-lock-fontify-buffer.
;; The fonts of the current line will be updated with every insertion or
;; deletion.
;;
;; To make the text you type be fontified, use M-x electric-font-lock-mode.
;;
;; To define new reserved words or other patterns to highlight, use the
;; `font-lock-keywords' variable.

(or (find-face 'font-lock-comment-face)
    (make-face 'font-lock-comment-face))
(or (face-differs-from-default-p 'font-lock-comment-face)
    (copy-face 'italic 'font-lock-comment-face))

(or (find-face 'font-lock-string-face)
    (make-face 'font-lock-string-face))
(or (face-differs-from-default-p 'font-lock-string-face)
    (copy-face 'italic 'font-lock-string-face))

(or (find-face 'font-lock-doc-string-face)
    (make-face 'font-lock-doc-string-face))
(or (face-differs-from-default-p 'font-lock-doc-string-face)
    (copy-face 'bold-italic 'font-lock-doc-string-face))

(or (find-face 'font-lock-function-name-face)
    (make-face 'font-lock-function-name-face))
(or (face-differs-from-default-p 'font-lock-function-name-face)
    (copy-face 'bold-italic 'font-lock-function-name-face))

(or (find-face 'font-lock-keyword-face)
    (make-face 'font-lock-keyword-face))
(or (face-differs-from-default-p 'font-lock-keyword-face)
    (copy-face 'bold 'font-lock-keyword-face))


(defvar font-lock-keywords nil
  "*The keywords to highlight.
If this is a list, then elements may be of the forms:
  \"string\"			 ; a regexp to highlight in the 
				 ;  `font-lock-keyword-face'.
  (\"string\" . integer)	 ; match N of the regexp will be highlighted
  (\"string\" . face-name)	 ; use the named face
  (\"string\" integer face-name) ; both of the above")

(defvar font-lock-keywords-case-fold-search nil
  "*Whether the strings in `font-lock-keywords' should be case-folded.")


;;; These variables are the cache (and outputs) of font-lock-find-context.
;;; The last point computed is held in the cache, as well as the last
;;; point at the beginning of a line that was computed.  This makes there
;;; be little penalty for moving left-to-right on a line a character at a 
;;; time; makes starting over on a line be cheap; and makes random-accessing
;;; within a line relatively cheap.  
;;;
;;; When we move to a different line farther down in the file (but within the
;;; current top-level form) we simply continue computing forward.  If we move
;;; backward more than a line, or move beyond the end of the current tlf, or
;;; do a deletion, then we call `beginning-of-defun' and start over from there.
;;;
;;; To fontify the whole buffer, we just go through it a character at a time,
;;; and create new extents when necessary (the extents we create span lines.)
;;;
;;; Each time a modification happens to a line, we remove all of the extents
;;; on that line (splitting line-spanning extents as necessary) and recompute
;;; the contexts for every character on the line.  This means that, as the
;;; user types, we repeatedly go back to the begnning of the line, doing more
;;; work the longer the line gets.  
;;;
;;; We redo the whole line because that's a lot easier than dealing with the
;;; hair of modifying possibly-overlapping extents, and extents whose 
;;; endpoints were moved by the insertion we are reacting to.
;;;
;;; Extents as they now exist are not a good fit for this project, because
;;; extents talk about properties of *regions*, when what we want to talk
;;; about here are properties of *characters*.  
;;;
;;; This is way too slow, but is a decent prototype; if this were 
;;; reimplemented in C, I think it could be usably fast.

(defvar font-lock-context nil)
(defvar font-lock-context-start-marker nil)
(defvar font-lock-context-end nil)
(defvar font-lock-context-depth nil)
(defvar font-lock-backslash-p nil)
(defvar font-lock-comment-context nil)
(defvar font-lock-string-context nil)

(defvar font-lock-bol-context nil)
(defvar font-lock-bol-context-start-marker nil)
(defvar font-lock-bol-context-end nil)
(defvar font-lock-bol-context-depth nil)
(defvar font-lock-bol-backslash-p nil)
(defvar font-lock-bol-comment-context nil)
(defvar font-lock-bol-string-context nil)

(defun font-lock-flush-cache ()
  (if font-lock-context-start-marker
      (progn
	(set-marker font-lock-context-start-marker nil)
	(set-marker font-lock-bol-context-start-marker nil)
	(setq font-lock-context-start-marker nil
	      font-lock-bol-context-start-marker nil))))


(defsubst font-lock-char-syntax-code (char)
  (ash (aref (syntax-table) char) -16))
(defsubst font-lock-comment-start1-p (code) (/= 0 (logand 1 code)))
(defsubst font-lock-comment-start2-p (code) (/= 0 (logand 2 code)))
(defsubst font-lock-comment-end1-p (code) (/= 0 (logand 4 code)))
(defsubst font-lock-comment-end2-p (code) (/= 0 (logand 8 code)))

(defun font-lock-find-context ()
  (let ((target (point))
	(do-bod (or (null font-lock-context-start-marker)
		    (> (point) font-lock-context-end)
		    (not (eq (current-buffer)
			     (marker-buffer
			      font-lock-context-start-marker)))))
	syntax)
    (if (or do-bod (< (point) font-lock-context-start-marker))
	(if (or do-bod (< (point) font-lock-bol-context-start-marker))
	    ;; we need to start over at the current defun.
	    (progn
	      (beginning-of-defun)
	      (if font-lock-context-start-marker
		  (move-marker font-lock-context-start-marker (point))
		(setq font-lock-context-start-marker (point-marker)
		      font-lock-bol-context-start-marker (point-marker)
		      ))
	      (setq font-lock-context-end (save-excursion
					    (re-search-forward "\n\\s("
							       nil 'move)
					    (point))
		    font-lock-context nil
		    font-lock-context-depth 0
		    font-lock-backslash-p
		      (= (char-syntax (preceding-char)) ?\\)
		      font-lock-comment-context nil
		      font-lock-string-context nil
		    ))
	  ;; we can restart at the cached beginning-of-line
	  (setq font-lock-context font-lock-bol-context
		font-lock-context-end font-lock-bol-context-end
		font-lock-context-depth font-lock-bol-context-depth
		font-lock-backslash-p font-lock-bol-backslash-p
		font-lock-comment-context font-lock-bol-comment-context
		font-lock-string-context font-lock-bol-string-context)
	  (move-marker font-lock-context-start-marker
		       font-lock-bol-context-start-marker)))
    (goto-char font-lock-context-start-marker)
    (while (< (point) target)
      (setq syntax (char-syntax (following-char)))
      (cond (font-lock-backslash-p
	     (setq font-lock-backslash-p nil))
	    ((= syntax ?\\)
	     (or font-lock-backslash-p (setq font-lock-backslash-p t)))
	    ((= syntax ?\()
	     (or font-lock-context
		 (setq font-lock-context-depth
		       (1+ font-lock-context-depth))))
	    ((= syntax ?\))
	     (or font-lock-context
		 (setq font-lock-context-depth
		       (1- font-lock-context-depth))))
	    ((= syntax ?\<)
	     (or font-lock-context
		 (setq font-lock-context 'comment)))
	    ((= syntax ?\>)
	     (if (and (eq font-lock-context 'comment)
		      (not font-lock-comment-context))
		 (setq font-lock-context nil)))
	    ((= syntax ?\")
	     (cond ((and (eq font-lock-context 'string)
			 (eq font-lock-string-context (following-char)))
		    (setq font-lock-context nil
			  font-lock-string-context nil))
		   ((null font-lock-context)
		    (setq font-lock-context 'string
			  font-lock-string-context (following-char)))))
	    ;;
	    ;; Check for multi-char comment characters.
	    ;; We do this last because `char-syntax' is byte-coded.
	    ;;
	    ((= syntax ?.) ; not necessarily correct, but fast.
	     (let ((code (font-lock-char-syntax-code (following-char))))
	       (cond ((and (font-lock-comment-start1-p code)
			   (or (null font-lock-comment-context)
			       (eq font-lock-comment-context 'start1)))
		      (setq font-lock-comment-context 'start1))
		     ((and (font-lock-comment-start2-p code)
			   (eq font-lock-comment-context 'start1))
		      (setq font-lock-comment-context 'start2))
		     ((and (font-lock-comment-end1-p code)
			   (or (eq font-lock-comment-context 'start2)
			       (eq font-lock-comment-context 'end1)))
		      (setq font-lock-comment-context 'end1))
		     ((and (font-lock-comment-end2-p code)
			   (eq font-lock-comment-context 'end1))
		      (setq font-lock-comment-context 'end2)))))
	    )
      (cond ((and font-lock-context
		  (not (eq font-lock-context 'comment2)))
	     (setq font-lock-comment-context nil))
	    ((eq font-lock-comment-context 'start2)
	     (setq font-lock-context 'comment2))
	    ((eq font-lock-comment-context 'end2)
	     (setq font-lock-context nil
		   font-lock-comment-context nil)))
      (if (= (preceding-char) ?\n)
	  (progn
	    (setq font-lock-bol-context font-lock-context
		  font-lock-bol-context-end font-lock-context-end
		  font-lock-bol-context-depth font-lock-context-depth
		  font-lock-bol-backslash-p font-lock-backslash-p
		  font-lock-bol-comment-context font-lock-comment-context
		  font-lock-bol-string-context font-lock-string-context)
	    (move-marker font-lock-bol-context-start-marker
			 font-lock-context-start-marker)))
      (forward-char 1))
    (move-marker font-lock-context-start-marker (point)))
  font-lock-context)


(defsubst font-lock-context-face ()
  (cond ((eq font-lock-context 'comment) 'font-lock-comment-face)
	((eq font-lock-context 'comment2) 'font-lock-comment-face)
	((eq font-lock-context 'string)
	 (if (= font-lock-context-depth 1)
	     ;; rally we should only use this if in position 3 depth 1, but
	     ;; that's too expensive to compute.
	     'font-lock-doc-string-face
	   'font-lock-string-face))
	(t nil)))


(defsubst font-lock-any-extents-p (start end)
  (let ((result nil))
    (map-extents (function (lambda (ignore ignore) (setq result t)))
		 (current-buffer) start end nil)
    result))

(defun font-lock-hack-keywords (start end)
  (goto-char start)
  (let ((case-fold-search font-lock-keywords-case-fold-search)
	(rest font-lock-keywords)
	str match face s e)
    (while rest
      (goto-char start)
      (cond ((consp (car rest))
	     (setq str (car (car rest)))
	     (cond ((consp (cdr (car rest)))
		    (setq match (car (cdr (car rest)))
			  face (car (cdr (cdr (car rest))))))
		   ((symbolp (cdr (car rest)))
		    (setq match 0 face (cdr (car rest))))
		   (t
		    (setq match (cdr (car rest))
			  face 'font-lock-keyword-face))))
	    (t
	     (setq str (car rest)
		   match 0
		   face 'font-lock-keyword-face)))
      (while (re-search-forward str end t)
	(setq s (match-beginning match)
	      e (match-end match))
	;; don't fontify this keyword if we're already in some other context.
	(or (font-lock-any-extents-p s e)
	    (set-extent-face (make-extent s e) face)))
      (setq rest (cdr rest)))))


(defun font-lock-fontify-buffer ()
  "Fontify the current buffer the way electric-font-lock-mode would."
  (interactive)
  (map-extents (function (lambda (x y) (delete-extent x)))
	       (current-buffer) (point-min) (point-max) nil)
  (font-lock-flush-cache)
  (save-excursion
    (goto-char (point-min))
    (let ((face nil)
	  (last-face nil)
	  (extent nil))
      (while (not (eobp))
	(setq last-face face)
	(font-lock-find-context)
	(setq face (font-lock-context-face))
	(cond ((null face)
	       (setq extent nil))
	      ((eq face last-face)
	       (if extent
		   (set-extent-endpoints
		    extent (extent-start-position extent) (point))))
	      (t
	       (setq extent (make-extent (point) (point)))
	       (set-extent-face extent face)))
	(forward-char 1)))
    (font-lock-hack-keywords (point-min) (point-max))
    ))



(defun font-lock-refontify-line ()
  (let (bol eol s e)
    (save-excursion
      (end-of-line)
      (setq eol (point))
      (beginning-of-line)
      (setq bol (point))
      ;;
      ;; First delete all extents on this line.
      ;; If extents span the line, divide them first so that
      ;; previous and following lines are unaffected.
      (map-extents (function
		    (lambda (extent ignore)
		      (setq s (extent-start-position extent)
			    e (extent-end-position extent))
		      (cond ((< s bol)	; starts before line
			     (set-extent-endpoints extent s (1- bol))
			     (if (> e (1+ eol)) ; ...and ends after line
				 (set-extent-face
				  (make-extent (1+ eol) e)
				  (extent-face extent))))
			    ((> e (1+ eol))	; starts on line and ends after
			     (set-extent-endpoints extent (1+ eol) e))
			    (t		; contained on line
			     (delete-extent extent)))))
		   (current-buffer) bol eol nil)
      ;;
      ;; Now fontify this line.
      ;;
      (let (extent face new-face
	    e-start)
	(while (<= (point) eol)
	  (font-lock-find-context)
	  (setq new-face (font-lock-context-face))
	  (cond ((and face (eq face new-face))
		 (set-extent-endpoints extent e-start (1+ (point))))
		(new-face
		 (setq extent (make-extent (setq e-start (point))
					   (1+ (point))))
		 (set-extent-face extent new-face)))
	  (setq face new-face)
	  (forward-char 1)))
      )))


(defun font-lock-after-change-function (beg end old-len)
  (if (> old-len 0) ; deletions mean the cache is invalid
      (font-lock-flush-cache))
  (save-excursion
    (goto-char beg)
    (beginning-of-line)
    (setq beg (point))
    (while (<= (point) end)
      (font-lock-refontify-line)
      (forward-line 1))
    (font-lock-hack-keywords beg (point))))


(defvar electric-font-lock-mode-hook nil
  "*Function or functions to run on entry to electric-font-lock-mode.")

(defun electric-font-lock-mode (&optional arg)
  "Toggle Electric Font Lock Mode.
With arg, turn font-lock mode on if and only if arg is positive.
In font-lock mode, text is fontified as you type it."
  (interactive "P")
  (set (make-local-variable 'after-change-function)
       (if (if (null arg)
	       (not after-change-function)
	     (> (prefix-numeric-value arg) 0))
	   'font-lock-after-change-function
	 nil))
  (if (interactive-p)
      (message "Electric Font Lock Mode is now %s."
	       (if after-change-function "on" "off")))
  (if after-change-function
      (run-hooks 'electric-font-lock-mode-hook)))


;;; Lisp and C mode interface

(defvar lisp-font-lock-keywords
 '(("^(def[-a-z]+\\s +\\(\\S +\\)" 1 font-lock-function-name-face)
   ("(\\(cond\\|if\\|when\\|unless\\|[ec]?\\(type\\)?case\\)[ \t\n]" . 1)
   ("(\\(while\\|do\\|let*?\\|flet\\|labels\\|prog[nv12*]?\\)[ \t\n]" . 1)
   ("\\s :\\(\\sw\\|\\s_\\)+\\>" . 1)
   ))

(defconst c-font-lock-keywords
  (let ((storage "auto\\|extern\\|register\\|static\\|volatile")
	(prefixes "unsigned\\|short\\|long")
	(types (concat "int\\|char\\|float\\|double\\|void\\|struct\\|"
		       "union\\|enum\\|typedef")))
    (list storage
	  (list (concat "\\(" storage "\\)?\\s *"
			"\\(" prefixes "\\)?\\s *"
			"\\(" types "\\)\\s +"
			"\\(\\(\\sw\\|\\s_\\|[*&]\\)+\\)")
		4 'font-lock-function-name-face)
	  (cons (concat
		 "[ \t]\\("
		 "for\\|while\\|do\\|return\\|goto\\|switch\\|case\\|break"
		 "\\)[ \t\n(){};,]")
		1)
	  "\\(\\sw\\|\\s_\\)+:"
	  '("^#[ \t]*[a-z]+" . font-lock-comment-face)
	  '("^#[ \t]*include[ \t]+<\\([^>\n]+\\)>" 1 font-lock-string-face)
	  )))


(defun dummy-electric-font-lock-mode-hook ()
  (cond ((memq major-mode '(lisp-mode emacs-lisp-mode))
	 (set (make-local-variable 'font-lock-keywords)
	      lisp-font-lock-keywords))
	((memq major-mode '(c-mode c++-mode))
	 (set (make-local-variable 'font-lock-keywords)
	      c-font-lock-keywords))
	))

(add-hook 'electric-font-lock-mode-hook
	  'dummy-electric-font-lock-mode-hook)

From help-lucid-emacs-request@lucid.com  Tue Sep  1 06:18:45 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA25888; Tue, 1 Sep 92 06:18:45 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA13024g; Tue, 1 Sep 92 06:06:11 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA08496; Tue, 1 Sep 92 09:17:10 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA08492; Tue, 1 Sep 92 09:17:08 -0400
Path: uunet!bonnie.concordia.ca!hobbit.ireq.hydro.qc.ca!NetNews.ireq.hydro.qc.ca!gamin
From: gamin%ireq-robot.hydro.qc.ca@lucid.com (Martin Boyer)
Newsgroups: alt.lucid-emacs.help
Subject: Re: Mouse enhancements for buffer-menu mode
Message-Id: <GAMIN.92Sep1081541@amadeus.ireq-robot.hydro.qc.ca>
Date: 1 Sep 92 12:15:41 GMT
References: <LYSTAD.92Aug27090446@m2.dseg.ti.com> <9208272030.AA06576@thalidomide.lucid>
Organization: Le laboratoire de robotique de l'Institut de recherche
	d'Hydro-Quebec
Lines: 38
In-Reply-To: jwz@lucid.COM's message of 27 Aug 92 20:30:17 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

>>>>> Jamie Zawinski writes:

>We have been trying to stay consistent with the following guidelines:

>button1 moves point
>button2 "selects" or "opens"
>button3 pops up a menu of all your choices

>It would be good if others could try to be consistent with this as well,

What about those who do not use only emacs, but other programs which
ALL follow some other convention? (OpenLook, for instance). Lemacs
would be consistent with itself, which is more than some other
programs can say, but it wouldn't be consistent with the rest of the
world.

I think the idea of labelling buttons by function rather than by
number is a much better one.  In imouse (for epoch), for example, the
buttons are labelled "SELECT", "MODIFY", and "PASTE" and they (mostly)
retain those meanings with any modifier key.  Thus, I'd rather see the
following guidelines:

button "MOVE" moves point or (for example) scrolls the window
button "SELECT" selects the buffer or (for example) sets mark
button "MENU" pops up a menu

"MOVE" is by default assigned to button1
"SELECT" is assigned to button2 under OpenWindows and button3 under twm
"MENU" is assigned to button3 under OpenWindows and ??? under twm

Well, I don't know how to satisfy the last equation in lemacs (I did
in imouse), but ideas are welcome.

--
Martin Boyer                            mboyer@ireq-robot.hydro.qc.ca
Institut de recherche d'Hydro-Quebec    mboyer@ireq-robot.uucp
Varennes, QC, Canada   J3X 1S1
+1 514 652-8412

From help-lucid-emacs-request@lucid.com  Tue Sep  1 06:18:54 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA25892; Tue, 1 Sep 92 06:18:54 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA13025g; Tue, 1 Sep 92 06:06:40 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA08510; Tue, 1 Sep 92 09:17:38 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA08506; Tue, 1 Sep 92 09:17:37 -0400
Path: uunet!mcsun!corton!sophia!almeria.inria.fr!bob
From: bob%almeria.inria.fr@lucid.com (Renaud Marlet)
Newsgroups: alt.lucid-emacs.help
Subject: Re: electric font lock mode
Message-Id: <28294@sophia.inria.fr>
Date: 1 Sep 92 13:13:53 GMT
References: <9209010450.AA24434@thalidomide.lucid>
Organization: INRIA, Sophia-Antipolis (Fr)
Lines: 4
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

You might also take a look at "decor" available via anonymous ftp to
babar.inria.fr (138.96.24.21) in pub/emacs. See the README file.

Renaud

From help-lucid-emacs-request@lucid.com  Tue Sep  1 12:21:22 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA27111; Tue, 1 Sep 92 12:21:22 PDT
Received: by heavens-gate.lucid.com id AA13981g; Tue, 1 Sep 92 12:10:53 PDT
Received: from cadillac.siemens.com by heavens-gate.lucid.com id AA13977g; Tue, 1 Sep 92 12:10:35 PDT
Received: from ear.siemens.com by cadillac.siemens.com (4.1/SMI-4.0)
	id AA23615; Tue, 1 Sep 92 15:21:25 EDT
Date: Tue, 1 Sep 92 15:21:25 EDT
From: adatta@cadillac.siemens.com (Amitava Datta)
Message-Id: <9209011921.AA23615@cadillac.siemens.com>
To: help-lucid-emacs@lucid.com
Subject: Addition to the mailing list.


Please add me to the mailing list. Thank you.

Amitava Datta (adatta@siemens.com)

From help-lucid-emacs-request@lucid.com  Tue Sep  1 12:29:28 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA27125; Tue, 1 Sep 92 12:29:28 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA14012g; Tue, 1 Sep 92 12:19:54 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA02608; Tue, 1 Sep 92 15:30:46 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA01805; Tue, 1 Sep 92 15:27:19 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!nestroy!news-mail-gateway
From: adatta@cadillac.siemens.COM (Amitava Datta)
Subject: Addition to the mailing list.
Message-Id: <9209011921.AA23615@cadillac.siemens.com>
Organization: WU Mail/News Gateway
Date: Tue, 1 Sep 1992 19:21:25 GMT
Lines: 4
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


Please add me to the mailing list. Thank you.

Amitava Datta (adatta@siemens.com)

From help-lucid-emacs-request@lucid.com  Wed Sep  2 04:40:05 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA29654; Wed, 2 Sep 92 04:40:05 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA16347g; Wed, 2 Sep 92 04:27:07 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA13987; Wed, 2 Sep 92 07:38:07 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA13983; Wed, 2 Sep 92 07:38:05 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!cis.ohio-state.edu!magnus.acs.ohio-state.edu!usenet.INS.CWRU.Edu!agate!iat.holonet.net!uupsi!psinntp!adcmail!gerald
From: gerald@atlastele.com (Gerald Aden)
Subject: Unable to get Lucid Emacs to run on Sparcstation.
Message-Id: <1992Aug31.203333.29504@atlastele.com>
Organization: Atlas Telecom Inc.
Date: Mon, 31 Aug 1992 20:33:33 GMT
Lines: 17
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I just finished compiling Lucid Emacs 19.2 with gcc 2.2.2 on a Sparcstation
running SUNOS 4.1.1.  When I try to invoke it from an xterm I get the messages:

This version of emacs only runs under X Windows (for now).
Check that your $DISPLAY environment variable is properly set.

I try setting DISPLAY to `hostname`:0 and unix:0.  Neither of these work.

I would greatly appreciate it if someone could tell me what is wrong.

Thanks in advance,
Gerald Aden
-- 
Gerald Aden                         EMAIL: gerald@atlastele.com
Atlas Telecom                       VOICE: [USA] 1+503.228.1400 x659
4640 SW Macadam Ave.                FAX1:  [USA] 1+503.225.5518
Portland, OR 97201                  FAX2:  [USA] 1+503.228-0368

From help-lucid-emacs-request@lucid.com  Wed Sep  2 04:40:07 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA29655; Wed, 2 Sep 92 04:40:07 PDT
Received: by heavens-gate.lucid.com id AA16358g; Wed, 2 Sep 92 04:29:09 PDT
Received: from ingr.ingr.com by heavens-gate.lucid.com id AA16354g; Wed, 2 Sep 92 04:28:57 PDT
Received: from matis.UUCP by ingr.ingr.com (5.65c/1.920611)
	id AA02219; Wed, 2 Sep 1992 06:45:26 -0500
Received: from simpson.turtles by turtles (4.1/SMI-4.1)
	id AA04551; Wed, 2 Sep 92 11:45:10 IDT
Received: by simpson.turtles (4.1/SMI-4.1)
	id AA21138; Wed, 2 Sep 92 11:44:58 IDT
From: matis!amir@lucid.com (Amir Katz)
Message-Id: <9209020844.AA21138@simpson.turtles>
Subject: Down-arrow != CTRL-N ???
To: help-lucid-emacs@lucid.com (Lucid Emacs help M.L.)
Date: Wed, 2 Sep 92 11:44:56 EET DST
Organization: SEE Technologies Ltd.
Reply-To: matis!matis.ingr.COM!amir@lucid.com
X-Reply-To: amir@matis.ingr.COM
X-Mailer: ELM [version 2.3 PL11]

Lucid fans,
My down-arrow (up-arrow) doesn't behave like CTRL-N (CTRL-P) but as
if goal-column is reset on every move to the current position. Example:

Line 1: 1234567890
Line 2: 12345
Line 3: 1234567890ABCDEFGHIJK

If I'm at the end of line 1 (after the '0'), and I hit the down-arrow, it's
positioned at the end line 2 (after the '5'). That's OK.  Down-arrow again
and it keeps the same column, that is, it's positioned on the '6' in line 3.
Using CTRL-N, it's positioned on the 'A' which is the correct behavior. An
identical mis-behavior is seen with up-arrow.

When I hit help-k-down-arrow (describe-key down-arrow), it says:

"":
Keyboard macro.

I do not reprogram the up/down arrows. Same behavior happens if I start lemacs
with -q, so none of my .emacs can be blamed here.

Anybody has an idea why it's happening? 

Config: Lucid 19.2, built with gcc 2.2.2 
        Sun SS1+ w/GX
        SunOS 4.1.2 
        X11R5, patch 17.
-- 
/* ----------------------------------------------------------- */
/*  Amir J. Katz             |   amir@matis.ingr.COM           */
/*  System Specialist        |   Voice:  +972 52-584684        */
/*  SEE Technologies Ltd.    |   Fax:    +972 52-543917        */
/* ............ Solaris 2.0 - The Final Frontier ? ........... */

From help-lucid-emacs-request@lucid.com  Wed Sep  2 07:01:56 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA29999; Wed, 2 Sep 92 07:01:56 PDT
Received: by heavens-gate.lucid.com id AA16562g; Wed, 2 Sep 92 06:48:59 PDT
Received: from motgate.mot.com by heavens-gate.lucid.com id AA16554g; Wed, 2 Sep 92 06:48:18 PDT
Received: from pts1.pts.mot.com ([145.4.3.2]) by pobox.mot.com (4.1/SMI-4.0)
	id AA07468; Wed, 2 Sep 92 08:59:41 CDT
Received: from pts4.pts.mot.com by pts1.pts.mot.com (4.1/SMI-4.1)
	id AA00334; Wed, 2 Sep 92 09:46:25 EDT
Received: from msn25.motorola by pts4.pts.mot.com (4.1/SMI-4.1)
	id AA15135; Tue, 1 Sep 92 18:58:07 EDT
Date: Tue, 1 Sep 92 18:58:07 EDT
From: ex594bw@pts.mot.com (Bob Weiner)
Message-Id: <9209012258.AA15135@pts4.pts.mot.com>
Received: by msn25.motorola (4.1/SMI-4.1)
	id AA02497; Tue, 1 Sep 92 18:57:21 EDT
To: hyperbole@cs.brown.edu, help-lucid-emacs@lucid.com
Subject: Patch to fix Hyperbole smart key handler bug under Lucid Emacs.

The patch applies to all Hyperbole users, though I have only seen the
bug appear as a result of use under Lucid Emacs.


diff hmouse-key.el.old hmouse-key.el
254c254
<   (setq *smart-key-depressed* args
---
>   (setq *smart-key-depressed* t
265c265
<   (setq *smart-key-meta-depressed* args
---
>   (setq *smart-key-meta-depressed* t

From help-lucid-emacs-request@lucid.com  Wed Sep  2 07:57:18 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA00239; Wed, 2 Sep 92 07:57:18 PDT
Received: by heavens-gate.lucid.com id AA16649g; Wed, 2 Sep 92 07:44:59 PDT
Received: from uswat.advtech.uswest.com by heavens-gate.lucid.com id AA16645g; Wed, 2 Sep 92 07:44:34 PDT
Received: from alder.advtech.uswest.com by uswat.advtech.uswest.com with SMTP id AA14212
  (5.65c/IDA-1.4.4 for <help-lucid-emacs@lucid.com>); Wed, 2 Sep 1992 08:55:34 -0600
Received: by alder.advtech.uswest.com (advtech.uswest.com)
   id AA01238 (4.1/at-generic.11Feb92); Wed, 2 Sep 92 08:55:37 MDT
Date: Wed, 2 Sep 92 08:55:37 MDT
From: Chris McClenaghan <mcclen@advtech.uswest.com>
Message-Id: <9209021455.AA01238@alder.advtech.uswest.com>
To: help-lucid-emacs@lucid.com, hyperbole@cs.brown.edu
Subject: Re: Patch to fix Hyperbole smart key handler bug under Lucid Emacs.
In-Reply-To: <9209012258.AA15135@pts4.pts.mot.com>
References: <9209012258.AA15135@pts4.pts.mot.com>

I seemed to be having trouble with mail last week, several
indications of bounced mail led me to resend my request twice. In
any case, I got no response and still have been unable to install
hyperbole with lemacs patches under lemacs 19.1.

I have several questions:

Do all hyperbole files need recompilation? There was a byte
compiler issue early on with hyperbole and lemacs, is it
resolved? If all the hyperbole files should be recompiled, what
is the best strategy for doing so? Do I need to setq something to
indicate the lack of epoch or wais?

In the hyperbole tar file on wilma.cs.brown.edu there is a shar
file in the tarfile called BUT-COMPILE.shar, does it need to be
applied before/after the lemacs hyperbole patch?

Any help would be appreciated.

Chris McClenaghan    mcclen@advtech.uswest.com


From help-lucid-emacs-request@lucid.com  Wed Sep  2 08:55:22 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA00360; Wed, 2 Sep 92 08:55:22 PDT
Received: by heavens-gate.lucid.com id AA16768g; Wed, 2 Sep 92 08:43:02 PDT
Received: from motgate.mot.com by heavens-gate.lucid.com id AA16764g; Wed, 2 Sep 92 08:42:48 PDT
Received: from pts1.pts.mot.com ([145.4.3.2]) by pobox.mot.com (4.1/SMI-4.0)
	id AA11301; Wed, 2 Sep 92 10:54:18 CDT
Received: from pts5.pts.mot.com ([192.8.210.19]) by pts1.pts.mot.com (4.1/SMI-4.1)
	id AA01159; Wed, 2 Sep 92 11:41:00 EDT
Received: by pts5.pts.mot.com ( 5.52 (84)/SMI-4.1)
	id AA05541; Wed, 2 Sep 92 11:47:45 EDT
Date: Wed, 2 Sep 92 11:47:45 EDT
From: weiner@pts.mot.com (Bob Weiner)
Message-Id: <9209021547.AA05541@pts5.pts.mot.com>
To: lystad@m2.dseg.ti.com
Cc: help-lucid-emacs@lucid.com
In-Reply-To: Garr Lystad's message of Fri, 28 Aug 1992 14:18:13 GMT <LYSTAD.92Aug28081813@m2.dseg.ti.com>
Subject: Re: Mouse enhancements for buffer-menu mode

Garr Lystad <lystad@m2.dseg.ti.com> wrote:

   I give up!  With something like Hyperbole apropos would do no good.
   The location moused determines what happens within a single mode.
   Even the basic ideas of what is useful on the mouse is different.
   In the case of mouse commands I will keep my bindings to myself in the
   future.  I've been using Zmacs for 9 years and I guess I'm just too
   old a dog to learn more new tricks than necessary.  

I must have lost the thread here.  Could you clarify what you are
saying here (especially the first and third lines)?  I can't respond because
I and I suspect others don't know what you mean.

If you are trying to say that Hyperbole already provides mouse handling
under Buffer menu mode and lets you click the help key on an Emacs
Lisp symbol to see its documentation, then you are right.  No need to
reinvent the stuff, just read the manual.

Bob



From help-lucid-emacs-request@lucid.com  Wed Sep  2 09:12:16 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA00435; Wed, 2 Sep 92 09:12:16 PDT
Received: by heavens-gate.lucid.com id AA16816g; Wed, 2 Sep 92 08:59:36 PDT
Received: from motgate.mot.com by heavens-gate.lucid.com id AA16811g; Wed, 2 Sep 92 08:59:22 PDT
Received: from pts1.pts.mot.com ([145.4.3.2]) by pobox.mot.com (4.1/SMI-4.0)
	id AA11863; Wed, 2 Sep 92 11:10:52 CDT
Received: from pts5.pts.mot.com ([192.8.210.19]) by pts1.pts.mot.com (4.1/SMI-4.1)
	id AA01281; Wed, 2 Sep 92 11:57:34 EDT
Received: by pts5.pts.mot.com ( 5.52 (84)/SMI-4.1)
	id AA05568; Wed, 2 Sep 92 12:04:19 EDT
Date: Wed, 2 Sep 92 12:04:19 EDT
From: weiner@pts.mot.com (Bob Weiner)
Message-Id: <9209021604.AA05568@pts5.pts.mot.com>
To: mcclen@advtech.uswest.com
Cc: help-lucid-emacs@lucid.com, hyperbole@cs.brown.edu
In-Reply-To: Chris McClenaghan's message of Wed, 2 Sep 92 08:55:37 MDT <9209021455.AA01238@alder.advtech.uswest.com>
Subject: Re: Patch to fix Hyperbole smart key handler bug under Lucid Emacs.

   I seemed to be having trouble with mail last week, several
   indications of bounced mail led me to resend my request twice. In
   any case, I got no response and still have been unable to install
   hyperbole with lemacs patches under lemacs 19.1.

   I have several questions:

   Do all hyperbole files need recompilation?

No just the ones that have change and were included in source
form only.

   There was a byte
   compiler issue early on with hyperbole and lemacs, is it
   resolved?

I haven't noticed any problem.  Again, if you want to point
something out, be very explicit about it so everyone knows
precisely what you are talking about, e.g. you don't explain
what the problem was.

   If all the hyperbole files should be recompiled, what
   is the best strategy for doing so? 

You could move files you don't use out of the directory and
then byte compile the directory if you ever have a need.

   Do I need to setq something to
   indicate the lack of epoch or wais?

No, during runtime Hyperbole should take care of this, but
there is no specific byte compile procedure which checks whether
or not something should be compiled under this version of emacs.

   In the hyperbole tar file on wilma.cs.brown.edu there is a shar
   file in the tarfile called BUT-COMPILE.shar, does it need to be
   applied before/after the lemacs hyperbole patch?

I don't recall what it is.  I would say no.

Bob

From help-lucid-emacs-request@lucid.com  Wed Sep  2 11:40:58 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA00806; Wed, 2 Sep 92 11:40:58 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA17454g; Wed, 2 Sep 92 11:31:26 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA11656; Wed, 2 Sep 92 14:42:26 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA11652; Wed, 2 Sep 92 14:42:24 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!europa.asd.contel.com!darwin.sura.net!zaphod.mps.ohio-state.edu!magnus.acs.ohio-state.edu!usenet.ins.cwru.edu!agate!boulder!news!grunwald
From: grunwald@mumble.cs.colorado.edu (Dirk Grunwald)
Subject: Re: Mouse enhancements for buffer-menu mode
In-Reply-To: weiner@pts.mot.com's message of Wed, 2 Sep 1992 11:47:45 EDT
Message-Id: <GRUNWALD.92Sep2122628@mumble.cs.colorado.edu>
Nntp-Posting-Host: mumble.cs.colorado.edu
Reply-To: grunwald@foobar.cs.colorado.edu
Organization: University of Colorado at Boulder
References: <9209021547.AA05541@pts5.pts.mot.com>
Date: 2 Sep 92 12:26:28
Lines: 19
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


>>>>> On Wed, 2 Sep 1992 11:47:45 EDT, weiner@pts.mot.com (Bob Weiner) said:


BW> Garr Lystad <lystad@m2.dseg.ti.com> wrote:
GL> I give up!  With something like Hyperbole apropos would do no good.
GL> The location moused determines what happens within a single mode.
GL> Even the basic ideas of what is useful on the mouse is different.
GL> In the case of mouse commands I will keep my bindings to myself in the
GL> future.  I've been using Zmacs for 9 years and I guess I'm just too
GL> old a dog to learn more new tricks than necessary.  

BW> I must have lost the thread here.  Could you clarify what you are
BW> saying here (especially the first and third lines)?  I can't
BW> respond because I and I suspect others don't know what you mean.
--

I think he's saying you can't tell what the mouse buttons are going to
do before you do something.

From help-lucid-emacs-request@lucid.com  Wed Sep  2 11:56:27 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA00894; Wed, 2 Sep 92 11:56:27 PDT
Received: by heavens-gate.lucid.com id AA17550g; Wed, 2 Sep 92 11:46:39 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA17546g; Wed, 2 Sep 92 11:46:21 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA01064; Wed, 2 Sep 92 11:55:57 PDT
Date: Wed, 2 Sep 92 11:55:57 PDT
Message-Id: <9209021855.AA01064@thalidomide.lucid>
X-Windows: Complex nonsolutions to simple nonproblems.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: grunwald@foobar.cs.colorado.edu
Cc: help-lucid-emacs@lucid.com
Subject: Re: Mouse enhancements for buffer-menu mode
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Dirk Grunwald's message of  2-Sep-92 12:26:28  <GRUNWALD.92Sep2122628@mumble.cs.colorado.edu>
References: <9209021547.AA05541@pts5.pts.mot.com>
	<GRUNWALD.92Sep2122628@mumble.cs.colorado.edu>

In message <GRUNWALD.92Sep2122628@mumble.cs.colorado.edu> Dirk Grunwald wrote:
>
> I think he's saying you can't tell what the mouse buttons are going to
> do before you do something.

Another way to implement context-sensitive mouse clicks would be to attach
keymaps to extents or faces.  Instead of having a mouse button bound to a
function which did some kind of context-sensitive dispatching, this
dispatching could be encoded in the keymap structure.  When something like
hyperbole saw something that looked like a pathname, it would put that text in
a face which had a particular set of pathname-specific bindings.  Something
that looked like a network address would have a different set of bindings.

If faces had keymaps, then this would let you have different *key* bindings
depending on the position of the cursor, as well as attaching different mouse
bindings to different buffer positions.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Wed Sep  2 12:18:55 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA00960; Wed, 2 Sep 92 12:18:55 PDT
Received: by heavens-gate.lucid.com id AA17615g; Wed, 2 Sep 92 12:06:02 PDT
Received: from motgate.mot.com by heavens-gate.lucid.com id AA17611g; Wed, 2 Sep 92 12:05:34 PDT
Received: from pts1.pts.mot.com ([145.4.3.2]) by pobox.mot.com (4.1/SMI-4.0)
	id AA17714; Wed, 2 Sep 92 14:17:04 CDT
Received: from pts4.pts.mot.com by pts1.pts.mot.com (4.1/SMI-4.1)
	id AA02517; Wed, 2 Sep 92 15:05:17 EDT
Received: from msn25.motorola by pts4.pts.mot.com (4.1/SMI-4.1)
	id AA19981; Wed, 2 Sep 92 15:17:37 EDT
Date: Wed, 2 Sep 92 15:17:37 EDT
From: ex594bw@pts.mot.com (Bob Weiner)
Message-Id: <9209021917.AA19981@pts4.pts.mot.com>
Received: by msn25.motorola (4.1/SMI-4.1)
	id AA02671; Wed, 2 Sep 92 15:16:51 EDT
To: grunwald@foobar.cs.colorado.edu
Cc: help-lucid-emacs@lucid.com
In-Reply-To: Dirk Grunwald's message of 2 Sep 92 12:26:28 <GRUNWALD.92Sep2122628@mumble.cs.colorado.edu>
Subject: Re: Mouse enhancements for buffer-menu mode
Reply-To: bob_weiner@pts.mot.com

> 
> >>>>> On Wed, 2 Sep 1992 11:47:45 EDT, weiner@pts.mot.com (Bob Weiner) said:
> 
> 
> BW> Garr Lystad <lystad@m2.dseg.ti.com> wrote:
> GL> I give up!  With something like Hyperbole apropos would do no good.
> GL> The location moused determines what happens within a single mode.
> GL> Even the basic ideas of what is useful on the mouse is different.
> GL> In the case of mouse commands I will keep my bindings to myself in the
> GL> future.  I've been using Zmacs for 9 years and I guess I'm just too
> GL> old a dog to learn more new tricks than necessary.  
> 
> BW> I must have lost the thread here.  Could you clarify what you are
> BW> saying here (especially the first and third lines)?  I can't
> BW> respond because I and I suspect others don't know what you mean.
> --
> 
> I think he's saying you can't tell what the mouse buttons are going to
> do before you do something.
> 

If so, then the Hyperbole manual explains that being able to tell
what a entity will do before you use it is important to the Hyperbole
design.  With the mouse keys, one simply depresses the smart key you
plan to use over the entity you want, and then while still holding
the first key, press the other smart key.  Then you can release them as you
like.

What you'll see is a description of what will happen at that location
when you click the first key.  It's quite easy to use once you try it.

Search for 'mouse' in the index should get you the appropriate information.

Bob

From help-lucid-emacs-request@lucid.com  Thu Sep  3 03:16:42 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA03390; Thu, 3 Sep 92 03:16:42 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA20222g; Thu, 3 Sep 92 03:03:19 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA13366; Thu, 3 Sep 92 06:14:21 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA13362; Thu, 3 Sep 92 06:14:19 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!mcsun!sunic!aun.uninett.no!ugle.unit.no!ugle.unit.no!harald
From: harald%itk.unit.no@lucid.com (Harald Backer)
Subject: FrameMaker bindings
Message-Id: <HARALD.92Sep3120143@tobias.itk.unit.no>
Lines: 14
Organization: Norwegian Institute of Technology / SINTEF, Trondheim, Norway
Date: 3 Sep 92 12:01:43
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Has anyone done, or plans to do, a FrameMaker look-a-like binding for
the mouse and keyboard in lemacs? (Whithout overriding the standard
emacs bindings. In these cases I prefer to modify the Frame
bindings...)

(And what about WordPerfect :-)
 
Regards, Harald Backer                  

SINTEF Automatic Control                : Phone +47 7 594375
The Norwegian Institute of Technology   : Fax   +47 7 594399
N-7034 Trondheim			: Email harald@itk.unit.no
NORWAY


From help-lucid-emacs-request@lucid.com  Thu Sep  3 07:46:39 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA03994; Thu, 3 Sep 92 07:46:39 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA20501g; Thu, 3 Sep 92 07:34:07 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA24812; Thu, 3 Sep 92 10:45:09 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA24808; Thu, 3 Sep 92 10:45:08 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!usc!zaphod.mps.ohio-state.edu!darwin.sura.net!udel!rochester!cantaloupe.srv.cs.cmu.edu!crabapple.srv.cs.cmu.edu!royse
From: royse+@EP.FAC.CS.CMU.EDU (Dennis Royse)
Subject: Andrew Aid
Message-Id: <Bu09uB.1rv.1@cs.cmu.edu>
Originator: royse@EP.FAC.CS.CMU.EDU
Nntp-Posting-Host: ep.fac.cs.cmu.edu
Organization: School of Computer Science, Carnegie Mellon
Date: Thu, 3 Sep 1992 14:06:10 GMT
Lines: 6
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


Those of you who want to donate to the Hurricane Andrew Relief Fund
                         Can Do So NOW!!!
A container is set up inside the Computer Science Office WeH 4212.
                 "Let your change make a change"
                            Thank You.

From help-lucid-emacs-request@lucid.com  Fri Sep  4 10:35:24 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA08326; Fri, 4 Sep 92 10:35:24 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA24495g; Fri, 4 Sep 92 10:24:47 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA26676; Fri, 4 Sep 92 13:35:49 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA26672; Fri, 4 Sep 92 13:35:46 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!utcsri!torn!watserv2.uwaterloo.ca!watmath!dmason@plg.uwaterloo.ca
From: Dave Mason <dmason%plg.uwaterloo.ca@lucid.com>
Subject: ``Wrong argument type:'' errors - in GNUS and elsewhere
Message-Id: <92Sep4.132045edt.28989@plg.uwaterloo.ca>
Organization: University of Waterloo
Date: Fri, 4 Sep 1992 17:20:41 GMT
Lines: 16
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

 I have just started using lucid-emacs (after using Epoch off & on for a
long while).  I am quite impressed.  It all seems nicely done.

I have seen several examples of Wrong argument type: errors.  The two most
repeatable ones:
 1) if you click button1 on a mode line, you get: windowp, nil
 2) in some newsgroups in GNUS, I get: syntax-table-p, nil
(as it happens, it's in alt.sex.  I have a couple of marked articles
followed by some deleted articles (possibly followed by unread ones).  If I
do "C-U " and answer a smaller number than the number following the marked
articles, then everything works fine.  If it has to scan back it gets
problems.)

I think I also saw another one somewhere, but I don't remember where.

	../Dave

From help-lucid-emacs-request@lucid.com  Fri Sep  4 11:08:19 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA08393; Fri, 4 Sep 92 11:08:19 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA24627g; Fri, 4 Sep 92 10:58:44 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA28342; Fri, 4 Sep 92 14:09:46 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA28334; Fri, 4 Sep 92 14:09:43 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!utcsri!skule.ecf!torn!watserv2.uwaterloo.ca!watmath!plg.uwaterloo.ca!dmason
From: dmason%plg.uwaterloo.ca@lucid.com (Dave Mason)
Subject: Re: ``Wrong argument type:'' errors - in GNUS and elsewhere
Message-Id: <92Sep4.134248edt.28989@plg.uwaterloo.ca>
Originator: root@plg.uwaterloo.ca
Organization: University of Waterloo
References: <92Sep4.132045edt.28989@plg.uwaterloo.ca>
Date: Fri, 4 Sep 1992 17:42:42 GMT
Lines: 40
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

 The comment that I meant to say is that both of the cases I mentioned were
cases of predicate functions.  How can a predicate function be passed a
wrong argument type?

 It just happened in another group, which has many deleted articles,
followed by a single unread article.  Therefore "C-U 1RET" even failed.

I fired up emacs, read the article, so now all the articles in the newsgroup
are read/deleted.  Then I restarted gnus in lemacs and jumped to the group
and tried "C-U 1RET" - still the same problem.  Here is that article in its
entirety:
------------
Newsgroups: uw.general
Path: watmath!watcgl!vhtodd
From: vhtodd@watcgl.uwaterloo.ca (Val (Todd) Hay)
Subject: Earn $10.00 doing a Psychology Experiment
Message-ID: <Bu1yqp.47t@watcgl.uwaterloo.ca>
Organization: Computer Graphics Laboratory, University of Waterloo, Ontario, Canada
Distribution: uw
Date: Fri, 4 Sep 1992 12:01:36 GMT

Earn $10.00 for completing a tactile
(touch sensation -- fingers) experiment.

It takes an hour.

We need right-handed male subjects.

If interested write back to me at this
account.

Val
------------
Nothing exciting looking in that.

Interestingly, more articles have arrived in alt.sex and I can no longer
reproduce the problem!  (Although more had arrived earlier and the problem
was still there.)  And uw.general still has the problem.

	../Dave

From help-lucid-emacs-request@lucid.com  Fri Sep  4 12:17:48 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA08618; Fri, 4 Sep 92 12:17:48 PDT
Received: by heavens-gate.lucid.com id AA24864g; Fri, 4 Sep 92 12:07:59 PDT
Received: from pat.uio.no by heavens-gate.lucid.com id AA24858g; Fri, 4 Sep 92 12:06:47 PDT
Received: from ulrik.uio.no by pat.uio.no with local-SMTP (PP) 
          id <01057-0@pat.uio.no>; Fri, 4 Sep 1992 21:17:36 +0200
Date: Fri, 4 Sep 1992 21:17:31 +0200
From: h.b.furuseth%usit.uio.no@lucid.com
Message-Id: <9209041917.AAdurin13402@durin.uio.no>
To: gwp@dido.caltech.edu (G. W. Pigman III)
Cc: help-lucid-emacs@lucid.com
In-Reply-To: gwp@dido.caltech.edu's message of Mon, 24 Aug 1992 16:47:20 PDT
Subject: Re: tags-query-replace

> complains
> 
>	   Wrong type argument: syntax-table-p, nil
> 
> What do I need to do make it work?

That does not happen to me.  But here is a fix I wrote some time ago
for lemacs-19.2/lisp/packages/etags.el.  It probably still has bugs,
but at least it works better, and gives fewer warnings when compiled.


Regards,

Hallvard

;; Enhanced tags facility for Emacs.
;; Copyright 1985, 1986, 1988, 1990 Free Software Foundation, Inc.

;; This file is part of GNU Emacs.

;; GNU Emacs is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY.  No author or distributor
;; accepts responsibility to anyone for the consequences of using it
;; or for whether it serves any particular purpose or works at all,
;; unless he says so in writing.  Refer to the GNU Emacs General Public
;; License for full details.

;; Everyone is granted permission to copy, modify and redistribute
;; GNU Emacs, but only under the conditions described in the
;; GNU Emacs General Public License.   A copy of this license is
;; supposed to have been given to you along with GNU Emacs so you
;; can know your rights and responsibilities.  It should be in a
;; file named COPYING.  Among other things, the copyright notice
;; and this notice must be preserved on all copies.

;; Created by: Joe Wells, jbw@bucsf.bu.edu
;; Created on: Thu Mar 22 20:17:40 1990
;; Last modified by: Jamie Zawinski <jwz@lucid.com>
;; Last modified on: Wed Jan  1 15:09:18 1992
;; Filename: tags-fix.el
;; Purpose: enhanced tags functionality
;; Change log: 
;; 
;; Wed Jan  1 15:09:18 1992  Jamie Zawinski <jwz@lucid.com>
;;
;;      * Added Harlan's definition of visit-tags-table.  
;;      Renamed variable tags-always-build-completion-table to
;;      tags-build-completion-table and changed its semantics.
;;      Made the explicit buffer-local tags file be searched 
;;      first instead of last.
;;
;; Sun May 10 15:48:00 1992  Hallvard B Furuseth <h.b.furuseth@usit.uio.no>
;;
;;	Inserted visit-tags-table-buffer from tags.el, handle
;;	tag-file-name=nil, improved some doc strings and variable declarations.
;;
;; Fri Mar 29 01:48:06 1991  Jamie Zawinski <jwz@lucid.com>
;;
;;	* Made link-chasing and invisible-tags-files optional.
;;	Renamed delete and remove-duplicates to avoid possible name conflicts.
;;	Moved "provide" to end.  Added some documentation.
;; 
;; Sat Sep 22 22:28:33 1990  Joseph Wells  (jbw at bucsf.bu.edu)
;; 
;; 	* Added handling for case where tag is typedef name immediately
;; 	following struct definition.
;; 
;; Thu Sep 13 21:09:15 1990  Joseph Wells  (jbw at bucsf.bu.edu)
;; 
;; 	* Fixed behavior not to bomb on missing tag table file.
;; 

;; Sat Aug 11 18:07:01 1990  Joe Wells  (jbw at dodge.uswest.com)
;; 
;; 	* Moved calling find-tag-default-hook into find-tag-default.  Put
;; 	it inside a condition-case.  Use find-tag-default method when
;; 	find-tag-default-hook fails or returns nil.
;; 
;; Wed Jul 25 17:16:43 1990  Joe Wells  (jbw at dodge.uswest.com)
;; 
;; 	* Made it an error for a buffer to have no associated tag tables.
;; 

;; enhancements:
;;  1. default tag tables based on filename
;;  2. multiple tag tables possible per file
;;  3. tag name completion for find-tag
;;  4. find-tag using regexp
;;  5. tag name completion in the buffer
;;  6. find-tag-default now works at beginning of tag
;;  7. buffer-local find-tag hook (used for info enhancement)
;;  8. buffer-local find-tag-default hook (used for info enhancement)
;;  9. show short info on tag match in minibuffer
;; 10. stack for backtracking from find-tag
;; 11. widen buffers for tags-search
;; 12. display message on successful search
;; 13. don't pull all files into memory for tags-search
;; 14. don't leave searched buffers on top of buffer list
;; 15. find-tag can specify exact symbol matches
;; 16. find-tag-default specifies an exact symbol match
;; 17. tags-files can be invisible

;; configuration variables:
;;   tag-table-alist		controls which tables apply to which buffers
;;   tags-file-name		a default tags table
;;   buffer-tag-table		another way of specifying a buffer-local table
;;   make-tags-files-invisible	whether tags tables should be very hidden
;;   tag-mark-stack-max		how many tags-based hops to remember

;; TODO:
;; 1. place cursor in echo area while searching
;; 2. document!
;; 3. determine semantics of interactively setting the tags file for a buffer

;; Comments with **** mean something is left to be done.

;; Derived from the original lisp/tags.el.

;; Ideas and code from the work of the following people:
;; Andy Norman <ange@hplb.hpl.hp.com>, author of ange-tags.el
;; Ramana Rao <rao@arisia.xerox.com>
;; John Sturdy <jcgs@harlqn.co.uk>, author of tags-helper.el
;; Henry Kautz <kautz@allegra.att.com>, author of tag-completion.el
;; Dan LaLiberte <liberte@cs.uiuc.edu>, author of local-tags.el
;; Tom Dietterich <tgd@turing.cs.orst.edu>, author of quest.el
;; The author(s) of lisp/simple.el
;; Duke Briscoe <briscoe@cs.yale.edu>
;; Lynn Slater <lrs@indetech.com>, author of location.el
;; Shinichirou Sugou <shin@sgtp.apple.juice.or.jp>
;; an unidentified anonymous elisp hacker

;; Installation instructions:
;;
;; Name this file tags-fix.el.
;; Put tags-fix.el, symlink-fix.el, symbol-syntax.el in your load path.
;;
;; Put the following code in your .emacs (or lisp/default.el)
;;
;;(fmakunbound 'visit-tags-table) ; obsolete
;;(fmakunbound 'find-tag)
;;(autoload 'find-tag "tags-fix" nil t)
;;(fmakunbound 'find-tag-other-window)
;;(autoload 'find-tag-other-window "tags-fix" nil t)
;;(fmakunbound 'lisp-complete-symbol)
;;(autoload 'lisp-complete-symbol "tags-fix" nil t)
;;(fmakunbound 'tag-complete-symbol)
;;(autoload 'tag-complete-symbol "tags-fix" nil t)
;;(fmakunbound 'next-file)
;;(autoload 'next-file "tags-fix" nil t)
;;(fmakunbound 'tags-loop-continue)
;;(autoload 'tags-loop-continue "tags-fix" nil t)
;;(fmakunbound 'tags-search)
;;(autoload 'tags-search "tags-fix" nil t)
;;(fmakunbound 'tags-query-replace)
;;(autoload 'tags-query-replace "tags-fix" nil t)
;;(fmakunbound 'display-tag-info)
;;(autoload 'display-tag-info "tags-fix" nil t)
;;(fmakunbound 'pop-tag-mark)
;;(autoload 'pop-tag-mark "tags-fix" nil t)
;;
;;(define-key esc-map "?" 'display-tag-info)
;;(define-key esc-map "*" 'pop-tag-mark)
;;
;;;; The following are not really implemented:
;;;;(fmakunbound 'set-buffer-tag-table)
;;;;(autoload 'set-buffer-tag-table "tags-fix" nil t)
;;(fmakunbound 'list-tags)
;;;;(autoload 'list-tags "tags-fix" nil t)
;;(fmakunbound 'tags-apropos)
;;;;(autoload 'tags-apropos "tags-fix" nil t)


;; Auxiliary functions

(defun tags-delete (item list)
  "delete the item from the list, testing with equal.  Copies the list."
  (cond ((null list)
	 nil)
	((equal item (car list))
	 (tags-delete item (cdr list)))
	(t
	 (cons (car list) (tags-delete item (cdr list))))))

(defun tags-remove-duplicates (list)
  "delete equal duplicates from the list; copies the list."
  (cond ((null list)
	 nil)
	(t
	 (cons (car list)
	       (tags-remove-duplicates (tags-delete (car list) (cdr list)))))))

;; derived from generate-new-buffer
(defun generate-new-buffer-name (name)
  "Foo"
  (if (not (get-buffer name))
      name
    (let ((count 1)
	  (template (concat name "<%d>"))
	  tempname)
      (catch 'found
	(while t
	  (setq tempname (format template count))
	  (if (not (get-buffer tempname))
	      (throw 'found tempname))
	  (setq count (1+ count)))))))


;; Tag tables for a buffer

(defvar tags-build-completion-table 'ask
  "*If this variable is nil, then tags completion is disabled.
If this variable is t, then things which prompt for tags will do so with 
 completion across all known tags.
If this variable is the symbol `ask', then you will be asked whether each
 tags table should be added to the completion list as it is read in.
 (With the exception that for very small tags tables, you will not be asked,
 since they can be parsed quickly.)")


(defvar tag-table-alist nil
  "*A list which determines which tags files should be active for a 
given buffer.  This is not really an association list, in that all 
elements are checked.  The CAR of each element of this list is a 
pattern against which the buffer's file name is compared; if it 
matches, then the CDR of the list should be the name of the tags
table to use.  If more than one element of this list matches the
buffer's file name, then all of the associated tags tables will be
used.  Earlier ones will be searched first.

If the CAR of elements of this list are strings, then they are treated
as regular-expressions against which the file is compared (like the
auto-mode-alist).  If they are not strings, then they are evaluated.
If they evaluate to non-nil, then the current buffer is considered to
match.

If the CDR of the elements of this list are strings, then they are
assumed to name a TAGS file.  If they name a directory, then the string
\"TAGS\" is appended to them to get the file name.  If they are not 
strings, then they are evaluated, and must return an appropriate string.

For example:
  (setq tag-table-alist
	'((\"/usr/src/public/perl/\" . \"/usr/src/public/perl/perl-3.0/\")
	 (\"\\\\.el$\" . \"/usr/local/emacs/src/\")
	 (\"/jbw/gnu/\" . \"/usr15/degree/stud/jbw/gnu/\")
	 (\"\" . \"/usr/local/emacs/src/\")
	 ))

This means that anything in the /usr/src/public/perl/ directory should use
the TAGS file /usr/src/public/perl/perl-3.0/TAGS; and file ending in .el should
use the TAGS file /usr/local/emacs/src/TAGS; and anything in or below the
directory /jbw/gnu/ should use the TAGS file /usr15/degree/stud/jbw/gnu/TAGS.
A file called something like \"/usr/jbw/foo.el\" would use both the TAGS files
/usr/local/emacs/src/TAGS and /usr15/degree/stud/jbw/gnu/TAGS (in that order)
because it matches both patterns.

If the buffer-local variable `buffer-tag-table' is set, then it names a tags
table that is searched before all others when find-tag is executed from this
buffer.

If there is a file called \"TAGS\" in the same directory as the file in 
question, then that tags file will always be used as well (after the
`buffer-tag-table' but before the tables specified by this list.)

If the variable tags-file-name is set, then the tags file it names will apply
to all buffers (for backwards compatibility.)  It is searched first.
")

(defvar buffer-tag-table nil
  "*The name of one TAGS table to be used for this buffer in addition to the
TAGS tables that the variable `tag-table-alist' specifies.  You can set this
with meta-x set-buffer-tag-table.  See the documentation for the variable
`tag-table-alist' for more information.")
(make-variable-buffer-local 'buffer-tag-table)

(defvar tags-file-name nil
  "*The name of the tags-table used by all buffers.  This is for backwards
compatibility, and is largely supplanted by the variable tag-table-alist.")
;; (setq tags-file-name nil)  ; nuke previous value.  Is this cool?

;; This will be used if it's loaded; don't force it on those who don't want it.
;;(autoload 'symlink-expand-file-name "symlink-fix")

(defun buffer-tag-table-list ()
  "Returns a list (ordered) of the tags tables which should be used for 
the current buffer."
  (let (result expression)
    (if buffer-tag-table
	(setq result (cons buffer-tag-table result)))
    (if (file-readable-p (concat default-directory "TAGS"))
	(setq result (cons (concat default-directory "TAGS") result)))
    (let ((key (or buffer-file-name
		   (concat default-directory (buffer-name))))
	  (alist tag-table-alist))
      (while alist
	(setq expression (car (car alist)))
	;; If the car of the alist item is a string, apply it as a regexp
	;; to the buffer-file-name.  Otherwise, evaluate it.  If the
	;; regexp matches, or the expression evaluates non-nil, then this
	;; item in tag-table-alist applies to this buffer.
	(if (if (stringp expression)
		(string-match (car (car alist)) key)
	      (condition-case nil
		  (eval expression)
		(error nil)))
	    ;; Now evaluate the cdr of the alist item to get the name of
	    ;; the tag table file.
	    (progn
	      (setq expression 
		    (condition-case nil
			(eval (cdr (car alist)))
		      (error nil)))
	      (if (stringp expression)
		  (setq result (cons expression result))
		(error "Expression in tag-table-alist evaluated to non-string"))))
	(setq alist (cdr alist))))
    (or result tags-file-name
	;; **** I don't know if this is the right place to do this,
	;; **** Maybe it would be better to do this after (delq nil result).
	(call-interactively 'visit-tags-table))
    (if tags-file-name
	(setq result (nconc result (list tags-file-name))))
    (setq result
	  (mapcar
	   (function
	    (lambda (name)
	      (if (file-directory-p name)
		  (setq name (concat name "TAGS")))
	      (if (file-readable-p name)
		  (save-excursion
		    ;; get-tag-table-buffer has side-effects
		    (set-buffer (get-tag-table-buffer name))
		    buffer-file-name))))
	   result))
    (setq result (delq nil result))
    (or result (error "Buffer has no associated tag tables"))
    (tags-remove-duplicates (nreverse result))))

(defun visit-tags-table (file)
  "Tell tags commands to use tags table file FILE first.
FILE should be the name of a file created with the `etags' program.
A directory name is ok too; it means file TAGS in that directory."
  (interactive (list (read-file-name "Visit tags table: (default TAGS) "
				     default-directory
				     (expand-file-name "TAGS" default-directory)
				     t)))
  (if (string-equal file "") 
      (setq tags-file-name nil)
      (progn
        (setq file (expand-file-name file))
        (if (file-directory-p file)
            (setq file (expand-file-name "TAGS" file)))
        (setq tags-file-name file))))

;; **** What should the semantics of this be?
(defun set-buffer-tag-table (file)
  "In addition to the tags tables specified by the variable `tag-table-alist',
each buffer can have one additional table.  This command sets that.
See the documentation for the variable `tag-table-alist' for more information."
  (interactive
   (list
     (read-file-name "Visit tags table: (directory sufficient) "
		     nil default-directory t)))
  (or file (error "No TAGS file name supplied"))
  (setq file (expand-file-name file))
  (if (file-directory-p file)
      (setq file (concat file "TAGS")))
  (or (file-exists-p file) (error "TAGS file missing: %s" file))
  (setq buffer-tag-table file))


;; Manipulating the tag table buffer

(defconst tag-table-completion-status nil
  "Indicates whether a completion table has been built, or has explicitly not 
been built.  this is nil, t, or 'disabled.")
(make-variable-buffer-local 'tag-table-completion-status)

(defvar make-tags-files-invisible nil
  "*If true, TAGS-files will not show up in buffer-lists or be 
selectable (or deletable.)")

(defconst tag-table-files nil
  "If the current buffer is a TAGS table, this holds a list of the files 
referenced by this file, or nil if that hasn't been computed yet.")
(make-variable-buffer-local 'tag-table-files)

(defun get-tag-table-buffer (tag-table)
  "Returns a buffer visiting the give TAGS table, reverting if appropriate,
and possibly building a completion-table."
  (or (stringp tag-table)
      (error "Bad tags file name supplied: %s" tag-table))
  ;; add support for removing symbolic links from name
  (if (fboundp 'symlink-expand-file-name)
      (setq tag-table (symlink-expand-file-name tag-table)))
  (let (buf build-completion check-name)
    (setq buf (get-file-buffer tag-table))
    (or buf
	(if (file-readable-p tag-table)
	    (setq buf (find-file-noselect tag-table)
		  check-name t)
	  (error "No such tags file: %s" tag-table)))
    (save-excursion
      (set-buffer buf)
      ;; make the TAGS buffer invisible
      (if (and check-name
	       make-tags-files-invisible
	       (string-match "\\`[^ ]" (buffer-name)))
	  (rename-buffer (generate-new-buffer-name
			  (concat " " (buffer-name)))))
      (or (verify-visited-file-modtime buf)
	  (cond ((yes-or-no-p
		  (format "Tags file %s has changed, read new contents? "
			  tag-table))
		 (revert-buffer t t)
		 (if (eq tag-table-completion-status t)
		     (setq tag-table-completion-status nil))
		 (setq tag-table-files nil))))
      (or (eq (char-after 1) ?\f)
	  (error "File %s not a valid tags file" tag-table))
      (or (memq tag-table-completion-status '(t disabled))
	  (setq build-completion t))
      (and build-completion
	   (if (cond
		((eq tags-build-completion-table nil)
		 nil)
		((eq tags-build-completion-table t)
		 t)
		((eq tags-build-completion-table 'ask)
		 ;; don't bother asking for small ones
		 (or (< (buffer-size) 20000)
		     (y-or-n-p
		      (format "Build tag completion table for %s? "
			      tag-table))))
		(t (error
		    "tags-build-completion-table is not t, nil, or ask.")))
	       (condition-case foo
		   (progn
		     (add-to-tag-completion-table)
		     (setq tag-table-completion-status t))
		 ;; Allow user to C-g out correctly
		 (quit
		  (setq tag-table-completion-status nil)
		  (setq quit-flag t)
		  (eval t)))
	     (setq tag-table-completion-status 'disabled))))
    buf))

;; This function is unchanged from lisp/tags.el:
(defun file-of-tag ()
  "Return the file name of the file whose tags point is within.
Assumes the tag table is the current buffer.
File name returned is relative to tag table file's directory."
  (let ((opoint (point))
	prev size)
    (save-excursion
     (goto-char (point-min))
     (while (< (point) opoint)
       (forward-line 1)
       (end-of-line)
       (skip-chars-backward "^,\n")
       (setq prev (point))
       (setq size (read (current-buffer)))
       (goto-char prev)
       (forward-line 1)
       (forward-char size))
     (goto-char (1- prev))
     (buffer-substring (point)
		       (progn (beginning-of-line) (point))))))

(defun tag-table-files (tag-table)
  "Returns a list of the files referenced by the named TAGS table."
  (save-excursion
    (set-buffer (get-tag-table-buffer tag-table))
    (or tag-table-files
	(let (files prev size)
	  (goto-char (point-min))
	  (while (not (eobp))
	    (forward-line 1)
	    (end-of-line)
	    (skip-chars-backward "^,\n")
	    (setq prev (point))
	    (setq size (read (current-buffer)))
	    (goto-char prev)
	    (setq files (cons (expand-file-name
			       (buffer-substring (1- (point))
						 (save-excursion
						   (beginning-of-line)
						   (point)))
			       default-directory)
			      files))
	    (forward-line 1)
	    (forward-char size))
	  (setq tag-table-files (nreverse files))))
    tag-table-files))

;; **** should this be on previous page?
(defun buffer-tag-table-files ()
  "Returns a list of all files referenced by all TAGS tables that 
this buffer uses."
  (apply (function append)
	 (mapcar (function tag-table-files)
		 (buffer-tag-table-list))))


;; Building the completion table

;; Test cases for building completion table; must handle these properly:
;; Lisp_Int, XSETINT, current_column 60,2282
;;	   Lisp_Int, XSETINT, point>NumCharacters ? 0 : CharAt(363,9935
;;	   Lisp_Int, XSETINT, point<=FirstCharacter ? 0 : CharAt(366,10108
;;	 point<=FirstCharacter || CharAt(378,10630
;;	 point>NumCharacters || CharAt(382,10825
;; DEFUN ("x-set-foreground-color", Fx_set_foreground_color,191,4562
;; DEFUN ("x-set-foreground-color", Fx_set_foreground_color,191,4562
;; DEFUN ("*", Ftimes,1172,32079
;; DEFUN ("/=", Fneq,1035,28839
;; defun_internal 4199,101362
;; int pure[PURESIZE / sizeof 53,1564
;; char staticvec1[NSTATICS * sizeof 667,17608
;;  Date: 04 May 87 23:53:11 PDT 26,1077
;; #define anymacroname(324,4344
;; (define-key ctl-x-map 311,11784
;; (define-abbrev-table 'c-mode-abbrev-table 24,1016
;; static char *skip_white(116,3443
;; static foo 348,11643
;; (defun texinfo-insert-@code 91,3358
;; (defvar texinfo-kindex)29,1105
;; (defun texinfo-format-\. 548,18376
;; (defvar sm::menu-kludge-y 621,22726
;; (defvar *mouse-drag-window* 103,3642
;; (defun simula-back-level(317,11263
;; } DPxAC,380,14024
;; } BM_QCB;69,2990
;; #define MTOS_DONE\t

;; "^[^ ]+ +\\([^ ]+\\) "

;; void *find_cactus_segment(116,2444
;; void *find_pdb_segment(162,3688
;; void init_dclpool(410,10739
;; WORD insert_draw_command(342,8881
;; void *req_pdbmem(579,15574

(defvar tag-completion-table (make-vector 511 0))

(defvar tag-symbol)
(defvar tag-table-symbol)
(defvar tag-symbol-tables)
(defvar buffer-tag-table-list)

;; make two versions of this, macro and non-macro,
;; and have the correct one used depending whether it's byte compiled
;; (well I think that's a little silly -- only lusers run interpreted! -jwz)
(defmacro intern-tag-symbol (tag)
  (`(progn
      (setq tag-symbol (intern (, tag) tag-completion-table)
	    tag-symbol-tables (and (boundp tag-symbol)
				   (symbol-value tag-symbol)))
      (or (memq tag-table-symbol tag-symbol-tables)
	  (set tag-symbol (cons tag-table-symbol tag-symbol-tables))))))

(defun intern-tag-symbol2 (tag)
  (setq tag-symbol (intern tag tag-completion-table)
	tag-symbol-tables (and (boundp tag-symbol)
			       (symbol-value tag-symbol)))
  (or (memq tag-table-symbol tag-symbol-tables)
      (set tag-symbol (cons tag-table-symbol tag-symbol-tables))))

;; This won't be evaluated at during byte-compilation, thus ensuring the
;; macro version will be used then.  Since the macro version is too slow
;; to use unless its usages are byte-compiled, we want to make sure we use
;; the non-macro version if we are using the non byte-compiled version of
;; add-to-tag-completion-table.
(fset 'intern-tag-symbol (symbol-function 'intern-tag-symbol2))

;; Can't use "\\s " in these patterns because that will include newline
(defconst tags-DEFUN-pattern
          "DEFUN[ \t]*(\"\\([^\"]+\\)\",[ \t]*\\(\\(\\sw\\|\\s_\\)+\\),\C-?")
(defconst tags-array-pattern ".*[ \t]+\\([^ \[]+\\)\\[")
(defconst tags-def-pattern
          "\\(.*[ \t]+\\)?\\(\\(\\sw\\|\\s_\\)+\\)[ ();,\t]*\C-?"
;; "\\(.*[ \t]+\\)?\\(\\(\\sw\\|\\s_\\)+\\)[ ()]*\C-?"
;; "\\(\\sw\\|\\s_\\)+[ ()]*\C-?"
      )
(defconst tags-file-pattern "^\f\n\\([^,]+\\),[0-9]+\n")

(defun add-to-tag-completion-table ()
  "Sucks the current buffer (a TAGS table) into the completion-table."
  (message "Adding %s to tags completion table..."
	   buffer-file-name)
  (goto-char (point-min))
  (let ((tag-table-symbol (intern buffer-file-name tag-completion-table))
	(original-syntax-table (syntax-table))
	;; tag-table-symbol is used by intern-tag-symbol
	filename file-type name name2 tag-symbol eol-point
	tag-symbol-tables file-type-syntax-table)
    (unwind-protect
	;; loop over the files mentioned in the TAGS file
	;; for each file, try to find its major-mode,
	;; then process tags appropriately
	(while (looking-at tags-file-pattern)
	  (goto-char (match-end 0))
	  (setq filename (buffer-substring (match-beginning 1) (match-end 1)))
	  (setq filename (file-name-sans-versions filename))
	  ;; clear loop variables
	  (setq file-type nil)
	  (setq file-type-syntax-table nil)
	  (setq name nil name2 nil)
	  (let ((alist auto-mode-alist)
		(case-fold-search (eq system-type 'vax-vms)))
	    ;; loop over pairs of regexps and major-modes
	    (while (and (not file-type) alist)
	      (if (string-match (car (car alist)) filename)
		  (setq file-type (cdr (car alist))))
	      (setq alist (cdr alist))))
	  ;; try to find a syntax table whose name begins with the major-mode
	  (if file-type
	      (setq file-type-syntax-table
		    (intern (concat (symbol-name file-type)
				    "-syntax-table"))))
	  ;;	  (message "%s %s" filename file-type-syntax-table)
	  (if (and file-type-syntax-table (boundp file-type-syntax-table))
	      (set-syntax-table (symbol-value file-type-syntax-table))
	    (set-syntax-table (standard-syntax-table)))
	  ;; loop over the individual tag lines
	  (while (not (or (eobp) (eq (following-char) ?\f)))
	    (cond ((and (eq file-type 'c-mode)
			(let ((case-fold-search nil))
			  (looking-at "DEFUN[ \t]")))
		   (or (looking-at tags-DEFUN-pattern)
		       (error "DEFUN doesn't fit pattern"))
		   (setq name (buffer-substring (match-beginning 1)
						(match-end 1)))
		   (setq name2 (buffer-substring (match-beginning 2)
						 (match-end 2))))
		  ((looking-at "\\s ")
		   ;; skip probably bogus entry:
		   )
		  ((and (eq file-type 'c-mode)
			(looking-at ".*\\["))
		   (or (looking-at tags-array-pattern)
		       (error "array definition doesn't fit pattern"))
		   (setq name (buffer-substring (match-beginning 1)
						(match-end 1))))
		  ((looking-at tags-def-pattern)
		   (setq name (buffer-substring (match-beginning 2)
						(match-end 2)))))
	    ;; add the tags we found to the completion table
	    (if name (intern-tag-symbol name))
	    (if name2 (intern-tag-symbol name2))
	    (forward-line 1)))
      (set-syntax-table original-syntax-table))
    (or (eobp) (error "Bad TAGS file")))
  (message "Adding %s to tags completion table...done"
	   buffer-file-name))


;; Interactive find-tag

(defvar find-tag-default-hook nil
  "****Function to call to create a default tag.
Make it buffer-local in a mode hook.
The function is called with no args.")

(defvar find-tag-hook nil
  "****Function to call after a hook is found.
Make it buffer-local in a mode hook.
The function is called with no args.")

;; Return a default tag to search for, based on the text at point.
(defun find-tag-default ()
  (or (and (boundp 'find-tag-default-hook)
	   (not (memq find-tag-default-hook '(nil find-tag-default)))
	   (condition-case data
	       (funcall find-tag-default-hook)
	     (error
	      (message "value of find-tag-default-hook signalled error: %s"
		       data)
	      (sit-for 1)
	      nil)))
      (save-excursion
	(if (not (memq (char-syntax (preceding-char)) '(?w ?_)))
	    (while (not (looking-at "\\sw\\|\\s_\\|\\'"))
	      (forward-char 1)))
	(while (looking-at "\\sw\\|\\s_")
	  (forward-char 1))
	(if (re-search-backward "\\sw\\|\\s_" nil t)
	    (regexp-quote
	     (progn (forward-char 1)
		    (buffer-substring (point)
				      (progn (forward-sexp -1)
					     (while (looking-at "\\s'")
					       (forward-char 1))
					     (point)))))
	  nil))))

;;"\\(\\s \\|\\s.\\|\\s\(\\|\\s\)\\|\\s'\\|\\s\"\\|\\s$\\|\\s/\\|\\s\\\\|\\s<\\|\\s>\\)"
;;"[ \";]"

;;(defun non-symbol-char-regexp ()
;;  (let ((i 0)
;;	(numchars (length (syntax-table)))
;;	symbol-chars)
;;    (while (< i numchars)
;;      (if (memq (char-syntax i) '(?w ?_))
;;	  (setq symbol-chars (cons i symbol-chars)))
;;      (setq i (1+ i)))
;;    (concat symbol-chars)))

;; This function depends on the following symbols being bound properly:
;; buffer-tag-table-list,
;; tag-symbol-tables (value irrelevant, bound outside for efficiency)
(defun tag-completion-predicate (tag-symbol)
  (and (boundp tag-symbol)
       (setq tag-symbol-tables (symbol-value tag-symbol))
       (catch 'found
	 (while tag-symbol-tables
	   (if (memq (car tag-symbol-tables) buffer-tag-table-list)
	       (throw 'found t))
	   (setq tag-symbol-tables (cdr tag-symbol-tables))))))

(defun buffer-tag-table-symbol-list ()
  (mapcar (function
	   (lambda (table-name)
	     (intern table-name tag-completion-table)))
	  (buffer-tag-table-list)))
    
;;(defun strip-regexp-border (pattern)
;;  ;; Avoid displaying ugly regexp borders to the user
;;  (cond (pattern
;;	 (if (or (string-match "\\`\\[[^\]]+\\]" pattern)
;;		 ;;(string-match "\\`\\\\(\\([^\\\\]\\|\\\\[^\)]\\)+\\\\)"
;;		 ;;              pattern)
;;		 ;;(string-match "\\`\\\\[b<>`'WsS]" pattern)
;;		 )
;;	     (setq pattern (substring pattern
;;				      (match-end 0))))
;;	 (if (or (string-match "\\[[^\]]+\\]\\'" pattern)
;;		 ;;(string-match "\\\\(\\([^\\\\]\\|\\\\[^\)]\\)+\\\\)\\'"
;;		 ;;              pattern)
;;		 ;;(string-match "\\\\[b<>`'WsS]\\'" pattern)
;;		 )
;;	     (setq pattern (substring pattern 0
;;				      (match-beginning 0))))))
;;  pattern)

(defun find-tag-tag (prompt)
  (let* ((default (find-tag-default))
	 (buffer-tag-table-list (buffer-tag-table-symbol-list))
	 tag-symbol-tables tag-name)
    (setq tag-name
	  (completing-read
	   (if default
	       (format "%s(default %s) " prompt default)
	     prompt)
	   tag-completion-table 'tag-completion-predicate nil nil))
    (if (string-equal tag-name "")
	(list default)			;indicate exact symbol match
      tag-name)))

(defvar last-tag-data nil
"Information for continuing a tag search.
Is of the form (TAG POINT TAG-TABLE TAG-TABLE ...).")

(defvar tags-loop-form nil
  "Form for tags-loop-continue to eval to process one file.
If it returns nil, it is through with one file; move on to next.")

(autoload 'get-symbol-syntax-table "symbol-syntax")

(defun find-tag-internal (tagname)
  "Foo"
  (let ((local-find-tag-hook find-tag-hook)
	(next (null tagname))
	(exact (consp tagname))
	symbol-border tag-target
	tag-tables tag-table-point file linebeg startpos target buf
	offset found pat syn-tab)
    (if exact (setq tagname (car tagname)))
    (cond (next
	   (setq tag-tables (cdr (cdr last-tag-data)))
	   (setq tagname (car last-tag-data))
	   (setq tag-table-point (car (cdr last-tag-data))))
	  (t
	   (setq tag-tables (buffer-tag-table-list))
	   (setq tag-table-point 1)))
    ;; If tagname is a list: (TAGNAME), this indicates requiring an exact
    ;; symbol match.  Similarly, \_ in the tagname is used to indicate a
    ;; symbol boundary.
    (cond ((or exact
	       (string-match "\\\\_" tagname))
	   (setq symbol-border t)
	   (if exact
	       (setq tag-target (concat "\\_" tagname "\\_"))
	     (setq tag-target (copy-sequence tagname)))
	   (while (string-match "\\\\_" tag-target)
	     (aset tag-target (1- (match-end 0)) ?b))
	   (setq syn-tab (get-symbol-syntax-table (syntax-table)))
	   ;;	   (let ((i 0)
	   ;;		 (len (length tag-target))
	   ;;		 j)
	   ;;	     (while (< i len)
	   ;;	       (cond ((eq ?\\ (aref tag-target i))
	   ;;		      (setq j (1+ i))
	   ;;		      (if (eq ?_ (aref tag-target j))
	   ;;			  (aset tag-target j ?b))))
	   ;;	       (setq i (1+ i))))
	   )
	  (t
	   (setq tag-target tagname)
	   (setq syn-tab (syntax-table))))
    (save-excursion
      (catch 'found
	(while tag-tables
	  (set-buffer (get-tag-table-buffer (car tag-tables)))
	  (bury-buffer (current-buffer))
	  (goto-char (or tag-table-point (point-min)))
	  (setq tag-table-point nil)
	  (let ((osyn (syntax-table))
		case-fold-search)
	    (set-syntax-table syn-tab)
	    (unwind-protect
		;; **** should there be support for non-regexp tag searches?
		(while (re-search-forward tag-target nil t)
		  (if (looking-at "[^\n\C-?]*\C-?")
		      (throw 'found t)))
	      (set-syntax-table osyn)))
	  (setq tag-tables (cdr tag-tables)))
	(error "No %sentries %s %s"
	       (if next "more " "")
	       (if exact "matching" "containing")
	       tagname))
      (search-forward "\C-?")
      (setq file (expand-file-name (file-of-tag)))
      (setq linebeg
	    (buffer-substring (1- (point))
			      (save-excursion (beginning-of-line) (point))))
      (search-forward ",")
      (setq startpos (read (current-buffer)))
      (setq last-tag-data (nconc (list tagname (point)) tag-tables)))
    (setq buf (find-file-noselect file))
    (save-excursion
      (set-buffer buf)
      (save-excursion
	(save-restriction
	  (widen)
	  (setq offset 1000)
	  (setq pat (concat "^" (regexp-quote linebeg)))
	  (or startpos (setq startpos (point-min)))
	  (while (and (not found)
		      (progn
			(goto-char (- startpos offset))
			(not (bobp))))
	    (setq found (re-search-forward pat (+ startpos offset) t))
	    (setq offset (* 3 offset)))
	  (or found
	      (re-search-forward pat nil t)
	      (error "%s not found in %s" pat file))
	  (beginning-of-line)
	  (setq startpos (point)))))
    (cons buf startpos)))

(defun find-tag (tagname &optional other-window)
  "*Find tag whose name contains TAGNAME.
 Selects the buffer that the tag is contained in
and puts point at its definition.
 If TAGNAME is a null string, the expression in the buffer
around or before point is used as the tag name.
 If called interactively with a numeric argument, searches for the next tag
in the tag table that matches the tagname used in the previous find-tag.
 If second arg OTHER-WINDOW is non-nil, uses another window to display
the tag.

This version of this function supports multiple active tags tables,
and completion.

Variables of note:

  tag-table-alist		controls which tables apply to which buffers
  tags-file-name		a default tags table
  tags-build-completion-table   controls completion behavior
  buffer-tag-table		another way of specifying a buffer-local table
  make-tags-files-invisible	whether tags tables should be very hidden
  tag-mark-stack-max		how many tags-based hops to remember"
  (interactive (if current-prefix-arg
		   '(nil nil)
		 (list (find-tag-tag "Find tag: ") nil)))
  (let* ((local-find-tag-hook find-tag-hook)
	 (next (null tagname))
	 (result (find-tag-internal tagname))
	 (tag-buf (car result))
	 (tag-point (cdr result)))
    ;; push old position
    (if (or (not next)
	    (not (memq last-command
		       '(find-tag find-tag-other-window tags-loop-continue))))
	(push-tag-mark))
    (if other-window
	(pop-to-buffer tag-buf)
      (switch-to-buffer tag-buf))
    (widen)
    (push-mark)
    (goto-char tag-point)
    (if find-tag-hook
	(funcall find-tag-hook)
      (if local-find-tag-hook
	  (funcall local-find-tag-hook))))
  (setq tags-loop-form (list 'find-tag nil nil))
  ;; Return t in case used as the tags-loop-form.
  t)

;; This function is unchanged from lisp/tags.el:
(defun find-tag-other-window (tagname)
  "*Find tag whose name contains TAGNAME.
 Selects the buffer that the tag is contained in in another window
and puts point at its definition.
 If TAGNAME is a null string, the expression in the buffer
around or before point is used as the tag name.
 If second arg NEXT is non-nil (interactively, with prefix arg),
searches for the next tag in the tag table
that matches the tagname used in the previous find-tag.

This version of this function supports multiple active tags tables,
and completion.

Variables of note:

  tag-table-alist		controls which tables apply to which buffers
  tags-file-name		a default tags table
  tags-build-completion-table   controls completion behavior
  buffer-tag-table		another way of specifying a buffer-local table
  make-tags-files-invisible	whether tags tables should be very hidden
  tag-mark-stack-max		how many tags-based hops to remember"
  (interactive (if current-prefix-arg
		   '(nil)
		 (list (find-tag-tag "Find tag other window: "))))
  (find-tag tagname t))


;; Completion on tags in the buffer

(defun lisp-complete-symbol ()
  "*Perform completion on Lisp symbol preceding point.
That symbol is compared against the symbols that exist
and any additional characters determined by what is there
are inserted.
If the symbol starts just after an open-parenthesis,
only symbols with function definitions are considered.
Otherwise, all symbols with function definitions, values
or properties are considered."
  (interactive)
  (let ((buffer-syntax (syntax-table)))
    (unwind-protect
	(progn
	  (if lisp-mode-syntax-table
	      (set-syntax-table lisp-mode-syntax-table))
	  (let ((fn (save-excursion
		      (backward-sexp 1)
		      (while (= (char-syntax (following-char)) ?\')
			(forward-char 1))
		      (eq (preceding-char) ?\())))
	    (complete-symbol
	     obarray
	     (if fn
		 'fboundp
	       (function
		(lambda (sym)
		  (or (boundp sym)
		      (fboundp sym)
		      (symbol-plist sym)))))
	     (if (not fn)
		 ;; prettify the completion list by marking fns with " <f>"
		 (function
		  (lambda (list)
		    (let (new)
		      (while list
			(setq new (cons (if (fboundp (intern (car list)))
					    (list (car list) " <f>")
					  (car list))
					new))
			(setq list (cdr list)))
		      (nreverse new))))))))
      ;; unwind-protected
      (set-syntax-table buffer-syntax))))

(defun complete-symbol (&optional table predicate prettify)
  (let* ((end (point))
	 (beg (save-excursion
		(backward-sexp 1)
		(while (= (char-syntax (following-char)) ?\')
		  (forward-char 1))
		(point)))
	 (pattern (buffer-substring beg end))
	 (table (or table obarray))
	 (completion (try-completion pattern table predicate)))
    (cond ((eq completion t))
	  ((null completion)
	   (message "Can't find completion for \"%s\"" pattern)
	   (ding))
	  ((not (string-equal pattern completion))
	   (delete-region beg end)
	   (insert completion))
	  (t
	   (message "Making completion list...")
	   (let ((list (all-completions pattern table predicate)))
	     (if prettify
		 (setq list (funcall prettify list)))
	     (with-output-to-temp-buffer "*Help*"
	       (display-completion-list list)))
	   (message "Making completion list...%s" "done")))))

(defun tag-complete-symbol ()
  "The function used to do tags-completion (using 'tag-completion-predicate)."
  (interactive)
  (let* ((buffer-tag-table-list (buffer-tag-table-symbol-list))
	 tag-symbol-tables)
    (complete-symbol tag-completion-table 'tag-completion-predicate)))


;; Applying a command to files mentioned in tag tables

(defvar next-file-list nil
  "List of files for next-file to process.")

(defun next-file (&optional initialize)
  "Select next file among files in current tag table(s).
Non-nil argument (prefix arg, if interactive) initializes to the beginning 
of the list of files in the (first) tag table."
  (interactive "P")
  (if initialize
      (setq next-file-list (buffer-tag-table-files)))
  (or next-file-list
      (error "All files processed."))
  (let* ((file (car next-file-list))
	 (buf (get-file-buffer file))
	 new)
    (setq next-file-list (cdr next-file-list))
    (or buf
	(setq buf (find-file-noselect file)
	      new t))
    (switch-to-buffer buf t)
    (widen)
    (cond ((> (point) (point-min))
	   (push-mark nil t)
	   (goto-char (point-min))))
    new))

(defun tags-loop-continue (&optional first-time)
  "Continue last \\[tags-search] or \\[tags-query-replace] command.
Used noninteractively with non-nil argument
to begin such a command.  See variable tags-loop-form."
  (interactive)
  (let (buf-is-new message)
    (cond (first-time
	   (setq buf-is-new (next-file t))
	   (message "Scanning file %s..." buffer-file-name)
	   (setq message t)))
    ;; **** (let ((cursor-in-echo-area t)))
    (while (not (eval tags-loop-form))
      (if (and buf-is-new (not (buffer-modified-p)))
	  (kill-buffer (current-buffer)))
      (setq buf-is-new (next-file))
      (message "Scanning file %s..." buffer-file-name)
      (setq message t))
    (switch-to-buffer (current-buffer))
    (if message
	(message "Scanning file %s...done" buffer-file-name))))

;; This function is unchanged from lisp/tags.el:
(defun tags-search (regexp)
  "Search through all files listed in tag table for match for REGEXP.
Stops when a match is found.
To continue searching for next match, use command \\[tags-loop-continue].

See documentation of variable tag-table-alist."
  (interactive "sTags search (regexp): ")
  (if (and (equal regexp "")
	   (eq (car tags-loop-form) 're-search-forward))
      (tags-loop-continue nil)
    (setq tags-loop-form
	  (list 're-search-forward regexp nil t))
    (tags-loop-continue t)))

;; This function is unchanged from lisp/tags.el:
(defun tags-query-replace (from to &optional delimited)
  "Query-replace-regexp FROM with TO through all files listed in tag table.
Third arg DELIMITED (prefix arg) means replace only word-delimited matches.
If you exit (C-G or ESC), you can resume the query-replace
with the command \\[tags-loop-continue].

See documentation of variable tag-table-alist."
  (interactive "sTags query replace (regexp): \nsTags query replace %s by: \nP")
  (setq tags-loop-form
	(list 'and (list 'save-excursion
			 (list 're-search-forward from nil t))
	      (list 'not (list 'perform-replace from to t t 
			       (not (null delimited))))))
  (tags-loop-continue t))


;; Miscellaneous

;; **** need to alter
;; This function is unchanged from lisp/tags.el:
(defun list-tags (string)
  "Display list of tags in file FILE.
FILE should not contain a directory spec
unless it has one in the tag table."
  (interactive "sList tags (in file): ")
  (with-output-to-temp-buffer "*Tags List*"
    (princ "Tags in file ")
    (princ string)
    (terpri)
    (save-excursion
     (visit-tags-table-buffer)
     (goto-char 1)
     (search-forward (concat "\f\n" string ","))
     (forward-line 1)
     (while (not (or (eobp) (looking-at "\f")))
       (princ (buffer-substring (point)
				(progn (skip-chars-forward "^\C-?")
				       (point))))
       (terpri)
       (forward-line 1)))))

;; **** need to alter
;; This function is unchanged from lisp/tags.el:
(defun tags-apropos (string)
  "Display list of all tags in tag table REGEXP matches."
  (interactive "sTag apropos (regexp): ")
  (with-output-to-temp-buffer "*Tags List*"
    (princ "Tags matching regexp ")
    (prin1 string)
    (terpri)
    (save-excursion
     (visit-tags-table-buffer)
     (goto-char 1)
     (while (re-search-forward string nil t)
       (beginning-of-line)
       (princ (buffer-substring (point)
				(progn (skip-chars-forward "^\C-?")
				       (point))))
       (terpri)
       (forward-line 1)))))

;; **** copied from tags.el
(defun visit-tags-table-buffer ()
  "Select the buffer containing the current tag table.
This is a file whose name is in the variable tags-file-name."
  (or tags-file-name
      (call-interactively 'visit-tags-table))
  (set-buffer (or (get-file-buffer tags-file-name)
		  (progn
		    (setq tag-table-files nil)
		    (find-file-noselect tags-file-name))))
  (or (verify-visited-file-modtime (get-file-buffer tags-file-name))
      (cond ((yes-or-no-p "Tags file has changed, read new contents? ")
	     (revert-buffer t t)
	     (setq tag-table-files nil))))
  (or (eq (char-after 1) ?\^L)
      (error "File %s not a valid tag table" tags-file-name)))


;; Sample uses of find-tag-hook and find-tag-default-hook

;; Example buffer-local tag finding

(or (boundp 'emacs-lisp-mode-hook)
    (setq emacs-lisp-mode-hook nil))
(if (eq (car-safe emacs-lisp-mode-hook) 'lambda)
    (setq emacs-lisp-mode-hook (list emacs-lisp-mode-hook)))
(or (memq 'setup-emacs-lisp-default-tag-hook emacs-lisp-mode-hook)
    (setq emacs-lisp-mode-hook
	  (cons 'setup-emacs-lisp-default-tag-hook emacs-lisp-mode-hook)))

(defun setup-emacs-lisp-default-tag-hook ()
  (cond ((eq major-mode 'emacs-lisp-mode)
	 (make-variable-buffer-local 'find-tag-default-hook)
	 (setq find-tag-default-hook 'emacs-lisp-default-tag))))
;; Run it once immediately
(setup-emacs-lisp-default-tag-hook)
(if (get-buffer "*scratch*")
    (save-excursion (set-buffer "*scratch*")
		    (setup-emacs-lisp-default-tag-hook)))

(defun emacs-lisp-default-tag ()
  "Function to return a default tag for Emacs-Lisp mode."
  (let ((tag (or (variable-at-point)
		 (function-called-at-point))))
    (if tag (symbol-name tag))))

;;(defun Info-find-tag-hook ()
;;  "Function to call after finding a tag in Info-mode."
;;  (let ((onode Info-current-node)
;;	(ofile Info-current-file)
;;	(opoint (point)))
;;    (if (not (string= "*info*" (buffer-name)))
;;	(progn				; replace current *info* file
;;	  (kill-buffer "*info*")
;;	  (rename-buffer "*info*")))
;;    (or (eq major-mode 'Info-mode)
;;	(Info-mode))
;;    (setq Info-current-file
;;	  (file-name-sans-versions buffer-file-name))
;;    (Info-select-node)
;;    (or (and (equal onode Info-current-node)
;;	     (equal ofile Info-current-file))
;;	(setq Info-history (cons (list ofile onode opoint)
;;				 Info-history)))))
;;
;;;; Info-mode does not have a hook, so patch in the necessary calls.
;;
;;(require 'info)
;;
;;;; Only do this once
;;(fset 'Info-mode
;;      (append (symbol-function 'Info-mode)
;;	      (list '(make-local-variable 'find-tag-hook)
;;		    '(setq find-tag-hook 'Info-find-tag-hook)
;;		    '(modify-syntax-entry ?\' "."))))


;; Display short info on tag in minibuffer

(if (null (lookup-key esc-map "?"))
    (define-key esc-map "?" 'display-tag-info))

(defun display-tag-info (tagname)
  "Prints a description of the first tag matching TAGNAME in the echo area.
If this is an elisp function, prints something like \"(defun foo (x y z)\".
That is, is prints the first line of the definition of the form.
If this is a C-defined elisp function, it does something more clever."
  (interactive (if current-prefix-arg
		   '(nil)
		 (list (find-tag-tag "Display tag info: "))))
  (let* ((results (find-tag-internal tagname))
	 (tag-buf (car results))
	 (tag-point (cdr results))
	 info lname min max fname args)
    (save-excursion
      (set-buffer tag-buf)
      (save-excursion
	(save-restriction
	  (widen)
	  (goto-char tag-point)
	  (cond ((let ((case-fold-search nil))
		   (looking-at "^DEFUN[ \t]"))
		 (forward-sexp 1)
		 (down-list 1)
		 (setq lname (read (current-buffer))
		       fname (buffer-substring
			      (progn (forward-sexp 1) (point))
			      (progn (backward-sexp 1) (point)))
		       min (buffer-substring
			    (progn (forward-sexp 3) (point))
			    (progn (backward-sexp 1) (point)))
		       max (buffer-substring
			    (progn (forward-sexp 2) (point))
			    (progn (backward-sexp 1) (point))))
		 (backward-up-list 1)
		 (setq args (buffer-substring
			     (progn (forward-sexp 2) (point))
			     (progn (backward-sexp 1) (point))))
		 (setq info (format "Elisp: %s, C: %s %s, #args: %s"
				    lname
				    fname args
				    (if (string-equal min max)
					min
				      (format "from %s to %s" min max)))))
		(t
		 (setq info
		       (buffer-substring
			(progn (beginning-of-line) (point))
			(progn (end-of-line) (point)))))))))
    (message "%s" info))
  (setq tags-loop-form '(display-tag-info nil))
  ;; Always return non-nil
  t)


;; Keep track of old locations before finding tags

(defvar tag-mark-stack1 nil)
(defvar tag-mark-stack2 nil)
(defvar tag-mark-stack-max 16
  "*The maximum number of elements kept on the mark-stack used
by tags-search.  See also the commands push-tag-mark (\\[push-tag-mark])
and pop-tag-mark. (\\[pop-tag-mark]).")

(defun push-mark-on-stack (stack-symbol &optional max-size)
  (let ((stack (symbol-value stack-symbol)))
    (setq stack (cons (point-marker) stack))
    (cond ((and max-size
		(> (length stack) max-size))
	   (set-marker (car (nthcdr max-size stack)) nil)
	   (setcdr (nthcdr (1- max-size) stack) nil)))
    (set stack-symbol stack)))

(defun pop-mark-from-stack (stack-symbol1 stack-symbol2 &optional max-size)
  (let* ((stack (or (symbol-value stack-symbol1)
		    (error "No more tag marks on stack")))
	 (marker (car stack))
	 (m-buf (marker-buffer marker)))
    (set stack-symbol1 (cdr stack))
    (or m-buf
	(error "Marker has no buffer"))
    (if (null (buffer-name m-buf))
	(error "Buffer has been killed"))
    (push-mark-on-stack stack-symbol2 max-size)
    (switch-to-buffer m-buf)
    (widen)
    (goto-char (marker-position marker))))

(defun push-tag-mark ()
  (push-mark-on-stack 'tag-mark-stack1 tag-mark-stack-max))

(if (memq (lookup-key esc-map "*") '(nil undefined))
    (define-key esc-map "*" 'pop-tag-mark))

(defun pop-tag-mark (arg)
  "find-tag maintains a mark-stack seperate from the \\[set-mark-command] mark-stack.
This function pops (and moves to) the tag at the top of this stack."
  (interactive "P")
  (if (not arg)
      (pop-mark-from-stack
       'tag-mark-stack1 'tag-mark-stack2 tag-mark-stack-max)
    (pop-mark-from-stack
     'tag-mark-stack2 'tag-mark-stack1 tag-mark-stack-max)))



;; John Sturdy <jcgs@harlqn.co.uk>
;; (defun lookup-tag (use-rec-edit)
;;   "Show a tag from the current tags name list in the other window for
;; reference, then restore the window layout after a pause. With prefix
;; arg, go into a recursive edit instead of pausing."
;;   (interactive "P")
;;   (save-window-excursion
;;     (save-excursion
;;       (find-tag-other-window (completing-read "Tag name: " tags-name-list))
;;       (if use-rec-edit
;;           (recursive-edit)
;;         (sit-for show-tag-time)))))

;(provide 'tags-fix)
(provide 'tags)

From help-lucid-emacs-request@lucid.com  Fri Sep  4 12:30:31 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA08687; Fri, 4 Sep 92 12:30:31 PDT
Received: by heavens-gate.lucid.com id AA24904g; Fri, 4 Sep 92 12:20:52 PDT
Received: from sherman.pas.rochester.edu by heavens-gate.lucid.com id AA24900g; Fri, 4 Sep 92 12:20:23 PDT
Received: by sherman.pas.rochester.edu (4.1/1.16) id AA16763; Fri, 4 Sep 92 15:30:07 EDT
Date: Fri, 4 Sep 92 15:30:07 EDT
From: kevin mcfadden <kevin@sherman.pas.rochester.edu>
Message-Id: <9209041930.AA16763@sherman.pas.rochester.edu>
To: help-lucid-emacs@lucid.com
Subject: Documentation

I was wondering if there was a place to obtain either a .ps version of the
lemacs manual or (preferably) a .ps or ascii file of the lemacs specific
documentation.

Thanks,

Kevin
kevin@sherman.pas.rochester.edu

From help-lucid-emacs-request@lucid.com  Fri Sep  4 14:18:56 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA09055; Fri, 4 Sep 92 14:18:56 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA25235g; Fri, 4 Sep 92 14:09:23 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA14938; Fri, 4 Sep 92 17:20:28 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA14934; Fri, 4 Sep 92 17:20:26 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!portal!ntmtv!irvine
From: ntmtv!irvine@uunet.uu.net (Chuck Irvine)
Subject: How Download Lucid Emacs
Message-Id: <1992Sep4.174850.476@ntmtv>
Nntp-Posting-Host: nmtvs318
Organization: Northern Telecom Inc, Mountain View, CA
Date: Fri, 4 Sep 1992 17:48:50 GMT
Lines: 6
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I was recently made aware of some pretty nice enhancements Lucid has done
to GNU Emacs. The really nice part, I was told, is that is it's available
free! Could someone please provide me with the information on how to get
access to it? Much thanks.

Chuck Irvine

From help-lucid-emacs-request@lucid.com  Fri Sep  4 15:24:07 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA09183; Fri, 4 Sep 92 15:24:07 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA25438g; Fri, 4 Sep 92 15:13:53 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA17838; Fri, 4 Sep 92 18:24:53 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA17827; Fri, 4 Sep 92 18:24:50 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!stanford.edu!agate!boulder!news!grunwald
From: grunwald@mumble.cs.colorado.edu (Dirk Grunwald)
Subject: better man
Message-Id: <GRUNWALD.92Sep4160326@mumble.cs.colorado.edu>
Nntp-Posting-Host: mumble.cs.colorado.edu
Reply-To: grunwald@foobar.cs.colorado.edu
Organization: University of Colorado at Boulder
Distribution: alt
Date: 4 Sep 92 16:03:26
Lines: 873
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


the 'man.el' that's distributed with Lucid is broken when you don't
have a MANPATH - the 'man' I use interpolates the MANPATH from your
PATH (it's written in Perl by Tom Christensen).

This man (from the Tek-tools package that was used in Epoch) works
fine and processes the 'man' request in the background. I haven't
Lucid-ized it yet.

;*****************************************************************************
;
; Filename:	tek-man.el
;
; This file is not part of the GNU Emacs distribution (yet).
;
; Copyright (C) 1991 Free Software Foundation, Inc.
;
; GNU Emacs is free software; you can redistribute it and/or modify
; it under the terms of the GNU General Public License as published by
; the Free Software Foundation; either version 1, or (at your option)
; any later version.

; GNU Emacs is distributed in the hope that it will be useful,
; but WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
; GNU General Public License for more details.

; You should have received a copy of the GNU General Public License
; along with GNU Emacs; see the file COPYING.  If not, write to
; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
;
; Author:		Originally based on code by Eric Rose
;			<erose@jessica.stanford.edu>, who started with the
;			standard distribution and modified it.
;
; This version by:	Ken Wood, <kwood@austek.oz.au>
; Organisation:		Austek Microsystems Pty Ltd, Australia.
;
; Description:	Enhanced manual browser. Invoke with "M-x man".
;
;	Numerous changes from the distribution version:
;
;	- runs "man" in background mode, so you can keep editing while your
;	man page is prepared.
;
;	- renames man page buffers using the manual topic, thus supports
;	multiple man pages open at once.
;
;	- man buffers have their own major mode with special keybindings.
;	Type ? in a man buffer for details.
;
;	- provides highlighting and mouse support under epoch. Type ? for a
;	list of the mouse bindings.
;
;	Still needs: support for "man -k".
;
;*****************************************************************************

; $Id: tek-man.el,v 1.1 1992/01/01 21:23:48 grunwald Exp grunwald $

(provide 'tek-man)
(provide 'manual)

(defconst manual-delete-reformatting-message t
  "*t says delete the \"Reformatting entry.  Wait...\" junk at the
beginning of the manual-entry buffer.")

; Manual Variables

(defvar manual-non-entry-regexp "[^A-Za-z0-9()_]"
  "\
Regexp matching characters that are not part of a manual entry names
such as 'emacs(1)'.")

(defvar manual-entry-name-regexp "[a-zA-Z][a-zA-Z0-9._-]+\([0-9A-Z]+\)"
  "\
Regexp which matches manual entry names, such as 'emacs(1)'.")

(defvar manual-help-buffer-name "*Help*"
  "Name of help buffer for manual-mode.")


; Put all the epoch stuff inside a test, in order to get it to compile under
; emacs.
(if running-epoch
    (progn

      (require 'tek-style-utils)
      
      ;
      ; Following section sets up some attributes for highlighting.
      ;
      
      (defvar tek-manual-seealso-foreground "purple"
	"\
Foreground color used to highlight the 'See Also' section of manual
pages if no value is defined in the X11 resources and the display
device supports color.")

      (defvar tek-manual-seealso-styleorattribute
	; If the display supports multiple colors and a default color
	; is specified, define the style to use a different color.
	(if (and (> (number-of-colors) 2) tek-manual-seealso-foreground)
	    (tek-build-style "manual-seealso" nil nil
			     tek-manual-seealso-foreground (background)
			     (background) (foreground))
	  ; Otherwise, define the style to use a different font.
	  (tek-build-style "manual-seealso" nil (or tek-bold-fixed-font
						    tek-italic-bold-fixed-font
						    tek-italic-fixed-font)
			   (foreground) (background)
			   (background) (foreground)))
	"\
Style or attribute used to display characters in the See Also section
of man pages.")
      
      (defvar tek-manual-usersupplied-foreground "red3"
	"\
Foreground color used to highlight the user-supplied sections of
manual pages if no value is defined in the X11 resources and the
display device supports color.")
      
      (defvar tek-manual-usersupplied-styleorattribute
	; If the display supports multiple colors and a default color
	; is specified, define the style to use a different color.
	(if (and (> (number-of-colors) 2) tek-manual-seealso-foreground)
	    (if tek-italic-fixed-font
		; Define the style to use a non-bold italic font in a different
		; color.
		(tek-build-style "manual-usersupplied" nil
				 tek-italic-fixed-font
				 tek-manual-usersupplied-foreground
				 (background) (background) (foreground))
	      (tek-build-style "manual-usersupplied" nil nil
			       tek-manual-usersupplied-foreground
			       (background) (background) (foreground)
			       tek-manual-usersupplied-foreground))
	  (if tek-italic-bold-fixed-font
	      (tek-build-style "manual-usersupplied" nil
			       tek-italic-bold-fixed-font
			       (foreground) (background)
			       (background) (foreground))
	    (tek-build-style "manual-usersupplied" nil
			     (or tek-bold-fixed-font
				 tek-italic-fixed-font)
			     (foreground) (background)
			     (background) (foreground) (foreground))))
	  "\
Style or attribute used to display characters in user supplied sections
of man pages.")
	
      (defvar tek-manual-heading-styleorattribute
	  ; Define the style to use a different font.
	(tek-build-style "manual-heading" nil (or tek-bold-fixed-font
						  tek-italic-bold-fixed-font
						  tek-italic-fixed-font)
			 (foreground) (background)
			 (background) (foreground))
	"\
Style or attribute used to display characters in heading sections
of man pages.")

      
      ; Select V3 or V4 button behaviour
      (if tek-highlight-use-attributes
	  (progn
	    ; Do things the old way - using attributes.

	    (defvar tek-manual-seealso-style
	      tek-manual-seealso-styleorattribute
	      "\
Style used for displaying 'See Also' sections in man pages when attributes are
used to mark buttons.")

	    ; Modify the variable used with add-button to be an attribute
	    (setq tek-manual-seealso-styleorattribute (reserve-attribute))

	    ; Bind the see also style to the see also attribute.
	    (set-attribute-style tek-manual-seealso-styleorattribute
				 tek-manual-seealso-style)
      
	    (defvar tek-manual-usersupplied-style
	      tek-manual-usersupplied-styleorattribute
	      "\
Style used for displaying user-supplied sections in man pages when
attributes are used to mark buttons.")

	    ; Modify the variable used with add-button to be an attribute
	    (setq tek-manual-usersupplied-styleorattribute (reserve-attribute))
      
	    ; Bind the user supplied style to the user supplied attribute.
	    (set-attribute-style tek-manual-usersupplied-styleorattribute
				 tek-manual-usersupplied-style)
      
	    (defvar tek-manual-heading-style
	      tek-manual-heading-styleorattribute
	      "\
Style used for displaying heading sections in man pages when attributes are
used to mark buttons.")

	    ; Modify the variable used with add-button to be an attribute
	    (setq tek-manual-heading-styleorattribute (reserve-attribute))

	    ; Bind the heading style to the heading attribute.
	    (set-attribute-style tek-manual-heading-styleorattribute
				 tek-manual-heading-style)
	    ))
      

      ; Function to highlight SEE ALSO entries.
      (defun manual-highlight-seealso ()
	"Highlight all 'SEE ALSO' entries of man pages under epoch"
	(save-excursion
	  (goto-char (point-min))
	  (let ((case-fold-search nil)
		(seealso-endpoint (point-max)))
	    ; Find each SEE ALSO section
	    (while (re-search-forward "^\\s-*SEE ALSO.*\n" nil t)
	      ; Assume the SEE ALSO section is terminated by one or more
	      ; blank lines - find the end of the section.
	      (save-excursion
		(if (re-search-forward "\n\n" (point-max) t)
		    (setq seealso-endpoint (match-end 0))))
	      ; Find & highlight each entry in the SEE ALSO section.
	      (while (re-search-forward manual-entry-name-regexp
					seealso-endpoint t)
		(add-button (match-beginning 0) (match-end 0)
			    tek-manual-seealso-styleorattribute nil
			    (current-buffer)))))))


      ; Mouse map to be used in manual buffers.
      (defvar manual-mouse-map (create-mouse-map mouse::global-map)
	"Mousemap for manual buffers.")

      ; Bind the mouse buttons to useful functions.
      
      (define-mouse manual-mouse-map mouse-left mouse-down
	'manual-mouse-scroll-up)
      (define-mouse manual-mouse-map mouse-middle mouse-down
	'manual-mouse-select-item)
      (define-mouse manual-mouse-map mouse-right mouse-down
	'manual-mouse-scroll-down)

      ; Functions for mouse bindings.
      
      (defun manual-mouse-select-item (mouse-data)
	"Select the manual entry specified at the mouse cursor."
	(let ((orig-window (selected-window)))
	  ;(select-window (nth 2 mouse-data))
	  (mouse::set-point mouse-data)
	  (manual-find-entry-at-point)
	  (select-window orig-window)))
      
      (defun manual-mouse-scroll-up (mouse-data)
	(let ((orig-window (selected-window)))
	  (select-window (nth 2 mouse-data))
	  (scroll-up nil)
	  (select-window orig-window)))

      (defun manual-mouse-scroll-down (mouse-data)
	(let ((orig-window (selected-window)))
	  (select-window (nth 2 mouse-data))
	  (scroll-down nil)
	  (select-window orig-window)))


      )) ; end: running-epoch test


; Manual doco

(defun manual-mode-summary ()
  "Display a brief summary of all manual mode commands"
  (interactive)
  (save-window-excursion
    ; Jump into the help buffer and prepare it for display
    (switch-to-buffer manual-help-buffer-name)
    (erase-buffer)
    (insert (documentation 'manual-mode))
    (goto-char (point-min))
    ; Now, wait until the user has scrolled to the end of the help screen
    ; and then pressed space once more.
    (let (ch flag)
      (while (progn (setq flag (not (pos-visible-in-window-p (point-max))))
		    (message (if flag "Type Space to see more"
			       "Type Space to return to manual"))
		    (if (/= ?\  (setq ch (read-char)))
			(progn (setq unread-command-event ch) nil)
		      flag))
	(scroll-up)))
    ; Bury the buffer so the user is unlikely to see it outside of
    ; manual mode.
    (bury-buffer manual-help-buffer-name)))

;
;  Manual keymap
;
(defvar manual-mode-map (make-keymap)
  "Keymap used in manual page buffers.")

(suppress-keymap manual-mode-map)
(define-key manual-mode-map " " 'scroll-up)
(define-key manual-mode-map "\177" 'scroll-down)
(define-key manual-mode-map "n" 'manual-forward-line)
(define-key manual-mode-map "p" 'manual-backward-line)
(define-key manual-mode-map "\en" 'manual-next-section)
(define-key manual-mode-map "\ep" 'manual-previous-section)
(define-key manual-mode-map "\C-n" 'manual-forward-line)
(define-key manual-mode-map "\C-p" 'manual-backward-line)
(define-key manual-mode-map "m" 'man)
(define-key manual-mode-map "a" 'manual-apropos)
(define-key manual-mode-map "g" 'manual-find-entry-at-point)
(define-key manual-mode-map "s" 'manual-see-also)
(define-key manual-mode-map "\C-a" 'beginning-of-line)
(define-key manual-mode-map "\C-e" 'end-of-line)
(define-key manual-mode-map "\ea" 'backward-sentence)
(define-key manual-mode-map "\ee" 'forward-sentence)
(define-key manual-mode-map "\C-b" 'backward-char)
(define-key manual-mode-map "\C-f" 'forward-char)
(define-key manual-mode-map "b" 'manual-backward-word)
(define-key manual-mode-map "f" 'manual-forward-word)
(define-key manual-mode-map "\eb" 'backward-word)
(define-key manual-mode-map "\ef" 'forward-word)
(define-key manual-mode-map "<" 'beginning-of-buffer)
(define-key manual-mode-map "." 'beginning-of-buffer)
(define-key manual-mode-map ">" 'end-of-buffer)
(define-key manual-mode-map "\e<" 'beginning-of-buffer)
(define-key manual-mode-map "\e>" 'end-of-buffer)
(define-key manual-mode-map "?" 'manual-mode-summary)
(define-key manual-mode-map "t" 'toggle-truncate-lines)
(define-key manual-mode-map "q" 'manual-quit)


; Stub for typing "man"
(defun man (word)
  (interactive "sTopic: ")
  (manual-get-entry word))

; Create an alias for the man function to maintain backward compatibility.
(fset 'manual-entry (symbol-function 'man))


; Tries to find the man page for the entry near point.
(defun manual-find-entry-at-point ()
  (interactive)
  (let ((lookup-entry (manual-find-entry-name)))
    (if lookup-entry
	(manual-get-entry lookup-entry))))

; Find another manual entry, either from the text at point or by prompting
; the user
(defun manual-find-new-entry ()
  (interactive)
  (let ((lookup-entry (manual-find-entry-name)))
    (if lookup-entry
	(manual-get-entry lookup-entry)
      (call-interactively 'man))))


; Manual mode
(defun manual-mode ()
  "\
Manual Mode is used to browse through manual pages.  Normal editing
commands are turned off, and these can be used instead:

.	Move to the top of the current man page.
SPC	Scroll down one page.
DEL	Scroll up one page.
n,C-n	Move down one line.
p,C-p	Move up one line.
M-n	Move to next section of the current page.
M-p	Move to previous section of the current page.
>	Move to end of man page.
<	Move to beginning of man page.
m	Prompt for and look up a manual entry. Format is TOPIC(SECTION)
	or TOPIC.
g       Gets the man page on the topic entered at the prompt.  Same format
	as above: TOPIC(SECTION).
s	Jump to the 'SEE ALSO' section.
C-a	Beginning of line.
C-e	End of line.
M-a	Previous sentence.
M-e	Next sentence.
f,M-f	Move forward one word.
b,M-b   Move backwards one word.
t       Toggle the line truncation.
mouse-left     scroll-up
mouse-middle   man-select-button
mouse-right    scroll-down
?	This help screen.
q	Quit."
  (interactive)
  (setq major-mode 'manual-mode)
  (setq mode-name "Manual")
  (setq buffer-auto-save-file-name nil)
  (setq truncate-lines t)
  ; Use the appropriate local key & mouse bindings in this buffer.
  (use-local-map manual-mode-map)
  (if running-epoch
      (use-local-mouse-map manual-mouse-map))
  (message "Type ? for a list of commands"))


; Does the work
(defun manual-get-entry (entry)
  "Display the Unix manual entry for ENTRY.
ENTRY is either the title of the entry, or has the form TITLE(SECTION)
where SECTION is the desired section of the manual, as in `tty(4)'."
  (string-match "\\`[ \t]*\\([^( \t]+\\)[ \t]*\\((.+)\\)?[ \t]*\\'" entry)
  ; Calculate the section and topic from the arg.
  (let* (
	 (manual-topic (if (match-beginning 1)
			   (substring entry
				      (match-beginning 1) (match-end 1))))
	 (temp-match-string (if (match-beginning 2)
				(substring entry
					   (match-beginning 2) (match-end 2))))
	 (manual-section (if temp-match-string
			     (and (string-match "(\\(.+\\))"
						temp-match-string)
				  (substring temp-match-string
					     (match-beginning 1)
					     (match-end 1)))))
	)
    ; First, must be sure we have a valid topic to look up.
    (if (not manual-topic)
	; Do nothing
	nil
      (let* ((manual-buffer-name (concat "*Manual-" manual-topic "*"))
	     (manual-buffer (get-buffer manual-buffer-name)))
	(if manual-buffer
	    ; Buffer for specified manual entry already exists - just
	    ; need to display it.
	    (display-buffer manual-buffer)
	  ; Otherwise, need to look it up
	  (progn
	    ; First, create the buffer
	    (setq manual-buffer (get-buffer-create manual-buffer-name))
	    ; Do all following edits in manual buffer
	    (set-buffer manual-buffer)
	    ; Turn off undo log.
	    (buffer-disable-undo manual-buffer)
	    ; Let the user know what we're up to
	    (message "Looking for formatted entry for %s%s..."
		     manual-topic
		     (if manual-section (concat "(" manual-section ")") ""))
	    ; Next section inserts the raw "man" output into the
	    ; buffer. First, look for an already formatted file.
	    (let ((dirlist manual-formatted-dirlist)
		  (currentdir nil)
		  (completions nil)
		  (case-fold-search nil)
		  (return-value nil)
		  formatted-name)
	      ; Try the dir-prefix to start with
	      (setq return-value
		    (and manual-section
			 ; First, with the section appended to the
			 ; formatted directory.
			 (or (file-exists-p
			      (setq formatted-name
				    (concat manual-formatted-dir-prefix
					    (substring manual-section 0 1)
					    "/" manual-topic "."
					    manual-section)))
			     ; Next, without the section appended
			     (file-exists-p
			      (setq formatted-name
				    (concat manual-formatted-dir-prefix
					    manual-section "/"
					    manual-topic "."
					    manual-section))))))
	      ; If that fails, then try looking through the formatted
	      ; dirlist for the file of interest.
	      (while (and (not return-value) dirlist)
		(progn
		  ; Try the current formatted directory, with a good
		  ; guess at the formatted file name.
		  (setq currentdir (car dirlist))
		  (setq formatted-name
			(concat currentdir "/" manual-topic "."
				(or manual-section
				    (substring currentdir
					       (1+ (or (string-match
							"\\.[^./]*$"
							currentdir)
						       -2))))))
		  (setq return-value (file-exists-p formatted-name))
		  (setq dirlist (cdr dirlist))))
	      ; Otherwise, try looking for the completions in each
	      ; formatted directory.
	      (setq dirlist manual-formatted-dirlist)
	      (while (and (not return-value) dirlist)
		(progn
		  (setq currentdir (car dirlist))
		  ; Set up an error handler for file-name-all-completions
		  (condition-case ()
		      (progn
			; Get the list of completions
			(setq completions (file-name-all-completions
					   (concat manual-topic "."
						   (or manual-section ""))
					   currentdir))
			; Loop through the completions until we find a file
			; that exists.
			(while (and completions
				    (setq formatted-name
					  (concat currentdir "/"
						  (car completions)))
				    (not (setq return-value
					       (file-exists-p
						formatted-name))))
			  (setq completions (cdr completions))))
		    ; Error handler quietly does nothing.
		    (file-error nil))
		  (setq dirlist (cdr dirlist))))
	      ; Now, check that we can read the formatted file. If not,
	      ; need to delete it and run man anyway.
	      (if (and return-value
		       (not (file-readable-p formatted-name)))
		  (progn
		    (delete-file formatted-name)
		    (setq return-value nil)))
	      ; If the formatted file exists and is readable, then insert it.
	      (if return-value
		  (progn
		    (manual-insert-file formatted-name)
		    (manual-clean-and-show-buffer manual-topic))
		; Else, invoke man
		(let ((manual-process nil))
		  (message "No formatted entry, invoking man %s%s in background..."
			   (if manual-section
			       (concat manual-section " ")
			     "")
			   manual-topic)
		  (let ((process-connection-type nil)) 
		  (if manual-section
		      (setq manual-process
			    (start-process (concat "manbg-" manual-topic
						   manual-section)
					   manual-buffer
					   "sh" "-c"
					   (format "%s %s %s"
						   manual-program
						   manual-section
						   manual-topic)))
		    (setq manual-process
			  (start-process (concat "manbg-" manual-topic)
					 manual-buffer
					 "sh" "-c"
					 (format "%s %s"
						 manual-program
						 manual-topic))))
		  )
		  ; Set up a sentinel to watch for "man" exiting.
		  (set-process-sentinel manual-process 'manual-sentinel)
		  ; Bury the buffer to try & prevent the user
		  ; stumbling across it.
		  (bury-buffer manual-buffer))
		))))))))

	
(defun manual-sentinel (process msg)
  "\
Waits for the asynchronous man process to exit & cleans up the
resulting output."
  (let* ((manual-buffer (process-buffer process))
	 (manual-buffer-name  (buffer-name manual-buffer))
	 (delete-buff nil)
	 (err-mess nil)
	 (initial-match-data (match-data)))
    (if (null manual-buffer)
	; man output buffer has been deleted - flag an error and set the
	; processes buffer to nil
	(progn
	  (error "Manual output buffer deleted")
	  (set-process-buffer process nil))
      (progn
	(set-buffer manual-buffer)
	(goto-char (point-min))
	(cond
	 ; Check to see if the man page wasn't found.
	 ((or (looking-at "No \\(manual \\)*entry for")
	      (looking-at "[^\n]*: nothing appropriate$"))
	  ; Print an error message and delete the buffer.
	  (setq err-mess
		(buffer-substring (point) (progn (end-of-line) (point))))
	  (setq delete-buff t))
	 ; Check to see if the process haven't exited yet, or exited with
	 ; a non-zero exit status.
	 ((not (and (eq (process-status process) 'exit)
		    (= (process-exit-status process) 0)))
	  ; Flag an error
	  (setq err-mess (format "%s: process %s" manual-buffer-name
				 (manual-delete-trailing-newline msg)))
	  ; An insert some debug info into the buffer.
	  (goto-char (point-max))
	  (insert (format "\nprocess %s" msg)))
	 ; Otherwise, must have exited normally - just delete the reformatting
	 ; message if appropriate
	 (t (and manual-delete-reformatting-message
		 (looking-at "Reformatting ")
		 (delete-region (point)
				(progn (forward-line 1) (point))))))
	; Remove the buffer if appropriate
	(if delete-buff
	    (kill-buffer manual-buffer)
	  ; Otherwise, clean it up & display it.
	  (let ((manual-topic nil))
	    (if (string-match "\\*Manual-\\(.+\\)\\*" manual-buffer-name)
		(setq manual-topic
		      (substring manual-buffer-name
				 (match-beginning 1) (match-end 1)))
	      (setq manual-topic ""))
	    (manual-clean-and-show-buffer manual-topic)))
	; Print any accumulated message
	(if err-mess
	    (error err-mess)
	  (message ""))))
    ; Restore any previous match data on exit.
    (store-match-data initial-match-data)))
       


(defun manual-delete-trailing-newline (str)
  (if (string= (substring str (1- (length str))) "\n")
      (substring str 0 (1- (length str)))
    str))



; Hint: BS stands for more things than "back space"
(defun manual-clean-and-show-buffer (manual-topic)
  "\
Works on the current buffer. First turns underlining & overstriking by
means of backspace characters into something sensible: highlighting if
we are running epoch, plain text otherwise.

Next, remove cruddy headers & whitespace.

Finally, set the buffer mode & display it."
  (message "Cleaning manual entry for %s..." manual-topic)
  (if buffer-read-only
      (toggle-read-only))
  (if running-epoch
      ;
      ; Do highlighting
      ;
      (progn
	;
	; First, change _ chars to be "underlined" - helps simplify
	; button placement algorithm later.
	;
	(goto-char (point-min))
	(replace-regexp "\\(_\b.\\)\\([_ -]\\)\\(_\b.\\)" "\\1_\b\\2\\3")
	;
	; First nuke overstriking by same character.
	;
	(goto-char (point-min))
	; Find the start of a section of overstriking - ignore
	; underlined underscores for now.
	(while (re-search-forward "\\([^_\n]\\)\\(\b\\1\\)+" nil t)
	  ; Kill backspace character & overstrike characters
	  (replace-match "\\1")
	  (let ((button-begin (1- (point)))
		(button-end (point))
		(bolded-char nil))
	    ; Search through the rest of the overstrike characters.
	    (while (and (= (char-after (1+ (point))) ?\b)
			(= (char-after (point)) (char-after (+ 2 (point)))))
	      (progn
		; Record the character which is being overstruck
		(setq bolded-char (char-after (point)))
		; Extend the button to include the new character
		(forward-char 1)
		(setq button-end (point))
		; Delete the first overstriking
		(delete-char 2)
		; Delete all the later overstrikings by the same character
		(while (= (char-after (point)) ?\b)
		  (delete-char 2))))
	    ; Add the button around the specified region
	    (add-button button-begin button-end
			tek-manual-heading-styleorattribute nil)))
	;
	; Now, nuke underlining.
	;
	(goto-char (point-min))
	; Find the start of a section of underlining
	(while (search-forward "_\b" nil t)
	  (let ((button-begin nil)
		(button-end nil))
	    ; Kill underlining characters
	    (delete-char -2)
	    ; Start a button around just this one character.
	    (setq button-begin (point))
	    (setq button-end (1+ button-begin))
	    ; Remove the rest of the backspaces in this section & extend the
	    ; button to just after the last one.
	    (while (and (= (char-after (1+ (point))) ?_)
			(not (forward-char 3))
			(= (preceding-char) ?\b))
	      (progn
		(delete-char -2)
		(setq button-end (1+ (point)))))
	    ; Insert the button
	    (add-button button-begin button-end
			tek-manual-usersupplied-styleorattribute nil)))
	; Finally, highlight any SEE ALSO sections
	(manual-highlight-seealso)
	))
  ; Now, purge any overstruck characters. If we're running epoch,
  ; most of them will already have been taken care of. Otherwise,
  ; nuke the lot of them.
  ;
  ; Underlining first
  (goto-char (point-min))
  (replace-regexp "_\b\\(.\\)" "\\1")
  ; Overstriking next
  (goto-char (point-min))
  (replace-regexp "\\(.\\)\\(\b\\1\\)+" "\\1")
  ; General overstriking last
  (replace-regexp ".\b\\(.\\)" "\\1")
  ;
  ; Nuke headers: "MORE(1) UNIX Programmer's Manual MORE(1)"
  (goto-char (point-min))
  (replace-regexp "^\\s-*\\([A-Za-z][-_A-Za-z0-9]*([0-9A-Z]+)\\).*\\1$" "")
  ; Nuke headers: "MORE(1)"
  (goto-char (point-min))
  (replace-regexp "^\\s-*[A-Za-z][-_A-Za-z0-9]*([0-9A-Z]+)\\s-*$" "")
  ; Nuke footers: "Printed 12/3/85	27 April 1981	1"
  ;    Sun appear to be on drugz:
  ;     "Sun Release 3.0B  Last change: 1 February 1985     1"
  ;    HP are even worse!
  ;     "     Hewlett-Packard   -1- (printed 12/31/99)"  FMHWA12ID!!
  ;    System V (well WICATs anyway):
  ;     "Page 1			  (printed 7/24/85)"
  ;    Who is administering PCP to these corporate bozos?
  (goto-char (point-min))
  (replace-regexp
   (cond ((eq system-type 'hpux)
	  "^[ \t]*Hewlett-Packard\\(\\| Company\\)[ \t]*- [0-9]* -.*$")
	 ((eq system-type 'usg-unix-v)
	  "^ *Page [0-9]*.*(printed [0-9/]*)$")
	 (t
	  "^\\(Printed\\|Sun Release\\) [0-9].*[0-9]$"))
   "")
  ; Crunch blank lines
  (goto-char (point-min))
  (replace-regexp "\n\n\n+" "\n\n")
  ; Kill first few blank lines in the buffer
  (goto-char (point-min))
  (if (re-search-forward "\\`\n+" nil t)
      (replace-match ""))
  ; Finally, make the buffer read only & unmodified.
  (toggle-read-only)
  (set-buffer-modified-p nil)
  ; Set the buffer mode & key bindings
  (manual-mode)
  ; Show the buffer in some window
  (display-buffer (current-buffer))
  )


(defun manual-insert-file (name)
  ; Insert manual file (unpacked as necessary) into buffer
  (if (equal (substring name -2) ".Z")
      (call-process "zcat" nil t nil name)
    (if (equal (substring name -2) ".z")
	(call-process "pcat" nil t nil name)
      (insert-file-contents name))))


; Added by erose
;
(defun manual-forward-line (n)
  (interactive "p")
  (forward-line n))

(defun manual-backward-line (n)
  (interactive "p")
  (forward-line (- n)))

(defun manual-forward-word (n)
  (interactive "p")
  (forward-char 1)
  (forward-word n)
  (forward-char -1))

(defun manual-backward-word (n)
  (interactive "p")
  (backward-word n))

;  Searches for next "Section"
(defun manual-next-section ()
  (interactive)
  (beginning-of-line)
  (forward-line)
  (while (not (or (looking-at "[A-Z]")
		  (eobp)))
    (forward-line 1)))

(defun manual-previous-section ()
  (interactive)
  (beginning-of-line)
  (forward-line -1)
  (while (not (or (looking-at "[A-Z]")
		  (bobp)))
    (forward-line -1)))


; Finds a word near point that can be a manual reference.  Returns nil
; if it can't figure it out.
(defun manual-find-entry-name ()
  "\
Returns the word near point that should correspond to a manual
reference. The variable 'manual-non-entry-regexp' controls what is not
part of a manual reference."
  (let ((entry-beginning-bound nil)
	(entry-end-bound nil)
	(entry-beginning nil)
	(entry-end nil))
    (save-excursion
      ; Now, do a bit of searching to see if there is really a manual entry
      ; near point.
      ; Don't really care if we are at the beginning or end of the buffer,
      ; just let these points limit the search.
      (if (and (if (re-search-forward manual-non-entry-regexp nil t)
		   (setq entry-end-bound (match-beginning 0))
		 (setq entry-end-bound (point-max)))
	       (or (backward-char 1) t)
	       (or (re-search-backward manual-non-entry-regexp nil t) t)
	       (re-search-forward manual-entry-name-regexp
				  entry-end-bound t))
	  ; If we made it to here, then we have found a manual entry -
	  ; so return it.
	  (buffer-substring (match-beginning 0) (match-end 0))
	; Otherwise, no entry name here so return nil.
	nil))))


(defun manual-see-also ()
  (interactive)
  (let ((opoint (point))
	(case-fold-search nil))
    (goto-char (point-min))
    (if (not (re-search-forward "^\\s-*SEE ALSO" nil t))
	(progn
	  (goto-char opoint)
	  (message "No 'SEE ALSO' section on this manpage.")))))
	
(defun toggle-truncate-lines ()
  (interactive)
  (setq truncate-lines (not truncate-lines))
  (recenter))

(defvar manual-keep-all-buffers nil
  "If t keep the manual buffer even though the user has typed q")

(defun manual-quit ()
  (interactive)
  (if manual-keep-all-buffers
      (bury-buffer (current-buffer))
    (kill-buffer (current-buffer))))

(defun manual-apropos ()
  "\
Not yet implemented.

man -k %s | pr -h Apropos")



From help-lucid-emacs-request@lucid.com  Sun Sep  6 05:48:55 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA13641; Sun, 6 Sep 92 05:48:55 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA28048g; Sun, 6 Sep 92 05:37:52 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA08638; Sun, 6 Sep 92 08:48:51 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA08633; Sun, 6 Sep 92 08:48:47 -0400
Path: uunet!wupost!micro-heart-of-gold.mit.edu!bloom-beacon!eru.mt.luth.se!lunic!sunic!corax.udac.uu.se!woody.csd.uu.se!hb
From: hb%woody.csd.uu.se@lucid.com (Henrik B}kman  CSD)
Newsgroups: alt.lucid-emacs.help
Subject: Lucid or not?
Message-Id: <1992Sep6.120912.5392@corax.udac.uu.se>
Date: 6 Sep 92 12:09:12 GMT
Organization: UDAC, Uppsala, Sweden
Lines: 9
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

What is the preferable way to check if you are running Lucid-emacs or
not, in an elisp-file?

-- 
----------------------------------------------------------------------
Henrik Bakman           Adress: Box 520          Tel: +46 18 181044
System Manager                  751 20 UPPSALA   Fax: +46 18 521270
Computing Science Dep.          SWEDEN           Email: hb@csd.uu.se
Uppsala University

From help-lucid-emacs-request@lucid.com  Sun Sep  6 09:02:11 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA13811; Sun, 6 Sep 92 09:02:11 PDT
Received: by heavens-gate.lucid.com id AA28170g; Sun, 6 Sep 92 08:48:19 PDT
Received: from amil.co.il by heavens-gate.lucid.com id AA28160g; Sun, 6 Sep 92 08:47:34 PDT
Received: from ipcmmi.AMIL ([192.86.90.14]) by amil.co.il (4.1/AMIL-M2)
	id AA00943; Sun, 6 Sep 92 18:58:21 IDT
Date: Sun, 6 Sep 92 18:58:21 IDT
From: danny@amil.co.il (Danny Bar-Dov)
Message-Id: <9209061558.AA00943@amil.co.il>
Received: by ipcmmi.AMIL (4.1/SMI-4.1)
	id AA18015; Sun, 6 Sep 92 17:58:18 IST
To: hb%woody.csd.uu.se@lucid.com (Henrik B}kman  CSD)
Cc: help-lucid-emacs@lucid.com
Subject: Lucid or not?
Newsgroups: alt.lucid-emacs.help
In-Reply-To: <1992Sep6.120912.5392@corax.udac.uu.se>
References: <1992Sep6.120912.5392@corax.udac.uu.se>

Henrik B}kman  CSD writes:
 > What is the preferable way to check if you are running Lucid-emacs or
 > not, in an elisp-file?
 > 
 > -- 
 > ----------------------------------------------------------------------
 > Henrik Bakman           Adress: Box 520          Tel: +46 18 181044
 > System Manager                  751 20 UPPSALA   Fax: +46 18 521270
 > Computing Science Dep.          SWEDEN           Email: hb@csd.uu.se
 > Uppsala University

And once upon a time jwz wrote:
I think the easiest way to do this is

 >	(cond ((not (string-lessp emacs-version "19"))
 >	       ;; for any 19-vintage emacs
 >	       )
 >
 >	      ((not (string-lessp emacs-version "19.2"))
 >	       ;; for versions of emacs at 19.2 or above
 >	       )
 >
 >	      ((string-match "Lucid" emacs-version)
 >	       ;; for any Lucid Emacs
 >	       )
 >
 >	      ((and (string-match "Lucid" emacs-version)
 >		    (not (string-lessp emacs-version "19.2")))
 >	       ;; for lemacs 19.2 or greater, but not FSF's 19.2
 >	       ))
 >
 >But having a set of integer variables would be nice as well.  But the problem
 >with that is that Emacs 18 didn't have it, and FSF's 19 might not have it,
 >which means you'd have to use the above code or something like it anyway.
 >
 >	-- Jamie
 >

--
Danny.

-------------------------------
Dan Bar Dov

Applied Materials (Israel)

Email:        danny@amil.co.il
Phone: office 972-3-499573
       home   972-3-5469625
TimeZone:     GMT+2
-------------------------------

From help-lucid-emacs-request@lucid.com  Mon Sep  7 15:44:48 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA17206; Mon, 7 Sep 92 15:44:48 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA29695g; Mon, 7 Sep 92 15:31:08 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA07596; Mon, 7 Sep 92 18:42:11 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA07583; Mon, 7 Sep 92 18:42:04 -0400
Path: uunet!mcsun!uknet!edcastle!edcogsci!cogsci!rjc
From: rjc@cogsci.ed.ac.uk (Richard Caley)
Newsgroups: alt.lucid-emacs.help
Subject: Patch to get TWM to understand lemacs
Message-Id: <RJC.92Sep7215854@daiches.cogsci.ed.ac.uk>
Date: 7 Sep 92 20:58:54 GMT
Distribution: alt
Organization: Human Communication Research Center
Lines: 795
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


This shar contains patches to the R4 and R5 TWM window managers which
gives them the ability to cope with lucid emacs' handling of the
keyboard focus. 

MOre details in the ReadMe.

--
rjc@cogsci.ed.ac.uk			_O_
					 |<

#! /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 shell archive."
# Contents:  twm_focus_patch twm_focus_patch/ReadMe
#   twm_focus_patch/twm_focus_patch.r4
#   twm_focus_patch/twm_focus_patch.r5
# Wrapped by rjc@daiches on Mon Sep  7 21:50:27 1992
PATH=/bin:/usr/bin:/usr/ucb ; export PATH
if test ! -d twm_focus_patch ; then
    echo shar: Creating directory \"twm_focus_patch\"
    mkdir twm_focus_patch
fi
if test -f twm_focus_patch/ReadMe -a "${1}" != "-c" ; then 
  echo shar: Will not over-write existing file \"twm_focus_patch/ReadMe\"
else
echo shar: Extracting \"twm_focus_patch/ReadMe\" \(2227 characters\)
sed "s/^X//" >twm_focus_patch/ReadMe <<'END_OF_twm_focus_patch/ReadMe'
X
X		        Focus Patch for TWM
X			===================
X
X		  Richard Caley (R.Caley@ed.ac.uk)
X		 ----------------------------------
X			7th September 1992
X
X
XThis patch changes the focus handling behaviour of TWM so that it can
Xcope with clients like Lucid Emacs which juggle the keyboard focus. 
X
XWhat Does it Do?
X----------------
XThe normal TWM focus handling behaviour is rather dim. It does not
Xnotice when another client changes the focus window and so the
Xkeyboard focus and TWM's highlighting can end up on different windows.
XThis patch adds code to track focus in and out events and move the
Xhighlighting with them.
X
XIt seems to handle local and globally active focus models, as defined
Xin the ICCCM. Clients which claim they do not want input, such as xev
Xand xjuggle, do get highlighted when the cursor enters the client
Xwindow. This should stop users who don't wish to know about such
Xthings from getting confused.
X
XVisable Changes
X---------------
XWith this patch in place, TWM no longer lies about where the focus is
Xwhen the cursor moves over an icon manager. A window which is unmapped
Xcan not get the focus, but the normal TWM behaviour is to highlight
Xany icon manager entry which the cursor moves into. With this patch in
Xplace, only windows which actually have the focus have their entries
Xhighlighted. This may or may not be a good feature, but I prefer to
Xknow where I stand.
X
XA few more events travel over the network, so it is possible that the
Xresultant TWM might be a touch slower on slow machines/networks.
X
XSupport, What's That?
X---------------------
XThis patch is, as they say, supplied as-is. No guarantees, no
Xpromises. If it changes your TWM executable so that it checksums to
X666 and so launches armageddon, don't blame me. 
X
XI've used TVTWM versions of this patch for a while and am reasonably
Xconfident that it works in all normal circumstances. I have only done
Xa brief test of the TWM behaviour, it seems to work on all the obvious
Xhard cases I could think up.
X
XIf you email me some bizzare behaviour I'll be interested since it
Xwill probably exist in tvtwm too.
X
XWhat You Get
X------------
XAlong with this readme, you should have gotten two patches, one for
Xrelease 4 TWM and one for release 5. 
END_OF_twm_focus_patch/ReadMe
if test 2227 -ne `wc -c <twm_focus_patch/ReadMe`; then
    echo shar: \"twm_focus_patch/ReadMe\" unpacked with wrong size!
fi
# end of overwriting check
fi
if test -f twm_focus_patch/twm_focus_patch.r4 -a "${1}" != "-c" ; then 
  echo shar: Will not over-write existing file \"twm_focus_patch/twm_focus_patch.r4\"
else
echo shar: Extracting \"twm_focus_patch/twm_focus_patch.r4\" \(8157 characters\)
sed "s/^X//" >twm_focus_patch/twm_focus_patch.r4 <<'END_OF_twm_focus_patch/twm_focus_patch.r4'
X*** add_window.c~	Fri Sep  4 18:27:57 1992
X--- add_window.c	Mon Sep  7 18:30:54 1992
X***************
X*** 686,691 ****
X--- 686,692 ----
X      valuemask = (CWEventMask | CWDontPropagate);
X      attributes.event_mask = (StructureNotifyMask | PropertyChangeMask |
X  			     ColormapChangeMask | VisibilityChangeMask |
X+ 			     FocusChangeMask |
X  			     EnterWindowMask | LeaveWindowMask);
X      attributes.do_not_propagate_mask = ButtonPressMask | ButtonReleaseMask;
X      XChangeWindowAttributes (dpy, tmp_win->w, valuemask, &attributes);
X*** events.c.orig	Fri Sep  4 18:27:58 1992
X--- events.c	Mon Sep  7 19:14:54 1992
X***************
X*** 86,91 ****
X--- 86,92 ----
X  int Cancel = FALSE;
X  
X  void HandleCreateNotify();
X+ void HandleFocusChange ();
X  
X  #ifdef SHAPE
X  void HandleShapeNotify ();
X***************
X*** 151,156 ****
X--- 152,159 ----
X      EventHandler[KeyPress] = HandleKeyPress;
X      EventHandler[ColormapNotify] = HandleColormapNotify;
X      EventHandler[VisibilityNotify] = HandleVisibilityNotify;
X+     EventHandler[FocusIn] = HandleFocusChange;
X+     EventHandler[FocusOut] = HandleFocusChange;
X  #ifdef SHAPE
X      if (HasShape)
X  	EventHandler[ShapeEventBase+ShapeNotify] = HandleShapeNotify;
X***************
X*** 645,650 ****
X--- 648,818 ----
X      }
X  }
X  
X+ /*
X+  * LastFocusEvent -- skip over focus in/out events for this
X+  *		window.
X+  */
X+ 
X+ 
X+ 
X+ static XEvent *
X+ LastFocusEvent(w, first)
X+ 
X+ Window *w;
X+ XEvent *first;
X+ 
X+ 
X+ {
X+ static XEvent current;
X+ XEvent *last, new;
X+ 
X+ new= *first;
X+ last=NULL;
X+ 
X+ do {
X+    if ( (new.type == FocusIn || new.type == FocusOut) 
X+        && new.xfocus.mode == NotifyNormal 
X+        && (new.xfocus.detail == NotifyNonlinear 
X+ 	   || new.xfocus.detail == NotifyPointer
X+ 	   || new.xfocus.detail == NotifyAncestor
X+ 	   || (new.xfocus.detail == NotifyNonlinearVirtual)
X+ 	   ))
X+        {
X+        current=new;
X+        last= &current;
X+ #ifdef TRACE_FOCUS
X+        printf("! %s 0x%x mode=%d, detail=%d\n", new.xfocus.type == FocusIn?"in":"out",Tmp_win,new.xfocus.mode, new.xfocus.detail);
X+ #endif       
X+        }
X+ else
X+     {
X+ #ifdef TRACE_FOCUS
X+     printf("~ %s 0x%x mode=%d, detail=%d\n", new.xfocus.type == FocusIn?"in":"out",Tmp_win,new.xfocus.mode, new.xfocus.detail);
X+ #endif
X+        }
X+    } while (XCheckWindowEvent(dpy, w, FocusChangeMask, &new));
X+ 
X+ return last;
X+ }
X+ 
X+ /*
X+  * HandleFocusIn -- deal with the focus moving under us.
X+  */
X+ 
X+ void
X+ HandleFocusIn(event)
X+ 
X+ XFocusInEvent *event;
X+ 
X+ {
X+ 
X+ #ifdef TRACE_FOCUS
X+ printf("+0x%x mode=%d, detail=%d\n", Tmp_win, event->mode, event->detail);
X+ #endif
X+ 
X+ 
X+ if (Tmp_win->hilite_w)	
X+     XMapWindow (dpy, Tmp_win->hilite_w);
X+ 
X+ SetBorder (Tmp_win, True);	
X+ 
X+ if (Tmp_win->list) ActiveIconManager(Tmp_win->list);
X+ 
X+ /*
X+    if (Scr->Focus && Scr->Focus->w != Tmp_win->w)
X+    {
X+    int root_x, root_y, x, y;
X+    Window root, child, mask;
X+    
X+    if (XQueryPointer(dpy, Scr->Focus->w, 
X+    &root, &child, 
X+    &root_x, &root_y, &x, &y, &mask))
X+    {
X+    XWarpPointer(dpy, Scr->Focus->w, Tmp_win->w,
X+    0, 0, 0, 0, x, y);
X+    } 
X+    }
X+    */
X+ 
X+ Scr->Focus = Tmp_win;
X+ }
X+ 
X+ void
X+ HandleFocusOut(event)
X+ 
X+ XFocusOutEvent *event;
X+ 
X+ {
X+ 
X+ #ifdef TRACE_FOCUS
X+ printf("-0x%x mode=%d, detail=%d\n", Tmp_win, event->mode, event->detail);
X+ #endif
X+ 
X+ SetBorder(Tmp_win, False);
X+ if (Tmp_win->hilite_w)
X+     XUnmapWindow(dpy, Tmp_win->hilite_w);
X+ 
X+ if (Tmp_win->list) NotActiveIconManager(Tmp_win->list);
X+ 
X+ if (Scr->Focus == Tmp_win)
X+     Scr->Focus= NULL;
X+ 
X+ }
X+ 
X+ void
X+ HandleFocusChange()
X+ 
X+ {
X+  XEvent *event;
X+ 
X+  if (Tmp_win)
X+      {
X+      event = LastFocusEvent(Event.xany.window,&Event);
X+ 
X+      if ( event != NULL)
X+ 	 {
X+ 	 if (event->type == FocusIn)
X+ 	     HandleFocusIn(event);
X+ 	 else
X+ 	     HandleFocusOut(event);
X+ 	 }
X+      }
X+ }
X+ 
X+ void
X+ SynthesiseFocusOut(w)
X+ 
X+ Window w;
X+ 
X+ {
X+ XEvent event;
X+ 
X+ event.type=FocusOut;
X+ event.xfocus.window=w;
X+ event.xfocus.mode=NotifyNormal;
X+ event.xfocus.detail=NotifyPointer;
X+ 
X+ XPutBackEvent(dpy, &event);
X+ 
X+ }
X+ void
X+ SynthesiseFocusIn(w)
X+ 
X+ Window w;
X+ 
X+ {
X+ XEvent event;
X+ 
X+ event.type=FocusIn;
X+ event.xfocus.window=w;
X+ event.xfocus.mode=NotifyNormal;
X+ event.xfocus.detail=NotifyPointer;
X+ 
X+ XPutBackEvent(dpy, &event);
X+ 
X+ }
X+ 
X+ 
X  /***********************************************************************
X   *
X   *  Procedure:
X***************
X*** 1888,1901 ****
X  	     * focus on this window
X  	     */
X  	    if (Scr->FocusRoot && (!scanArgs.leaves || scanArgs.inferior)) {
X! 		if (Tmp_win->list) ActiveIconManager(Tmp_win->list);
X  		if (Tmp_win->mapped) {
X- 		    /*
X- 		     * unhighlight old focus window
X- 		     */
X- 		    if (Scr->Focus &&
X- 			Scr->Focus != Tmp_win && Tmp_win->hilite_w)
X- 		      XUnmapWindow(dpy, Scr->Focus->hilite_w);
X  
X  		    /*
X  		     * If entering the frame or the icon manager, then do 
X--- 2056,2063 ----
X  	     * focus on this window
X  	     */
X  	    if (Scr->FocusRoot && (!scanArgs.leaves || scanArgs.inferior)) {
X! /*		if (Tmp_win->list) ActiveIconManager(Tmp_win->list); */
X  		if (Tmp_win->mapped) {
X  
X  		    /*
X  		     * If entering the frame or the icon manager, then do 
X***************
X*** 1909,1925 ****
X  		     */
X  		    if (ewp->window == Tmp_win->frame ||
X  			(Tmp_win->list && ewp->window == Tmp_win->list->w)) {
X- 			if (Tmp_win->hilite_w)				/* 1 */
X- 			  XMapWindow (dpy, Tmp_win->hilite_w);
X  			if (!scanArgs.leaves && !scanArgs.enters)
X  			    InstallWindowColormaps (EnterNotify,	/* 2 */
X  						    &Scr->TwmRoot);
X- 			SetBorder (Tmp_win, True);			/* 3 */
X  			if (Tmp_win->title_w && Scr->TitleFocus)	/* 4 */
X  			  SetFocus (Tmp_win);
X  			if (Tmp_win->protocols & DoesWmTakeFocus)	/* 5 */
X  			  SendTakeFocusMessage (Tmp_win, ewp->time);
X! 			Scr->Focus = Tmp_win;
X  		    } else if (ewp->window == Tmp_win->w) {
X  			/*
X  			 * If we are entering the application window, install
X--- 2071,2088 ----
X  		     */
X  		    if (ewp->window == Tmp_win->frame ||
X  			(Tmp_win->list && ewp->window == Tmp_win->list->w)) {
X  			if (!scanArgs.leaves && !scanArgs.enters)
X  			    InstallWindowColormaps (EnterNotify,	/* 2 */
X  						    &Scr->TwmRoot);
X  			if (Tmp_win->title_w && Scr->TitleFocus)	/* 4 */
X  			  SetFocus (Tmp_win);
X  			if (Tmp_win->protocols & DoesWmTakeFocus)	/* 5 */
X  			  SendTakeFocusMessage (Tmp_win, ewp->time);
X! 			else if (!Scr->TitleFocus 
X! 				 && Tmp_win->wmhints 
X! 				 && Tmp_win->wmhints->input
X! 				 && Event.xcrossing.focus)
X! 			    SynthesiseFocusIn(Tmp_win->w);
X  		    } else if (ewp->window == Tmp_win->w) {
X  			/*
X  			 * If we are entering the application window, install
X***************
X*** 1927,1932 ****
X--- 2090,2099 ----
X  			 */
X  			if (!scanArgs.leaves || scanArgs.inferior)
X  			    InstallWindowColormaps(EnterNotify, Tmp_win);
X+ 
X+ 			if (Event.xcrossing.focus)
X+                                 SynthesiseFocusIn(Tmp_win->w);
X+ 
X  		    }
X  		}			/* end if Tmp_win->mapped */
X  	    }				/* end if FocusRoot */
X***************
X*** 2061,2074 ****
X  
X  		if ((Event.xcrossing.window == Tmp_win->frame &&
X  			!scanArgs.matches) || inicon) {
X- 		    if (Tmp_win->list) NotActiveIconManager(Tmp_win->list);
X- 		    if (Tmp_win->hilite_w)
X- 		      XUnmapWindow (dpy, Tmp_win->hilite_w);
X- 		    SetBorder (Tmp_win, False);
X  		    if (Scr->TitleFocus ||
X  			Tmp_win->protocols & DoesWmTakeFocus)
X! 		      SetFocus ((TwmWindow *) NULL);
X! 		    Scr->Focus = NULL;
X  		} else if (Event.xcrossing.window == Tmp_win->w &&
X  				!scanArgs.enters) {
X  		    InstallWindowColormaps (LeaveNotify, &Scr->TwmRoot);
X--- 2228,2240 ----
X  
X  		if ((Event.xcrossing.window == Tmp_win->frame &&
X  			!scanArgs.matches) || inicon) {
X  		    if (Scr->TitleFocus ||
X  			Tmp_win->protocols & DoesWmTakeFocus)
X! 			SetFocus ((TwmWindow *) NULL);
X! 		    /* pretend there was a focus out as sometimes 
X! 		       we don't get one. */
X! 		    if ( Event.xcrossing.focus)
X! 			SynthesiseFocusOut(Tmp_win->w);
X  		} else if (Event.xcrossing.window == Tmp_win->w &&
X  				!scanArgs.enters) {
X  		    InstallWindowColormaps (LeaveNotify, &Scr->TwmRoot);
END_OF_twm_focus_patch/twm_focus_patch.r4
if test 8157 -ne `wc -c <twm_focus_patch/twm_focus_patch.r4`; then
    echo shar: \"twm_focus_patch/twm_focus_patch.r4\" unpacked with wrong size!
fi
# end of overwriting check
fi
if test -f twm_focus_patch/twm_focus_patch.r5 -a "${1}" != "-c" ; then 
  echo shar: Will not over-write existing file \"twm_focus_patch/twm_focus_patch.r5\"
else
echo shar: Extracting \"twm_focus_patch/twm_focus_patch.r5\" \(9695 characters\)
sed "s/^X//" >twm_focus_patch/twm_focus_patch.r5 <<'END_OF_twm_focus_patch/twm_focus_patch.r5'
X*** add_window.c.orig	Mon Sep  7 18:41:41 1992
X--- add_window.c	Mon Sep  7 18:42:15 1992
X***************
X*** 754,759 ****
X--- 754,760 ----
X      valuemask = (CWEventMask | CWDontPropagate);
X      attributes.event_mask = (StructureNotifyMask | PropertyChangeMask |
X  			     ColormapChangeMask | VisibilityChangeMask |
X+ 			     FocusChangeMask |
X  			     EnterWindowMask | LeaveWindowMask);
X      attributes.do_not_propagate_mask = ButtonPressMask | ButtonReleaseMask;
X      XChangeWindowAttributes (dpy, tmp_win->w, valuemask, &attributes);
X*** events.c.orig	Mon Sep  7 18:40:57 1992
X--- events.c	Mon Sep  7 19:11:56 1992
X***************
X*** 63,73 ****
X  XEvent Event;			/* the current event */
X  TwmWindow *Tmp_win;		/* the current twm window */
X  
X- /* Used in HandleEnterNotify to remove border highlight from a window 
X-  * that has not recieved a LeaveNotify event because of a pointer grab 
X-  */
X- TwmWindow *UnHighLight_win = NULL;
X- 
X  Window DragWindow;		/* variables used in moving windows */
X  int origDragX;
X  int origDragY;
X--- 63,68 ----
X***************
X*** 93,98 ****
X--- 88,94 ----
X  void HandleCreateNotify();
X  
X  void HandleShapeNotify ();
X+ void HandleFocusChange ();
X  extern int ShapeEventBase, ShapeErrorBase;
X  
X  void AutoRaiseWindow (tmp)
X***************
X*** 155,160 ****
X--- 151,158 ----
X      EventHandler[KeyPress] = HandleKeyPress;
X      EventHandler[ColormapNotify] = HandleColormapNotify;
X      EventHandler[VisibilityNotify] = HandleVisibilityNotify;
X+     EventHandler[FocusIn] = HandleFocusChange;
X+     EventHandler[FocusOut] = HandleFocusChange;
X      if (HasShape)
X  	EventHandler[ShapeEventBase+ShapeNotify] = HandleShapeNotify;
X  }
X***************
X*** 545,550 ****
X--- 543,713 ----
X  
X  
X  
X+ /*
X+  * LastFocusEvent -- skip over focus in/out events for this
X+  *		window.
X+  */
X+ 
X+ 
X+ 
X+ static XEvent *
X+ LastFocusEvent(w, first)
X+ 
X+ Window *w;
X+ XEvent *first;
X+ 
X+ 
X+ {
X+ static XEvent current;
X+ XEvent *last, new;
X+ 
X+ new= *first;
X+ last=NULL;
X+ 
X+ do {
X+    if ( (new.type == FocusIn || new.type == FocusOut) 
X+        && new.xfocus.mode == NotifyNormal 
X+        && (new.xfocus.detail == NotifyNonlinear 
X+ 	   || new.xfocus.detail == NotifyPointer
X+ 	   || new.xfocus.detail == NotifyAncestor
X+ 	   || (new.xfocus.detail == NotifyNonlinearVirtual)
X+ 	   ))
X+        {
X+        current=new;
X+        last= &current;
X+ #ifdef TRACE_FOCUS
X+        printf("! %s 0x%x mode=%d, detail=%d\n", new.xfocus.type == FocusIn?"in":"out",Tmp_win,new.xfocus.mode, new.xfocus.detail);
X+ #endif       
X+        }
X+ else
X+     {
X+ #ifdef TRACE_FOCUS
X+     printf("~ %s 0x%x mode=%d, detail=%d\n", new.xfocus.type == FocusIn?"in":"out",Tmp_win,new.xfocus.mode, new.xfocus.detail);
X+ #endif
X+        }
X+    } while (XCheckWindowEvent(dpy, w, FocusChangeMask, &new));
X+ 
X+ return last;
X+ }
X+ 
X+ /*
X+  * HandleFocusIn -- deal with the focus moving under us.
X+  */
X+ 
X+ void
X+ HandleFocusIn(event)
X+ 
X+ XFocusInEvent *event;
X+ 
X+ {
X+ 
X+ #ifdef TRACE_FOCUS
X+ printf("+0x%x mode=%d, detail=%d\n", Tmp_win, event->mode, event->detail);
X+ #endif
X+ 
X+ 
X+ if (Tmp_win->hilite_w)	
X+     XMapWindow (dpy, Tmp_win->hilite_w);
X+ 
X+ SetBorder (Tmp_win, True);	
X+ 
X+ if (Tmp_win->list) ActiveIconManager(Tmp_win->list);
X+ 
X+ /*
X+    if (Scr->Focus && Scr->Focus->w != Tmp_win->w)
X+    {
X+    int root_x, root_y, x, y;
X+    Window root, child, mask;
X+    
X+    if (XQueryPointer(dpy, Scr->Focus->w, 
X+    &root, &child, 
X+    &root_x, &root_y, &x, &y, &mask))
X+    {
X+    XWarpPointer(dpy, Scr->Focus->w, Tmp_win->w,
X+    0, 0, 0, 0, x, y);
X+    } 
X+    }
X+    */
X+ 
X+ Scr->Focus = Tmp_win;
X+ }
X+ 
X+ void
X+ HandleFocusOut(event)
X+ 
X+ XFocusOutEvent *event;
X+ 
X+ {
X+ 
X+ #ifdef TRACE_FOCUS
X+ printf("-0x%x mode=%d, detail=%d\n", Tmp_win, event->mode, event->detail);
X+ #endif
X+ 
X+ SetBorder(Tmp_win, False);
X+ if (Tmp_win->hilite_w)
X+     XUnmapWindow(dpy, Tmp_win->hilite_w);
X+ 
X+ if (Tmp_win->list) NotActiveIconManager(Tmp_win->list);
X+ 
X+ if (Scr->Focus == Tmp_win)
X+     Scr->Focus= NULL;
X+ 
X+ }
X+ 
X+ void
X+ HandleFocusChange()
X+ 
X+ {
X+  XEvent *event;
X+ 
X+  if (Tmp_win)
X+      {
X+      event = LastFocusEvent(Event.xany.window,&Event);
X+ 
X+      if ( event != NULL)
X+ 	 {
X+ 	 if (event->type == FocusIn)
X+ 	     HandleFocusIn(event);
X+ 	 else
X+ 	     HandleFocusOut(event);
X+ 	 }
X+      }
X+ }
X+ 
X+ void
X+ SynthesiseFocusOut(w)
X+ 
X+ Window w;
X+ 
X+ {
X+ XEvent event;
X+ 
X+ event.type=FocusOut;
X+ event.xfocus.window=w;
X+ event.xfocus.mode=NotifyNormal;
X+ event.xfocus.detail=NotifyPointer;
X+ 
X+ XPutBackEvent(dpy, &event);
X+ 
X+ }
X+ void
X+ SynthesiseFocusIn(w)
X+ 
X+ Window w;
X+ 
X+ {
X+ XEvent event;
X+ 
X+ event.type=FocusIn;
X+ event.xfocus.window=w;
X+ event.xfocus.mode=NotifyNormal;
X+ event.xfocus.detail=NotifyPointer;
X+ 
X+ XPutBackEvent(dpy, &event);
X+ 
X+ }
X+ 
X+ 
X  /***********************************************************************
X   *
X   *  Procedure:
X***************
X*** 2014,2033 ****
X      XEvent dummy;
X      
X      /*
X-      * Save the id of the window entered.  This will be used to remove
X-      * border highlight on entering the next application window.
X-      */
X-     if (UnHighLight_win && ewp->window != UnHighLight_win->w) {
X-       SetBorder (UnHighLight_win, False);	/* application window */
X-       if (UnHighLight_win->list) /* in the icon box */
X- 	NotActiveIconManager(UnHighLight_win->list);
X-     }
X-     if (ewp->window == Scr->Root)
X-       UnHighLight_win = NULL;
X-     else if (Tmp_win)
X-       UnHighLight_win = Tmp_win;
X- 
X-     /*
X       * if we aren't in the middle of menu processing
X       */
X      if (!ActiveMenu) {
X--- 2177,2182 ----
X***************
X*** 2065,2078 ****
X  	     * focus on this window
X  	     */
X  	    if (Scr->FocusRoot && (!scanArgs.leaves || scanArgs.inferior)) {
X! 		if (Tmp_win->list) ActiveIconManager(Tmp_win->list);
X  		if (Tmp_win->mapped) {
X- 		    /*
X- 		     * unhighlight old focus window
X- 		     */
X- 		    if (Scr->Focus &&
X- 			Scr->Focus != Tmp_win && Tmp_win->hilite_w)
X- 		      XUnmapWindow(dpy, Scr->Focus->hilite_w);
X  
X  		    /*
X  		     * If entering the frame or the icon manager, then do 
X--- 2214,2221 ----
X  	     * focus on this window
X  	     */
X  	    if (Scr->FocusRoot && (!scanArgs.leaves || scanArgs.inferior)) {
X! /*		if (Tmp_win->list) ActiveIconManager(Tmp_win->list); */
X  		if (Tmp_win->mapped) {
X  
X  		    /*
X  		     * If entering the frame or the icon manager, then do 
X***************
X*** 2087,2106 ****
X  		     */
X  		    if (ewp->window == Tmp_win->frame ||
X  			(Tmp_win->list && ewp->window == Tmp_win->list->w)) {
X- 			if (Tmp_win->hilite_w)				/* 1 */
X- 			  XMapWindow (dpy, Tmp_win->hilite_w);
X  			if (!scanArgs.leaves && !scanArgs.enters)
X  			    InstallWindowColormaps (EnterNotify,	/* 2 */
X  						    &Scr->TwmRoot);
X- 			SetBorder (Tmp_win, True);			/* 3 */
X  			if (Tmp_win->title_w && Scr->TitleFocus &&	/* 4 */
X  			    Tmp_win->wmhints && Tmp_win->wmhints->input)
X  			  SetFocus (Tmp_win, ewp->time);
X! 			if (Scr->NoTitlebar && Scr->TitleFocus &&	/*4a */
X  			    Tmp_win->wmhints && Tmp_win->wmhints->input)
X  			  SetFocus (Tmp_win, ewp->time);
X  			if (Tmp_win->protocols & DoesWmTakeFocus)	/* 5 */
X  			  SendTakeFocusMessage (Tmp_win, ewp->time);
X  			Scr->Focus = Tmp_win;
X  		    } else if (ewp->window == Tmp_win->w) {
X  			/*
X--- 2230,2251 ----
X  		     */
X  		    if (ewp->window == Tmp_win->frame ||
X  			(Tmp_win->list && ewp->window == Tmp_win->list->w)) {
X  			if (!scanArgs.leaves && !scanArgs.enters)
X  			    InstallWindowColormaps (EnterNotify,	/* 2 */
X  						    &Scr->TwmRoot);
X  			if (Tmp_win->title_w && Scr->TitleFocus &&	/* 4 */
X  			    Tmp_win->wmhints && Tmp_win->wmhints->input)
X  			  SetFocus (Tmp_win, ewp->time);
X! 			else if (Scr->NoTitlebar && Scr->TitleFocus &&	/*4a */
X  			    Tmp_win->wmhints && Tmp_win->wmhints->input)
X  			  SetFocus (Tmp_win, ewp->time);
X  			if (Tmp_win->protocols & DoesWmTakeFocus)	/* 5 */
X  			  SendTakeFocusMessage (Tmp_win, ewp->time);
X+ 			else if (!Scr->TitleFocus 
X+ 				 && Tmp_win->wmhints 
X+ 				 && Tmp_win->wmhints->input
X+ 				 && Event.xcrossing.focus)
X+ 			    SynthesiseFocusIn(Tmp_win->w);
X  			Scr->Focus = Tmp_win;
X  		    } else if (ewp->window == Tmp_win->w) {
X  			/*
X***************
X*** 2109,2114 ****
X--- 2254,2262 ----
X  			 */
X  			if (!scanArgs.leaves || scanArgs.inferior)
X  			    InstallWindowColormaps(EnterNotify, Tmp_win);
X+ 
X+ 			if (Event.xcrossing.focus)
X+ 				SynthesiseFocusIn(Tmp_win->w);
X  		    }
X  		}			/* end if Tmp_win->mapped */
X  		if (Tmp_win->wmhints != NULL &&
X***************
X*** 2253,2266 ****
X  
X  		if ((Event.xcrossing.window == Tmp_win->frame &&
X  			!scanArgs.matches) || inicon) {
X! 		    if (Tmp_win->list) NotActiveIconManager(Tmp_win->list);
X! 		    if (Tmp_win->hilite_w)
X! 		      XUnmapWindow (dpy, Tmp_win->hilite_w);
X! 		    SetBorder (Tmp_win, False);
X  		    if (Scr->TitleFocus ||
X  			Tmp_win->protocols & DoesWmTakeFocus)
X! 		      SetFocus ((TwmWindow *) NULL, Event.xcrossing.time);
X! 		    Scr->Focus = NULL;
X  		} else if (Event.xcrossing.window == Tmp_win->w &&
X  				!scanArgs.enters) {
X  		    InstallWindowColormaps (LeaveNotify, &Scr->TwmRoot);
X--- 2401,2416 ----
X  
X  		if ((Event.xcrossing.window == Tmp_win->frame &&
X  			!scanArgs.matches) || inicon) {
X! 
X  		    if (Scr->TitleFocus ||
X  			Tmp_win->protocols & DoesWmTakeFocus)
X! 			SetFocus ((TwmWindow *) NULL, Event.xcrossing.time);
X! 
X! 		    /* pretend there was a focus out as sometimes 
X! 		       we don't get one. */
X! 		    if ( Event.xcrossing.focus)
X! 			SynthesiseFocusOut(Tmp_win->w);
X! 
X  		} else if (Event.xcrossing.window == Tmp_win->w &&
X  				!scanArgs.enters) {
X  		    InstallWindowColormaps (LeaveNotify, &Scr->TwmRoot);
END_OF_twm_focus_patch/twm_focus_patch.r5
if test 9695 -ne `wc -c <twm_focus_patch/twm_focus_patch.r5`; then
    echo shar: \"twm_focus_patch/twm_focus_patch.r5\" unpacked with wrong size!
fi
# end of overwriting check
fi
echo shar: End of shell archive.
exit 0

From help-lucid-emacs-request@lucid.com  Tue Sep  8 09:44:46 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA19689; Tue, 8 Sep 92 09:44:46 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA01101g; Tue, 8 Sep 92 09:34:43 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA08786; Tue, 8 Sep 92 12:45:44 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA08782; Tue, 8 Sep 92 12:45:39 -0400
Newsgroups: comp.windows.open-look,alt.lucid-emacs.help
Path: uunet!elroy.jpl.nasa.gov!ufo!Aig.Jpl.Nasa.Gov!rouquett
From: rouquett@ai-cyclops.jpl.nasa.gov (Nicolas Rouquette)
Subject: until one can tooltalk pageview...
Message-Id: <1992Sep8.164110.29741@jpl-devvax.jpl.nasa.gov>
Nntp-Posting-Host: ai-cyclops
Reply-To: rouquett@ai-cyclops.jpl.nasa.gov
Organization: NASA/Jet Propulsion Laboratory
Date: Tue, 8 Sep 1992 16:41:10 GMT
Lines: 55
Xref: uunet comp.windows.open-look:6134 alt.lucid-emacs.help:390
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Here's a solution for a quick preview of postscript files particularly
useful within lucid emacs. 

Note: There is a significant difference in the rendering speed between
pageview and helpviewer. I don't know exactly why since I reckon that
both programs use the NeWS to process postscript.


First, define a new variable:

(defvar tex-print-extension ".dvi"
  "*Normal extension of tex files to be printed.
Normally .dvi to process tex files.
Change to .ps to for tex-print commands
to operate on the ps files instead.")

Then modify a bit the tex-print function:

(defun tex-print (&optional alt)
  "Print the .dvi file made by \\[tex-region], \\[tex-buffer] or \\[tex-file].
Runs the shell command defined by tex-dvi-print-command.  If prefix argument
is provided, use the alternative command, tex-alt-dvi-print-command."
  (interactive "P")
  (let ((print-file-name-dvi (tex-append tex-print-file tex-print-extension))
	test-name)
    (if (and (not (equal (current-buffer) tex-last-buffer-texed))
	     (file-newer-than-file-p
	      (setq test-name (tex-append (buffer-file-name)
					  tex-print-extension))
	      print-file-name-dvi))
	(setq print-file-name-dvi test-name))
    (if (not (file-exists-p print-file-name-dvi))
        (error "No appropriate `%s' file could be found" tex-print-extension)
      (tex-send-command
        (if alt tex-alt-dvi-print-command tex-dvi-print-command)
        print-file-name-dvi))))


Finally, customize at will, e.g.:

  (setq tex-dvi-print-command "dvips")
  (setq tex-alt-dvi-print-command
	'(format "dvips -p%s -l%s"
	  (read-string "First page: ")
	  (read-string "Last page: ")))
  (setq tex-dvi-view-command "helpopen")
  (setq tex-dvi-view-extension ".ps")

The net effect is that the same helpviewer process is used over and
over again to preview tex files. 

-- 
----------Nicolas Rouquette----------rouquett@aig.jpl.nasa.gov
    Artificial Intelligence Group
      Jet Propulsion Laboratory

From help-lucid-emacs-request@lucid.com  Tue Sep  8 21:27:11 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA21545; Tue, 8 Sep 92 21:27:11 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA03286g; Tue, 8 Sep 92 21:13:51 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA18940; Wed, 9 Sep 92 00:25:05 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA18936; Wed, 9 Sep 92 00:25:03 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!cs.utexas.edu!zaphod.mps.ohio-state.edu!pacific.mps.ohio-state.edu!linac!uchinews!lucpum.it.luc.edu!math.luc.edu!laufer
From: laufer@math.luc.edu (Konstantin Laufer)
Subject: lemacs 19.2 binary for IBM RS 6000 under AIX 3.2?
Message-Id: <1992Sep9.002041.9232@lucpum.it.luc.edu>
Reply-To: laufer@math.luc.edu
Fcc: +outbox
Organization: Loyola University Chicago
Date: Wed, 9 Sep 1992 00:20:41 GMT
Lines: 7
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Hello,

I need to use an RS 6000 under AIX 3.2 :-( for a class, and I was
wondering if anybody had a binary for this configuration.  Thanks,

-- 
-Konstantin [laufer@math.luc.edu]

From help-lucid-emacs-request@lucid.com  Wed Sep  9 13:39:16 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA24603; Wed, 9 Sep 92 13:39:16 PDT
Received: by heavens-gate.lucid.com id AA05282g; Wed, 9 Sep 92 13:28:37 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA05276g; Wed, 9 Sep 92 13:26:54 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA27379; Wed, 9 Sep 92 13:38:15 PDT
Date: Wed, 9 Sep 92 13:38:15 PDT
Message-Id: <9209092038.AA27379@thalidomide.lucid>
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: help-lucid-emacs@lucid.com
Subject: Lucid Emacs 19.3 released

Lucid GNU Emacs 19.3 is now available.  This is a version of GNU Emacs derived
from an early version of Emacs version 19 from the Free Software Foundation.

(If you are already a user of version 19.2, you might want to skip ahead to
the section labeled "Differences Between 19.2 and 19.3".)

You can get it via anonymous FTP from the host labrea.Stanford.EDU (36.8.0.47).
It is currently available only by FTP.  We don't have the manpower to make 
tapes right now.

Log in with the user "anonymous" and "username@host" as a password (that is,
your email address.)  Execute the command "cd pub/gnu/lucid/".  These are
the files you will find there:

  lemacs-19.3.tar.Z
	The complete source distribution.  This file is about 8 megabytes.
	When untarred and uncompressed, the source distribution will take up
	about 20 megs. You will need an additional 12 megs or so to compile it.

  lemacs-19.3-sun4.tar.Z
	This is a ready-to-run set of Sun4 executables, and a DOC file.  If
	you want to use these executables, you will still need to get the file
	lemacs-19.3.tar.Z, because Emacs cannot function very well without the
	lisp library online.  This file is about 1.7 megs, 3.8 megs when
	unpacked, 3 megs of which is the Emacs executable itself (2.1 megs if
	stripped.)

Don't forget to set "binary" mode when transferring these files.  Unpack them
with some variation of the command "zcat lemacs-19.3.tar.Z | tar -vxf -".

We have created two mailing lists for discussing our Emacs.

   bug-lucid-emacs@lucid.com	For reporting all bugs in Lucid GNU Emacs,
				including bugs in the compilation and
				installation procedures.

   help-lucid-emacs@lucid.com	For random questions and conversation
				about using Lucid GNU Emacs.

To be added or removed from these mailing lists, send mail to 
bug-lucid-emacs-request@lucid.com or help-lucid-emacs-request@lucid.com.

The bug-lucid-emacs and help-lucid-emacs mailing lists are archived on labrea,
and are bidirectionally gatewayed into the newsgroups alt.lucid-emacs.bug and
alt.lucid-emacs.help.

The bug-lucid-emacs and help-lucid-emacs mailing lists are archived on labrea.

Please do not send messages about problems with Lucid GNU Emacs to the FSF
GNU Emacs newsgroups and mailing lists (help-gnu-emacs@prep.ai.mit.edu,
bug-gnu-emacs@prep.ai.mit.edu, gnu.emacs.help, gnu.emacs.bug, et cetera)
unless you are sure that the problem you are reporting is a problem with
both versions of GNU Emacs.  People who aren't subscribed to the Lucid GNU
Emacs mailing lists most likely are not interested in hearing about problems
with it.


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 have released our work as a
forked branch of Emacs, instead of delaying any longer.

It seems likely that a merger of Epoch and Lucid Emacs will occur in the
not-too-distant future.

No Warranty
===========

Lucid GNU Emacs is distributed under exactly the same terms as GNU Emacs,
and thus has no warranty of any kind.  (However, Energize support contracts
include Lucid GNU Emacs support.)  We do not currently have plans to sell
support for Emacs independent of support for Energize.

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; it is possible to, for example, bind 
different commands to each of the chords Control-h, Control-H, Backspace,
Control-Backspace, and Super-Shift-Backspace.  Key bindings, function key
bindings, and mouse bindings live in the same keymaps.

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.

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.

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.

If you're running on a sun SparcStation, you can specify sound files for
Emacs to play instead of the default X beep.

Much more detail about the differences between Lucid GNU Emacs and Emacs 18
can be found in the file .../etc/NEWS (accessible with ``C-h n''.)

Note that building Lucid GNU Emacs requires an ANSI C compiler, such as gcc.


Major Differences Between 19.2 and 19.3
=======================================

The ISO characters have correct case and syntax tables now, so the word-motion
and case-converting commands work sensibly on them.

If you set ctl-arrow to an integer, you can control exactly which characters
are printable.  (There will be a less crufty way to do this eventually.)

Menubars can now be buffer local; the function set-screen-menubar no longer
exists.  Look at GNUS and VM for examples of how to do this, or read 
menubar.el.

When emacs is reading from the minibuffer with completions, any completions
which are visible on the screen will highlight when the mouse moves over them;
clicking middle on a completion is the same as typing it at the minibuffer.
Some implications of this:  The *Completions* buffer is always mousable.  If
you're using the completion feature of find-tag, your source code will be
mousable when you type M-.  Dired buffers will be mousable as soon as you 
type ^X^F.  And so on.

The old isearch code has been replaced with a descendant of Dan LaLiberte's
excellent isearch-mode; it is more customizable, and generally less bogus.
You can search for "composed" characters.  There are new commands, too; see
the doc for ^S, or the NEWS file.

Note that ESC no longer terminates an isearch: LFD does instead.  This is 
a change RMS has made in his v19 as well.  The old isearch variables (like
search-repeat-char) are no longer used; it's all done with keymaps now.
Please try to avoid the temptation to bind ESC to its old behavior; it was
always a bad idea to overload the meta-prefix-char in this way.  If you 
don't have a LFD key, you can make some other key be the terminator (RET,
or F1, or whatever) but using ESC is more complicated because of its goofy
equivalence to Meta.

A patched GNUS 3.14 is included.

The user's manual now documents Lucid Emacs 19.3.

A few more modes have mouse and menu support.

The startup code should be a little more robust, and give you more reasonable
error messages when things aren't installed quite right (instead of the
ubiquitous "cannot open DISPLAY"...)

Subdirectories of the lisp directory whose names begin with a hyphen or dot
are not automatically added to the load-path, so you can use this to avoid
accidentally inflicting experimental software on your users.

I've tried to incorporate all of the portability patches that were sent to
me; I tried to solve some of the problems in different ways than the 
patches did, so let me know if I missed something.

There's no `configure' support yet.  I've been sent patches to make 19.1
work with configure, but I haven't had time to integrate them into 19.3.

The OLIT menubar probably still doesn't work.  Fixes are welcome, as always.

Some systems will need to define NEED_STRDUP, NEED_REALPATH, HAVE_DREM, or
HAVE_REMAINDER in config.h.  Really this should be done in the appropriate
s- or m- files, but I don't know which systems need these and which don't.
If yours does, let me know which file it should be in.

I haven't made diffs, because they would be really huge, and I still don't
know a truly painless way to make diffs of an emacs source tree.

Check out these new packages:

blink-paren.el:	causes the matching parenthesis to flash on and off whenever
		the cursor is sitting on a paren-syntax character.

pending-del.el:	Certain commands implicitly delete the highlighted region:
		Typing a character when there is a highlighted region replaces
		that region with the typed character.

lhilit.el:	Attaches fonts/colors to patterns matching regular expressions.

font-lock.el:	Yet Another code-highlighting package, but this one is driven
		off of syntax tables, so that it understands block comments,
		strings, etc.  The insertion hook is used to fontify text as
		you type it in.  (This is fast now.)

shell-font.el:	Displays your shell-buffer prompt in boldface.

From help-lucid-emacs-request@lucid.com  Wed Sep  9 13:42:38 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA24620; Wed, 9 Sep 92 13:42:38 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA05299g; Wed, 9 Sep 92 13:32:36 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA09878; Wed, 9 Sep 92 16:43:40 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA09874; Wed, 9 Sep 92 16:43:38 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!nestroy!news-mail-gateway
From: jwz@lucid.com (Jamie Zawinski)
Subject: Lucid Emacs 19.3 released
Message-Id: <9209092038.AA27379@thalidomide.lucid>
Organization: WU Mail/News Gateway
Date: Wed, 9 Sep 1992 20:38:15 GMT
Lines: 261
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Lucid GNU Emacs 19.3 is now available.  This is a version of GNU Emacs derived
from an early version of Emacs version 19 from the Free Software Foundation.

(If you are already a user of version 19.2, you might want to skip ahead to
the section labeled "Differences Between 19.2 and 19.3".)

You can get it via anonymous FTP from the host labrea.Stanford.EDU (36.8.0.47).
It is currently available only by FTP.  We don't have the manpower to make 
tapes right now.

Log in with the user "anonymous" and "username@host" as a password (that is,
your email address.)  Execute the command "cd pub/gnu/lucid/".  These are
the files you will find there:

  lemacs-19.3.tar.Z
	The complete source distribution.  This file is about 8 megabytes.
	When untarred and uncompressed, the source distribution will take up
	about 20 megs. You will need an additional 12 megs or so to compile it.

  lemacs-19.3-sun4.tar.Z
	This is a ready-to-run set of Sun4 executables, and a DOC file.  If
	you want to use these executables, you will still need to get the file
	lemacs-19.3.tar.Z, because Emacs cannot function very well without the
	lisp library online.  This file is about 1.7 megs, 3.8 megs when
	unpacked, 3 megs of which is the Emacs executable itself (2.1 megs if
	stripped.)

Don't forget to set "binary" mode when transferring these files.  Unpack them
with some variation of the command "zcat lemacs-19.3.tar.Z | tar -vxf -".

We have created two mailing lists for discussing our Emacs.

   bug-lucid-emacs@lucid.com	For reporting all bugs in Lucid GNU Emacs,
				including bugs in the compilation and
				installation procedures.

   help-lucid-emacs@lucid.com	For random questions and conversation
				about using Lucid GNU Emacs.

To be added or removed from these mailing lists, send mail to 
bug-lucid-emacs-request@lucid.com or help-lucid-emacs-request@lucid.com.

The bug-lucid-emacs and help-lucid-emacs mailing lists are archived on labrea,
and are bidirectionally gatewayed into the newsgroups alt.lucid-emacs.bug and
alt.lucid-emacs.help.

The bug-lucid-emacs and help-lucid-emacs mailing lists are archived on labrea.

Please do not send messages about problems with Lucid GNU Emacs to the FSF
GNU Emacs newsgroups and mailing lists (help-gnu-emacs@prep.ai.mit.edu,
bug-gnu-emacs@prep.ai.mit.edu, gnu.emacs.help, gnu.emacs.bug, et cetera)
unless you are sure that the problem you are reporting is a problem with
both versions of GNU Emacs.  People who aren't subscribed to the Lucid GNU
Emacs mailing lists most likely are not interested in hearing about problems
with it.


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 have released our work as a
forked branch of Emacs, instead of delaying any longer.

It seems likely that a merger of Epoch and Lucid Emacs will occur in the
not-too-distant future.

No Warranty
===========

Lucid GNU Emacs is distributed under exactly the same terms as GNU Emacs,
and thus has no warranty of any kind.  (However, Energize support contracts
include Lucid GNU Emacs support.)  We do not currently have plans to sell
support for Emacs independent of support for Energize.

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; it is possible to, for example, bind 
different commands to each of the chords Control-h, Control-H, Backspace,
Control-Backspace, and Super-Shift-Backspace.  Key bindings, function key
bindings, and mouse bindings live in the same keymaps.

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.

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.

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.

If you're running on a sun SparcStation, you can specify sound files for
Emacs to play instead of the default X beep.

Much more detail about the differences between Lucid GNU Emacs and Emacs 18
can be found in the file .../etc/NEWS (accessible with ``C-h n''.)

Note that building Lucid GNU Emacs requires an ANSI C compiler, such as gcc.


Major Differences Between 19.2 and 19.3
=======================================

The ISO characters have correct case and syntax tables now, so the word-motion
and case-converting commands work sensibly on them.

If you set ctl-arrow to an integer, you can control exactly which characters
are printable.  (There will be a less crufty way to do this eventually.)

Menubars can now be buffer local; the function set-screen-menubar no longer
exists.  Look at GNUS and VM for examples of how to do this, or read 
menubar.el.

When emacs is reading from the minibuffer with completions, any completions
which are visible on the screen will highlight when the mouse moves over them;
clicking middle on a completion is the same as typing it at the minibuffer.
Some implications of this:  The *Completions* buffer is always mousable.  If
you're using the completion feature of find-tag, your source code will be
mousable when you type M-.  Dired buffers will be mousable as soon as you 
type ^X^F.  And so on.

The old isearch code has been replaced with a descendant of Dan LaLiberte's
excellent isearch-mode; it is more customizable, and generally less bogus.
You can search for "composed" characters.  There are new commands, too; see
the doc for ^S, or the NEWS file.

Note that ESC no longer terminates an isearch: LFD does instead.  This is 
a change RMS has made in his v19 as well.  The old isearch variables (like
search-repeat-char) are no longer used; it's all done with keymaps now.
Please try to avoid the temptation to bind ESC to its old behavior; it was
always a bad idea to overload the meta-prefix-char in this way.  If you 
don't have a LFD key, you can make some other key be the terminator (RET,
or F1, or whatever) but using ESC is more complicated because of its goofy
equivalence to Meta.

A patched GNUS 3.14 is included.

The user's manual now documents Lucid Emacs 19.3.

A few more modes have mouse and menu support.

The startup code should be a little more robust, and give you more reasonable
error messages when things aren't installed quite right (instead of the
ubiquitous "cannot open DISPLAY"...)

Subdirectories of the lisp directory whose names begin with a hyphen or dot
are not automatically added to the load-path, so you can use this to avoid
accidentally inflicting experimental software on your users.

I've tried to incorporate all of the portability patches that were sent to
me; I tried to solve some of the problems in different ways than the 
patches did, so let me know if I missed something.

There's no `configure' support yet.  I've been sent patches to make 19.1
work with configure, but I haven't had time to integrate them into 19.3.

The OLIT menubar probably still doesn't work.  Fixes are welcome, as always.

Some systems will need to define NEED_STRDUP, NEED_REALPATH, HAVE_DREM, or
HAVE_REMAINDER in config.h.  Really this should be done in the appropriate
s- or m- files, but I don't know which systems need these and which don't.
If yours does, let me know which file it should be in.

I haven't made diffs, because they would be really huge, and I still don't
know a truly painless way to make diffs of an emacs source tree.

Check out these new packages:

blink-paren.el:	causes the matching parenthesis to flash on and off whenever
		the cursor is sitting on a paren-syntax character.

pending-del.el:	Certain commands implicitly delete the highlighted region:
		Typing a character when there is a highlighted region replaces
		that region with the typed character.

lhilit.el:	Attaches fonts/colors to patterns matching regular expressions.

font-lock.el:	Yet Another code-highlighting package, but this one is driven
		off of syntax tables, so that it understands block comments,
		strings, etc.  The insertion hook is used to fontify text as
		you type it in.  (This is fast now.)

shell-font.el:	Displays your shell-buffer prompt in boldface.

From help-lucid-emacs-request@lucid.com  Wed Sep  9 15:18:28 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA24874; Wed, 9 Sep 92 15:18:28 PDT
Received: by heavens-gate.lucid.com id AA05726g; Wed, 9 Sep 92 15:08:36 PDT
Received: from relay1.UU.NET by heavens-gate.lucid.com id AA05722g; Wed, 9 Sep 92 15:07:14 PDT
Received: from uunet.uu.net (via LOCALHOST.UU.NET) by relay1.UU.NET with SMTP 
	(5.61/UUNET-internet-primary) id AA27820; Wed, 9 Sep 92 18:17:20 -0400
Received: from synaptx.UUCP by uunet.uu.net with UUCP/RMAIL
	(queueing-rmail) id 180904.10666; Wed, 9 Sep 1992 18:09:04 EDT
Received: from thymus.synaptics by synaptx.synaptics.com (4.1/SMI-4.1)
	id AA00189; Wed, 9 Sep 92 14:33:26 PDT
Received: by thymus.synaptics (4.1/SMI-4.1)
	id AA18040; Wed, 9 Sep 92 14:40:06 PDT
Message-Id: <9209092140.AA18040@thymus.synaptics>
To: help-lucid-emacs@lucid.com
Subject: Re: Lucid Emacs 19.3 released 
In-Reply-To: Your message of "Wed, 09 Sep 92 13:38:15 PDT."
             <9209092038.AA27379@thalidomide.lucid> 
Reply-To: daveg@synaptics.com
Date: Wed, 09 Sep 92 14:40:05 -0700
From: Dave Gillespie <daveg@thymus.synaptics.com>

> Note that ESC no longer terminates an isearch: LFD does instead.

Note that Sun's latest keyboard (the one they ship with Sparc 10's)
has dropped the LFD key.  As far as I know, HP keyboards have never
had a LFD key.  I would recommend at least making sure C-j is
accepted as well as LFD during a search.

Maybe RET would be better, *not* equivalenced to C-m.

								-- Dave

From help-lucid-emacs-request@lucid.com  Wed Sep  9 15:27:56 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA24902; Wed, 9 Sep 92 15:27:56 PDT
Received: by heavens-gate.lucid.com id AA05758g; Wed, 9 Sep 92 15:17:36 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA05747g; Wed, 9 Sep 92 15:13:44 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA27897; Wed, 9 Sep 92 15:23:34 PDT
Date: Wed, 9 Sep 92 15:23:34 PDT
Message-Id: <9209092223.AA27897@thalidomide.lucid>
X-Windows: The defacto substandard.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: daveg@synaptics.com
Cc: help-lucid-emacs@lucid.com
Subject: Re: Lucid Emacs 19.3 released 
In-Reply-To: Dave Gillespie's message of Wed 9-Sep-92 14:40:05 -0700 <9209092140.AA18040@thymus.synaptics>
References: <9209092038.AA27379@thalidomide.lucid>
	<9209092140.AA18040@thymus.synaptics>

Yes, C-j works the same as LFD; anything that is passed to define-key as a 
string does this kind of ASCII compatibility hack.

From help-lucid-emacs-request@lucid.com  Wed Sep  9 15:33:17 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA24926; Wed, 9 Sep 92 15:33:17 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA05776g; Wed, 9 Sep 92 15:20:31 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA17194; Wed, 9 Sep 92 18:31:41 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA17190; Wed, 9 Sep 92 18:31:40 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!nestroy!news-mail-gateway
From: jwz@lucid.com (Jamie Zawinski)
Subject: Re: Lucid Emacs 19.3 released
Message-Id: <9209092223.AA27897@thalidomide.lucid>
Organization: WU Mail/News Gateway
References: <9209092140.AA18040@thymus.synaptics>
Date: Wed, 9 Sep 1992 22:23:34 GMT
Lines: 2
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Yes, C-j works the same as LFD; anything that is passed to define-key as a 
string does this kind of ASCII compatibility hack.

From help-lucid-emacs-request@lucid.com  Wed Sep  9 15:33:35 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA24930; Wed, 9 Sep 92 15:33:35 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA05787g; Wed, 9 Sep 92 15:20:55 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA17211; Wed, 9 Sep 92 18:32:06 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA17206; Wed, 9 Sep 92 18:32:03 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!usc!wupost!spool.mu.edu!darwin.sura.net!paladin.american.edu!news.univie.ac.at!nestroy!news-mail-gateway
From: daveg@thymus.synaptics.COM (Dave Gillespie)
Subject: Re: Lucid Emacs 19.3 released
Message-Id: <9209092140.AA18040@thymus.synaptics>
Reply-To: daveg@synaptics.com
Organization: WU Mail/News Gateway
References: <9209092038.AA27379@thalidomide.lucid>
Date: Wed, 9 Sep 1992 07:40:05 GMT
Lines: 10
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

> Note that ESC no longer terminates an isearch: LFD does instead.

Note that Sun's latest keyboard (the one they ship with Sparc 10's)
has dropped the LFD key.  As far as I know, HP keyboards have never
had a LFD key.  I would recommend at least making sure C-j is
accepted as well as LFD during a search.

Maybe RET would be better, *not* equivalenced to C-m.

								-- Dave

From help-lucid-emacs-request@lucid.com  Thu Sep 10 06:52:51 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA27614; Thu, 10 Sep 92 06:52:51 PDT
Received: by heavens-gate.lucid.com id AA07636g; Thu, 10 Sep 92 06:39:19 PDT
Received: from amil.co.il by heavens-gate.lucid.com id AA07632g; Thu, 10 Sep 92 06:38:26 PDT
Received: from ipc8.AMIL ([192.86.90.18]) by amil.co.il (4.1/AMIL-M2)
	id AA21434; Thu, 10 Sep 92 16:49:02 IDT
Date: Thu, 10 Sep 92 16:49:02 IDT
From: danny@amil.co.il (Danny Bar-Dov)
Message-Id: <9209101349.AA21434@amil.co.il>
Received: by ipc8.AMIL (4.1/SMI-4.1)
	id AA00509; Thu, 10 Sep 92 15:48:58 IST
To: help-lucid-emacs@lucid.com
Subject: compiling lucid 19.2 on HP 7x0

I just finished compiling lemacs-19.2 on an HP 7x0 platform (hpux 8.07)
and I think some of you might be interested in some of the
problems.

1. Lucid specifies an ansi C compiler. Not having gcc - I tried to use
HP's cc with the ansi mode flag (-Aa). After complaints about errors in header
files (HP's) I tried the HP CC (C++) compiler - same problems. The c89
(another flavor of HP ansi compiler) yielded same results.
To make a long story short I've found out that you must define
_INCLUDE_POSIX_SOURCE _INCLUDE_HPUX_SOURCE _INCLUDE_XOPEN_SOURCE
to make it work.

2. HP do not provide Xmu & Xaw include files. Also they do not
give these libraries in both archive & shared library formats -
one is provided only as a shared lib. the other as an archive.
- solution - I compiled against X11R5 native distribution.

3. (This was partly mentioned in lucid-19.3 announcement) There are
some mathematic functions missing under the HP platform
some are called differently (i.e. remainder() is called fabs())
others (i.e. atanh) are totally missing. I simply closed all these
references with #ifndef HPUX

4. The last problem (woth mentioning) has to do with the
init_term function. Lucid emacs has an INVISIBLE_TERMINAL_KLUDGE
which puts in the environment (or in the MAINTAINED_ENVIRONMENT)
a definition of an "invisible" TERM & TERMCAP - and then calls
init_term recursively. init_term calls tgetent which is supposed to
read TERMCAP if defined and /etc/termcap otherwise. Only on the HP
tgetent is said to "emulate" termcap by using terminfo. It does not
read the TERMCAP variable - instead it goes directly to
/usr/lib/terminfo/i/invisible and fails the startup.
After not succeeding to fix the code I did the obvious (?)
I created the missing terminfo entry.

--
Danny.

-------------------------------
Dan Bar Dov

Applied Materials (Israel)

Email:        danny@amil.co.il
Phone: office 972-3-499573
       home   972-3-5469625
TimeZone:     GMT+2
-------------------------------

From help-lucid-emacs-request@lucid.com  Thu Sep 10 10:42:56 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA00317; Thu, 10 Sep 92 10:42:56 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA08179g; Thu, 10 Sep 92 10:30:54 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA26365; Thu, 10 Sep 92 13:42:07 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA26357; Thu, 10 Sep 92 13:41:49 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!stanford.edu!CSD-NewsHost.Stanford.EDU!Xenon.Stanford.EDU!hoelzle
From: hoelzle@Xenon.Stanford.EDU (Urs Hoelzle)
Subject: paste in minibuffer (19.3)
Message-Id: <hoelzle.716146448@Xenon.Stanford.EDU>
Organization: CS Department, Stanford University, California, USA
Distribution: alt
Date: 10 Sep 92 17:34:08 GMT
Lines: 9
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

The new "mousable completions" feature is cool, but it seems to have
broken the cut&paste behavior for the minibuffer.  In 19.3, the middle
mouse button no longer works as "paste" in the minibuffer.  Pasting
with the mouse is very useful: for example, when doing a query
replace, I can select the search string in the text buffer and paste
it in the minibuffer.  Is there any way to change this back to the
19.2 behavior?

-Urs

From help-lucid-emacs-request@lucid.com  Thu Sep 10 11:05:09 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA00394; Thu, 10 Sep 92 11:05:09 PDT
Received: by heavens-gate.lucid.com id AA08273g; Thu, 10 Sep 92 10:52:42 PDT
Received: from nestroy.wu-wien.ac.at by heavens-gate.lucid.com id AA08261g; Thu, 10 Sep 92 10:49:40 PDT
Received: from dec4.wu-wien.ac.at by nestroy.wu-wien.ac.at with SMTP
	(16.6/15.6) id AA06457; Thu, 10 Sep 92 20:31:46 +0200
Received: by dec4.wu-wien.ac.at (5.57/Ultrix3.0-C)
	id AA10056; Thu, 10 Sep 92 19:22:27 +0200
From: neumann%dec4.wu-wien.ac.at@lucid.com (Gustaf Neumann)
Message-Id: <9209101722.AA10056@dec4.wu-wien.ac.at>
To: help-lucid-emacs@lucid.com
Subject: compiling 19.3 on a DECstation under ultrix 4.2
Date: Thu, 10 Sep 92 18:04:55 MET

Maybe someone can need the following information:
i have compiled lemacs 19.3 sucessfully on a DECstation 5000/200
Ultrix 4.2, X11R5 from MIT using gcc.2.2

The following two small changes were necessary:

a) gcc reported a type clash due to a different protoyping of getenv
in environ.c. i added the following hack to lisp.h.

<dec4:neumann:83> diff -c lisp.h.orig lisp.h
*** lisp.h.orig Thu Sep 10 18:08:57 1992
--- lisp.h      Thu Sep 10 12:16:50 1992
***************
*** 17,24 ****
--- 17,26 ----
  along with GNU Emacs; see the file COPYING.  If not, write to
  the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
  
+ #ifndef ultrix
  #ifdef __STDC__
  #include <stdlib.h>
+ #endif
  #endif
  
  /* Define the fundamental Lisp data structures */

b) change in the xmakefile in the src directory the tercapobj definition to 

	termcapobj = termcap.o tparam.o



some parameters from my config.h
"s/s-bsd4-3.h", "m/m-pmax.h"
i used SYTEM_MALLOC instead of GNU_MALLOC, 
#define NEED_STRDUP
#define NEED_REALPATH
#define LIB_GCC ../../gcc-2.2/libgcc.a

everything compiled fine with gcc except xdisp.c

-gustaf
--
Gustaf Neumann          neumann@dec4.wu-wien.ac.at, neumann@awiwuw11.bitnet
Vienna University of Economics and Business Administration 
Augasse 2-6,  A-1090 Vienna, Austria		
Tel: +43 (222) 31-336 x4533  	Fax: 347-555

From help-lucid-emacs-request@lucid.com  Thu Sep 10 11:07:54 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA00413; Thu, 10 Sep 92 11:07:54 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA08287g; Thu, 10 Sep 92 10:55:27 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA27844; Thu, 10 Sep 92 14:06:19 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA27833; Thu, 10 Sep 92 14:06:11 -0400
Path: uunet!mcsun!sunic!corax.udac.uu.se!woody.csd.uu.se!hb
From: hb%woody.csd.uu.se@lucid.com (Henrik B}kman  CSD)
Newsgroups: alt.lucid-emacs.help
Subject: more lemacs 19.3 on HPUX
Date: 10 Sep 1992 17:30:35 GMT
Organization: Uppsala University
Lines: 138
Distribution: world
Message-Id: <18o0nrINNf43@corax.udac.uu.se>
Nntp-Posting-Host: woody.csd.uu.se
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I have just made Lucid-emacs 19.3 on HPUX 8.07 for a couple of 730's.
I had slite different problems than Danny! Well, such is life :-(
Here is my story.

1. I do the following changes in 'src/config.h'

	35c35
	< /* #define USE_GCC */
	---
	> #define USE_GCC
	43c43
	< #include "s/s-hpux8.h"
	---
	> #include "s/s-sunos4.h"
	50c50
	< #include "m/m-hp9000s800.h"
	---
	> #include "m/m-sparc.h"
	112,113c112
	< /* HB: 920910: hpux missing a lot of floating point functions. */
	< /* #define LISP_FLOAT_TYPE */
	---
	> #define LISP_FLOAT_TYPE
	187c186
	< #define LD_SWITCH_SITE -L/local/X11R5/lib -a archive
	---
	> /* #define LD_SWITCH_SITE -L/x11r4/usr.`arch`/lib */
	194c193
	< #define C_SWITCH_SITE -I/local/X11R5/include -Aa -D_HPUX_SOURCE
	---
	> /* #define C_SWITCH_SITE -I/cadillacgnu/gcc-include -I/x11r4/usr/include */

I am using the ordinary (?) 'cc' in ANSI-mode. To get ANSI make some
changes to C_SWITCH_SITE. I am also using X11R5 (#16) from MIT. I don't
know if the "super-switch" '_HPUX_SOURCE' is nesesary everywhere but I
don't have the time to check it out. Also change 'LD_SWITCH_SITE' to
use "static" loading.

As Danny I had problems with missing floating-point functions and the
easiest, I thing, way to get rid of the problems is to comment out
'LISP_FLOAT_TYPE'

There is two files for hpux in src/s/ (s-hpux.h and s-hpux8.h).
s-hpux8.h seems to be the new one to use, or...?

2. I do the following changes to 'src/s/s-hpux8.h'

	211,213c211,212
	< /* HB: 920910: This will create inconsistens in <stdlib.h>! */
	< /* #define rand lrand48 */
	< /* #define srand srand48 */
	---
	> #define rand lrand48
	> #define srand srand48

If I redefines 'rand' and 'srand' I get inconsistensy errors in <stdlib.h>.
Thats because <stdlib.h> declares BOTH 'rand' 'srand' AND 'lrand48' and 'srand48'
but in an incompatible way! You see the problem?! Well I commented it out and
did the following changes to 'src/sysdep.c'

	2215,2227d2214
	< /* HB: 920910: We use lrand48() and srand48() on hpux. */
	< #if defined(__hpux)
	< long random ()
	< {
	<   return (lrand48 ());
	< }
	<
	< void srandom (arg)
	<      int arg;
	< {
	<   srand48 ((long) arg);
	< }
	< #else /* __hpux */
	2252c2239
	< #endif /* __hpux */

I just make my "own" versions of 'random' and 'srandom' for hpux. This
maybe isn't the way to do it but I think it's safer than the "patch" in
'src/s/s-hpux8.h'.

You don't have to make this fix in 'src/sysdep.c' if you don't want
because hpux also has 'rand' and 'lrand' but I think it's better to
have the newer *rand48 functions.

3. I do the following changes in 'src/events.h'

	219,220d218
	< /* HB: 920910: Cause trouble "redeclaration" in hpux. */
	< #if ! defined(__hpux)
	222d219
	< #endif

This takes away 'struct Lisp_Process;' which causes complains from the
compiler. Why??? Well, it seems to work without it.

4. I do the following changes in 'src/environ.c'

	129d128
	< /* HB: 920910: 'str' should be 'const' and not 'unsigned' in hpux. */
	132,134d130
	< #if defined(__hpux)
	<      register const char *str;
	< #else
	136d131
	< #endif

'cc' complains about incompatible arguments in the definition of 'getenv'.
The header-file in hpux want's 'str' to be of type 'const char *' instead
of 'unsigned char *'. Maybe there is an slightly better fix for this than
my way.

5. I do the following changes in 'src/lwlib/lwlib.c'

	27,28d26
	< /* HB: 920910: hpux doesn't have <alloca.h>. */
	< #if ! defined(__hpux)
	30d27
	< #endif

This "comments out" '#include <alloca.h>'. I can't find it anywhere
on my systems and it seems to work fine without it.

This did it! Now lemacs builds nicely and it starts up ok. I haven't
used it so much so there maybe is other errors but which program haven't
got errors :-)

Although I got the same problem as Danny with 'INVISIBLE_TERMINAL_KLUDGE'
in 19.2 it doesn't shoved up in 19.3 for me!?!?

Have a good time with lemacs out there. I will.
 
-- 
----------------------------------------------------------------------
Henrik Bakman           Adress: Box 520          Tel: +46 18 181044
System Manager                  751 20 UPPSALA   Fax: +46 18 521270
Computing Science Dep.          SWEDEN           Email: hb@csd.uu.se
Uppsala University

From help-lucid-emacs-request@lucid.com  Thu Sep 10 11:45:21 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA00556; Thu, 10 Sep 92 11:45:21 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA08412g; Thu, 10 Sep 92 11:33:17 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA02137; Thu, 10 Sep 92 14:44:24 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA02133; Thu, 10 Sep 92 14:44:18 -0400
Path: uunet!tymix!gabriela!steve
From: steve@gabriela.tymnet.com (Steve Sandke)
Newsgroups: alt.lucid-emacs.help
Subject: Problem compiling 19.3 with Motif
Message-Id: <2474@tymix.Tymnet.COM>
Date: 10 Sep 92 18:39:51 GMT
Organization: BT North America, San Jose, CA
Lines: 27
Nntp-Posting-Host: gabriela
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I'm having problems compiling 19.3 with Motif support enabled.  Here's what
the linker tells me:

ld   -e __start -Bstatic    -L. -L./lwlib -o temacs crt0.o dispnew.o screen.o scroll.o xdisp.o window.o  events.o event-alloc.o event-stream.o  term.o cm.o xterm.o xfns.o xselect.o xutils.o event-Xt.o menubar.o play.o libsst.o  emacs.o keyboard.o macros.o keymap.o sysdep.o  buffer.o filelock.o insdel.o marker.o  minibuf.o fileio.o dired.o filemode.o  cmds.o casetab.o casefiddle.o indent.o search.o regex.o undo.o  alloc.o data.o doc.o editfns.o callint.o  eval.o floatfns.o fns.o print.o lread.o  abbrev.o sy
ntax.o font_lock.o unexec.o mocklisp.o bytecode.o  process.o callproc.o environ.o  doprnt.o extents.o faces.o elhash.o hash.o tparam.o lastfile.o gmalloc.o vm-limit.o ScreenWidget.o ColumnWidget.o EmacsShell.o sunOS-fix.o strcmp.o strcpy.o  -L/usr/demo/SOUND -laudio    ./lwlib/liblw.a -lXm -lXaw -lXext -lXt -lXmu -lX11   -ltermcap  -lg  -lm -lc
Undefined
___main
_create_debugger_p_sheet
_create_call_browser_p_sheet
_create_breaklist_p_sheet
_create_class_browser_p_sheet
_create_le_browser_p_sheet
_create_project_p_sheet
*** Error code 2
make: Fatal error: Command failed for target `temacs'

I know the problem with main is something else - I remember doing something to 
solve it in 19.2.  But the rest of the stuff is new - it's all in lwlib-Xm.c (or something
like that).  I looked in the 19.2 code, and it isn't there.

What do I do?  What am I missing?

-- 
-------------------
Steve Sandke
steve@orchid.tymnet.com


From help-lucid-emacs-request@lucid.com  Thu Sep 10 17:52:20 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01490; Thu, 10 Sep 92 17:52:20 PDT
Received: by heavens-gate.lucid.com id AA09483g; Thu, 10 Sep 92 17:38:06 PDT
Received: from Sun.COM by heavens-gate.lucid.com id AA09472g; Thu, 10 Sep 92 17:35:53 PDT
Received: from snail.Sun.COM (snail.Corp.Sun.COM) by Sun.COM (4.1/SMI-4.1)
	id AA07565; Thu, 10 Sep 92 17:47:10 PDT
Received: from East.Sun.COM by snail.Sun.COM (4.1/SMI-4.1)
	id AA00612; Thu, 10 Sep 92 17:47:05 PDT
Received: from sunpix.East.Sun.COM (string-beans.East.Sun.COM) by East.Sun.COM (4.1/SMI-4.1)
	id AA13585; Thu, 10 Sep 92 20:47:03 EDT
Received: from quixote.East.Sun.COM by sunpix.East.Sun.COM (4.1/SMI-4.1)
	id AA25361; Thu, 10 Sep 92 20:47:02 EDT
Date: Thu, 10 Sep 92 20:47:01 EDT
From: jlf@sunpix.East.Sun.COM (John L. Furlani)
Message-Id: <9209110047.AA25361@sunpix.East.Sun.COM>
To: help-lucid-emacs@lucid.com
Subject: ? Don't see s-usg5-4.h
Content-Length: 1072


Just pulled over lemacs-19.3 for a first attempt a Lucid Emacs.

I see that u-usg5-4.h is supposedly supported in the etc/MACHINES
file, but it isn't in the src/s directory.

I'm trying to build under Solaris 2.0 and figured that this would give
me a better place to start.

Is this just inadvertently missing or does Lucid not work under
Solaris 2.0 yet?

please advise,
j.

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
John L. Furlani                                    Video Software
MaBell:		(919)460-8383                      Sun Microsystems
Internet:	john.furlani@East.Sun.COM          P.O. Box 13447
Uucp:		sun!sunpix!furlani@uunet.uu.net    RTP, NC 27709

 "Mars is essentially in the same orbit ... somewhat the same
   distance from the Sun, which is very important.  We have seen
   pictures where there are canals, we believe, and water.  If
   there is water, that means there is oxygen.  If oxygen, that
   means we can breathe." -- Vice Pres. Dan Quayle on Mars
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

From help-lucid-emacs-request@lucid.com  Thu Sep 10 17:56:11 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01496; Thu, 10 Sep 92 17:56:11 PDT
Received: by heavens-gate.lucid.com id AA09494g; Thu, 10 Sep 92 17:40:45 PDT
Received: from relay2.UU.NET by heavens-gate.lucid.com id AA09484g; Thu, 10 Sep 92 17:38:54 PDT
Received: from uunet.uu.net (via LOCALHOST.UU.NET) by relay2.UU.NET with SMTP 
	(5.61/UUNET-internet-primary) id AA05884; Thu, 10 Sep 92 20:49:46 -0400
Received: from synaptx.UUCP by uunet.uu.net with UUCP/RMAIL
	(queueing-rmail) id 204803.22427; Thu, 10 Sep 1992 20:48:03 EDT
Received: from thymus.synaptics by synaptx.synaptics.com (4.1/SMI-4.1)
	id AA04544; Thu, 10 Sep 92 17:01:50 PDT
Received: by thymus.synaptics (4.1/SMI-4.1)
	id AA18873; Thu, 10 Sep 92 17:08:34 PDT
Message-Id: <9209110008.AA18873@thymus.synaptics>
To: help-lucid-emacs@lucid.com
Cc: uunet!graceland.ih.att.com!ladd@uunet.UU.NET,
        help-gnu-emacs@prep.ai.mit.edu
Subject: New Sun keyboards
In-Reply-To: Your message of "Thu, 10 Sep 92 09:57:33 CDT."
             <9209101458.AA16675@relay2.UU.NET> 
Reply-To: daveg@synaptics.com
Date: Thu, 10 Sep 92 17:08:32 -0700
From: Dave Gillespie <daveg@thymus.synaptics.com>

Dave Ladd writes:
>> [I mentioned Sun's latest keyboard rearrangement on help-lucid-emacs]
> What? Sun changed keyboard layouts? Arrrrgggghhhhh!!!!!
> I hesitate to ask, but where are control and escape?

Yes, they did.  I'll summarize here for the benefit of those who
are planning which keys should do what in their Emacs packages.

Sun has a tendency to make radical changes to its keyboards at
regular intervals.  The previous keyboard we were getting with
all our Sparc machines was divided into three areas:  11 "L"
function keys, the main keyboard including a row of "F" keys
flush against the digit row, and a keypad group which doubled
as cursor motion keys.

Our latest IPX shipment came with a new keyboard.  Here's what
it looks like:

There are four areas on the keyboard, left-to-right.  The top
row (with the "F" keys) is now separated from the other rows
by about one row-height.

The leftmost area has the same ten keys "Stop", "Again", etc.,
although they no longer have "L" labels.  The "Help" key is on
the top row next to the "F" keys.

The main keyboard looks like this:

???    F1 F2 F3 F4  F5 F6 F7 F8  F9 F10 F11 F12

ESC  1  2  3  4  5  6  7  8  9  0  -  =  \  `
TAB   Q  W  E  R  T  Y  U  I  O  P  [  ]  BkSp
Cntrl  A  S  D  F  G  H  J  K  L  ;  '  Return
Shift   Z  X  C  V  B  N  M  ,  .  /     Shift

Note that the Return key has become wide instead of tall,
the LineFeed key has disappeared to make room for a wider
Shift key, the Backspace key has moved down one row, and
the Delete key has moved off the main keyboard!

Since Sun has always been of the "Delete, not Backspace"
religion, I don't know how to interpret their moving Delete
off the main keyboard.  Maybe Sun software is going to switch
over to using Backspace, or maybe users are expected to
reach over to the Del key now.  (Del is in the next area
over, on the same row as Backspace.)  (I.e., farther over
and on a different row than it used to be.)

The lack of LFD is what brought this up in the first place;
it might be a good idea to phase out the idea of LFD has a
special key in Emacs modes, since new Sun users (as well as
users of most other machines I've seen) will only be able to
get it as C-j.

I've heard Emacs 19 will be using LFD instead of ESC to
terminate incremental search.  Since even Sun seems to have
abandoned LFD, maybe RET would be a better choice.

Happily, Control, ESC, and Caps Lock have not been moved!

The backquote/tilde has moved up to the top row, and the
backslash/vertical bar has moved down from the "F" row.

There are still 12 "F" keys, arranged in three groups of
four across the top of the keyboard.  There is also an
unlabeled "mystery" key between Help and F1, which I've
shown as "???".

The two groups to the right of the main keyboard look like
this:

   PrScr  ScrLk  Pause        A      B      C      D

   Insert Home   PgUp         NumLk  /      *      -
   Del    End    PgDn         7      8      9      +
                              4      5      6      +
          Up                  1      2      3      Enter
   Left   Down   Right           0          .      Enter

The keypad area is the same as before, and continues to have
secondary labels for arrows, "Home", etc.  But there are new
cursor motion keys that do the same things even with NumLock
turned on.  (Actually, there is one difference in the keypad:
The "=" key is gone, and NumLock has been moved down from the
"F" row to take its place.)

The keys labelled "A", "B", "C", "D" have funny symbols for
adjusting volume, brightness, etc.

There are no separate LEDs, but CapsLock, ScrollLock, Compose,
and NumLock all have small lights mounted inside the keys.

Summary:  LineFeed, Delete, and keypad = have disappeared;
backquote, backslash, Help, and NumLock have been moved;
special cursor motion keys have been introduced.  I expect
the major effects this will have on software design will be
an inclination to map Backspace to be the same as Delete used
to be; putting less emphasis on LineFeed as a useful function
key; and keeping the keypad in "numeric" mode most of the time.

The old Backspace/Delete controversy will be mostly alleviated
in Emacs 19, where (at least on X systems) Backspace and C-h
will be distinguishable.  We can have Backspace and Delete do
the same thing by default, with C-h still bound as the help
prefix.

The good news is we won't be hitting backquote instead of
Return, or F2 instead of a digit key, any more.  The bad news
is that WE'LL HAVE TO LEARN ANOTHER STUPID KEYBOARD AGAIN!
Oh, well, I guess that's the price of progress.  :-)

								-- Dave

From help-lucid-emacs-request@lucid.com  Thu Sep 10 17:56:24 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01500; Thu, 10 Sep 92 17:56:24 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA09504g; Thu, 10 Sep 92 17:42:34 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA22233; Thu, 10 Sep 92 20:53:50 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA22229; Thu, 10 Sep 92 20:53:49 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!nestroy!news-mail-gateway
From: jlf@sunpix.East.SUn.COM (John L. Furlani)
Subject: ? Don't see s-usg5-4.h
Message-Id: <9209110047.AA25361@sunpix.East.Sun.COM>
Organization: WU Mail/News Gateway
Date: Fri, 11 Sep 1992 00:47:01 GMT
Lines: 27
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


Just pulled over lemacs-19.3 for a first attempt a Lucid Emacs.

I see that u-usg5-4.h is supposedly supported in the etc/MACHINES
file, but it isn't in the src/s directory.

I'm trying to build under Solaris 2.0 and figured that this would give
me a better place to start.

Is this just inadvertently missing or does Lucid not work under
Solaris 2.0 yet?

please advise,
j.

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
John L. Furlani                                    Video Software
MaBell:		(919)460-8383                      Sun Microsystems
Internet:	john.furlani@East.Sun.COM          P.O. Box 13447
Uucp:		sun!sunpix!furlani@uunet.uu.net    RTP, NC 27709

 "Mars is essentially in the same orbit ... somewhat the same
   distance from the Sun, which is very important.  We have seen
   pictures where there are canals, we believe, and water.  If
   there is water, that means there is oxygen.  If oxygen, that
   means we can breathe." -- Vice Pres. Dan Quayle on Mars
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

From help-lucid-emacs-request@lucid.com  Thu Sep 10 20:26:48 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01810; Thu, 10 Sep 92 20:26:48 PDT
Received: by heavens-gate.lucid.com id AA09901g; Thu, 10 Sep 92 20:13:05 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA09896g; Thu, 10 Sep 92 20:10:03 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA02602; Thu, 10 Sep 92 20:19:59 PDT
Date: Thu, 10 Sep 92 20:19:59 PDT
Message-Id: <9209110319.AA02602@thalidomide.lucid>
X-Windows: A moment of convenience, a lifetime of regret.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: hb%woody.csd.uu.se@lucid.com (Henrik B}kman  CSD)
Cc: help-lucid-emacs@lucid.com
Subject: Re: more lemacs 19.3 on HPUX
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Henrik B}kman CSD's message of  10-Sep-92 17:30:35 GMT <18o0nrINNf43@corax.udac.uu.se>
References: <18o0nrINNf43@corax.udac.uu.se>

(I still assert that messages like this belong on the bug list, not the
help list, but I'm sure I'll continue to be ignored.)

In message <18o0nrINNf43@corax.udac.uu.se> Henrik B}kman CSD wrote:
>
> 	< #define C_SWITCH_SITE -I/local/X11R5/include -Aa -D_HPUX_SOURCE

When sending patches, please use "diff -c" instead of plain "diff".  It
makes it much easier for me to understand (and install) your changes.

Is _HPUX_SOURCE enough, or are all of _INCLUDE_POSIX_SOURCE,
_INCLUDE_HPUX_SOURCE, and _INCLUDE_XOPEN_SOURCE necessary, as Danny said?

Would adding this to config.h work?

	#ifdef hpux
	#define _HPUX_SOURCE
	#endif

Actually, I just remember that I had to add this junk to the Imakefile of
xkeycaps to get it to (allegedly) work on various releases of the HP OS.
If anyone knows what the story is with these goofy HP tags, please let 
me know.

/* This nonsense seems to be necessary to get the passwd struct on all HP
   sysems.  HP can't seem to make up their mind what preprocessor directive
   they want to use to tell their header files that they are being compiled
   on an HP.  Don't ask me to explain why these aren't the default...
 */
#if defined(HPUX) || defined(hpux) || defined(__hpux) || defined(_HPUX_SOURCE)
     DEFINES = -D_HPUX_SOURCE -DHPUX -Dhpux -D__hpux
#endif

> As Danny I had problems with missing floating-point functions and the
> easiest, I thing, way to get rid of the problems is to comment out
> 'LISP_FLOAT_TYPE'

It would be better if someone could figure out what the HP equivalents of
the various float functions are.  An emacs without float support is like
a day without sunshine...

> There is two files for hpux in src/s/ (s-hpux.h and s-hpux8.h).
> s-hpux8.h seems to be the new one to use, or...?

You tell me :-)

> 3. I do the following changes in 'src/events.h'
> 
> 	219,220d218
> 	< /* HB: 920910: Cause trouble "redeclaration" in hpux. */
> 	< #if ! defined(__hpux)
> 	222d219
> 	< #endif
> 
> This takes away 'struct Lisp_Process;' which causes complains from the
> compiler. Why??? Well, it seems to work without it.

But it doesn't on other systems; this is legal ANSI C, and if the HP 
compiler chokes on it, that's a bug.

The problem is that the line

  void (*select_process_cb)	(struct Lisp_Process *);

will, when fed through a compliant ANSI C compiler, generate a warning
something like "scope of Lisp_Process consists of parameter list only"
unless Lisp_Process is already globally declared as a structure name.
"struct Lisp_Process;" is a legal declaration, and does not conflict
with a (potentially earlier) declaration of struct Lisp_Process in
process.h, which may or may not have been included before events.h.

> Although I got the same problem as Danny with 'INVISIBLE_TERMINAL_KLUDGE'
> in 19.2 it doesn't shoved up in 19.3 for me!?!?

That's because INVISIBLE_TERMINAL_KLUDGE kludges no more!

	-- Jamie

From help-lucid-emacs-request@lucid.com  Thu Sep 10 20:31:19 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01827; Thu, 10 Sep 92 20:31:19 PDT
Received: by heavens-gate.lucid.com id AA09920g; Thu, 10 Sep 92 20:16:55 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA09905g; Thu, 10 Sep 92 20:14:37 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA02616; Thu, 10 Sep 92 20:24:31 PDT
Date: Thu, 10 Sep 92 20:24:31 PDT
Message-Id: <9209110324.AA02616@thalidomide.lucid>
X-Windows: Sometimes you fill a vacuum and it still sucks.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: hoelzle@Xenon.Stanford.EDU (Urs Hoelzle)
Cc: help-lucid-emacs@lucid.com
Subject: Re: paste in minibuffer (19.3)
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Urs Hoelzle's message of  10-Sep-92 17:34:08 GMT <hoelzle.716146448@Xenon.Stanford.EDU>
References: <hoelzle.716146448@Xenon.Stanford.EDU>

In message <hoelzle.716146448@Xenon.Stanford.EDU> Urs Hoelzle wrote:
>
> In 19.3, the middle mouse button no longer works as "paste" in the
> minibuffer. [...] Is there any way to change this back to the 19.2 behavior?

Of course, just change the binding of button2 in minibuffer-local-map back
to what it is globally.

From help-lucid-emacs-request@lucid.com  Thu Sep 10 20:31:21 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01829; Thu, 10 Sep 92 20:31:21 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA09918g; Thu, 10 Sep 92 20:16:49 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA25826; Thu, 10 Sep 92 23:28:01 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA25822; Thu, 10 Sep 92 23:27:59 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!nestroy!news-mail-gateway
From: jwz@lucid.com (Jamie Zawinski)
Subject: Re: more lemacs 19.3 on HPUX
Message-Id: <9209110319.AA02602@thalidomide.lucid>
Organization: WU Mail/News Gateway
References: <18o0nrINNf43@corax.udac.uu.se>
Date: Fri, 11 Sep 1992 03:19:59 GMT
Lines: 77
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

(I still assert that messages like this belong on the bug list, not the
help list, but I'm sure I'll continue to be ignored.)

In message <18o0nrINNf43@corax.udac.uu.se> Henrik B}kman CSD wrote:
>
> 	< #define C_SWITCH_SITE -I/local/X11R5/include -Aa -D_HPUX_SOURCE

When sending patches, please use "diff -c" instead of plain "diff".  It
makes it much easier for me to understand (and install) your changes.

Is _HPUX_SOURCE enough, or are all of _INCLUDE_POSIX_SOURCE,
_INCLUDE_HPUX_SOURCE, and _INCLUDE_XOPEN_SOURCE necessary, as Danny said?

Would adding this to config.h work?

	#ifdef hpux
	#define _HPUX_SOURCE
	#endif

Actually, I just remember that I had to add this junk to the Imakefile of
xkeycaps to get it to (allegedly) work on various releases of the HP OS.
If anyone knows what the story is with these goofy HP tags, please let 
me know.

/* This nonsense seems to be necessary to get the passwd struct on all HP
   sysems.  HP can't seem to make up their mind what preprocessor directive
   they want to use to tell their header files that they are being compiled
   on an HP.  Don't ask me to explain why these aren't the default...
 */
#if defined(HPUX) || defined(hpux) || defined(__hpux) || defined(_HPUX_SOURCE)
     DEFINES = -D_HPUX_SOURCE -DHPUX -Dhpux -D__hpux
#endif

> As Danny I had problems with missing floating-point functions and the
> easiest, I thing, way to get rid of the problems is to comment out
> 'LISP_FLOAT_TYPE'

It would be better if someone could figure out what the HP equivalents of
the various float functions are.  An emacs without float support is like
a day without sunshine...

> There is two files for hpux in src/s/ (s-hpux.h and s-hpux8.h).
> s-hpux8.h seems to be the new one to use, or...?

You tell me :-)

> 3. I do the following changes in 'src/events.h'
> 
> 	219,220d218
> 	< /* HB: 920910: Cause trouble "redeclaration" in hpux. */
> 	< #if ! defined(__hpux)
> 	222d219
> 	< #endif
> 
> This takes away 'struct Lisp_Process;' which causes complains from the
> compiler. Why??? Well, it seems to work without it.

But it doesn't on other systems; this is legal ANSI C, and if the HP 
compiler chokes on it, that's a bug.

The problem is that the line

  void (*select_process_cb)	(struct Lisp_Process *);

will, when fed through a compliant ANSI C compiler, generate a warning
something like "scope of Lisp_Process consists of parameter list only"
unless Lisp_Process is already globally declared as a structure name.
"struct Lisp_Process;" is a legal declaration, and does not conflict
with a (potentially earlier) declaration of struct Lisp_Process in
process.h, which may or may not have been included before events.h.

> Although I got the same problem as Danny with 'INVISIBLE_TERMINAL_KLUDGE'
> in 19.2 it doesn't shoved up in 19.3 for me!?!?

That's because INVISIBLE_TERMINAL_KLUDGE kludges no more!

	-- Jamie

From help-lucid-emacs-request@lucid.com  Thu Sep 10 20:35:39 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01839; Thu, 10 Sep 92 20:35:39 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA09934g; Thu, 10 Sep 92 20:21:22 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA25900; Thu, 10 Sep 92 23:32:39 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA25896; Thu, 10 Sep 92 23:32:37 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!nestroy!news-mail-gateway
From: jwz@lucid.com (Jamie Zawinski)
Subject: Re: paste in minibuffer (19.3)
Message-Id: <9209110324.AA02616@thalidomide.lucid>
Organization: WU Mail/News Gateway
References: <hoelzle.716146448@Xenon.Stanford.EDU>
Date: Fri, 11 Sep 1992 03:24:31 GMT
Lines: 7
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In message <hoelzle.716146448@Xenon.Stanford.EDU> Urs Hoelzle wrote:
>
> In 19.3, the middle mouse button no longer works as "paste" in the
> minibuffer. [...] Is there any way to change this back to the 19.2 behavior?

Of course, just change the binding of button2 in minibuffer-local-map back
to what it is globally.

From help-lucid-emacs-request@lucid.com  Thu Sep 10 20:36:05 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01843; Thu, 10 Sep 92 20:36:05 PDT
Received: by heavens-gate.lucid.com id AA09936g; Thu, 10 Sep 92 20:21:59 PDT
Received: from ntu.ac.sg by heavens-gate.lucid.com id AA09924g; Thu, 10 Sep 92 20:17:37 PDT
Received: by ntu.ac.sg (5.57/Ultrix3.0-C)
	id AA00345; Fri, 11 Sep 92 11:28:37 +0800
Message-Id: <9209110328.AA00345@ntu.ac.sg>
Sender: franks%ntu.ac.sg@lucid.com
Date: Fri, 11 Sep 1992 11:29:41 +0730
To: help-lucid-emacs@lucid.com
From: franks%ntu.ac.sg@lucid.com (Frank Siebenlist)
Subject: 19.3 installation on decstation/ultrix4.2 with native cc


Find attached the descriptions of three problems 
with work-arounds (sigh...) and the used config.h.

First impression of 19.3:
installation "somewhat" easier than 19.2, 
colour-version doesn't bomb anymore on MacX1.1.7,
popup menus stay on the (visible) screen!,
more defined menus (be careful, emacs might become user friendly...),
no scrollbars yet (hint, hint, hint....)
great job, THANKS.
Rgds, Frank.

ps. Is there any site keeping split files of the distribution?
    (it is still kind of a miracle to ftp 8MB across the pacific in one go)

____________________________________________________________________________
1. src/lwlib/lwlib.c wouldn't compile:

******
cc -c -O -Wf,-XNh2000 -Olimit 2000 -I/usr/include/mit -I/usr/include       
-DUSE_LUCID lwlib.c
ccom: Error: lwlib.c, line 400: syntax error
            char* real_name = (char*) __builtin_alloca (length + 2);
      ---------------------------------------------------------^
******
The compiler is not very descriptive, but the offending line reads:

      char* real_name = (char*)alloca (length + 2);

Not sure what is wrong with that (?), 
kind of odd that the compiler expands the macro in the error message (??),
guiding the compiler step by step thru the compilation process worked
(???):

      char* real_name;
      length = length + 2;
      real_name = (char*)alloca (length);

____________________________________________________________________________
2. src/gmalloc.c wouldn't compile:

******
cc -g   -I/usr/include/mit -Demacs  -I./lwlib   -c gmalloc.c -o gmalloc.o
ccom: Error: /usr/include/stdio.h, line 92: illegal type combination
      typedef unsigned int	unsigned int;		
      -------------------------------------^
ccom: Error: gmalloc.c, line 1241: redeclaration of old_free_hook
      static void (*old_free_hook) ();
      -------------------------------^
ccom: Error: gmalloc.c, line 1242: redeclaration of old_malloc_hook
      static char *(*old_malloc_hook) ();
      ----------------------------------^
ccom: Error: gmalloc.c, line 1243: redeclaration of old_realloc_hook
      static char *(*old_realloc_hook) ();
      -----------------------------------^
******
The gmalloc.c which came with 19.2 had no problem but seems "very"
different.
19.3 seems to work with the 19.2 version of gmalloc.c though,
but there must be a reason for having a new version (?),
so I decided not to use gmalloc at all but the system's one.
____________________________________________________________________________
3. Changed ymakefile:

original reads:

  #define LIBS_TERMCAP -lcurses

had to add two more libs:

  #define LIBS_TERMCAP -lcurses -ltermcap -lcursesX

19.2 core-dumped when curses was substituted by cursesX (?), 
haven't tried it yet for 19.3.
____________________________________________________________________________
4. config.h:

/* Allow Emacses larger than 16 megabytes.  */

#ifndef VALBITS
#define VALBITS 26
#define GCTYPEBITS 5
#endif

/* Define USE_GCC to compile with GCC.
   Define USE_LCC to compile with Lucid C.
   Otherwise, "cc" will be used.
   You -must- use an ANSI C compiler.
   This has to come before include the m- file.
 */

/* #define USE_GCC */
/* #define USE_LCC */

/* Include here a s- file that describes the system type you are using.
   See the file ../etc/MACHINES for a list of systems and the names of
   the s- files to use for them.  See s-template.h for documentation on 
   writing s- files.
 */
#include "s/s-bsd4-3.h"

/* Include here a m- file that describes the machine and system you use.
   See the file ../etc/MACHINES for a list of machines and the names of 
   the m- files to use for them.   See m-template.h for info on what m- 
   files should define.
 */
#include "m/m-pmax.h"

/* Load in the conversion definitions if this system
   needs them and the source file being compiled has not
   said to inhibit this.  There should be no need for you
   to alter these lines.  */

#ifdef SHORTNAMES
#ifndef NO_SHORTNAMES
#include "../shortnames/remap.h"
#endif /* not NO_SHORTNAMES */
#endif /* SHORTNAMES */

/* Define HAVE_X_WINDOWS if you want to use the X window system.  */
#define HAVE_X_WINDOWS

#ifdef HAVE_X_WINDOWS
#ifndef MULTI_SCREEN
#define MULTI_SCREEN
#endif
#endif

/* Define `subprocesses' if you want to have code for asynchronous
   subprocesses (as used in M-x compile and M-x shell).  These do not
   work for some USG systems yet; for the ones where they work, the
   s-*.h file defines this flag.  */

#ifndef VMS
#ifndef USG
#define subprocesses
#endif
#endif

/* Define USER_FULL_NAME to return a string
   that is the user's full name.
   It can assume that the variable `pw'
   points to the password file entry for this user.

   At some sites, the pw_gecos field contains
   the user's full name.  If neither this nor any other
   field contains the right thing, use pw_name,
   giving the user's login name, since that is better than nothing.  */

#define USER_FULL_NAME pw->pw_gecos

/* Define AMPERSAND_FULL_NAME if you use the convention
   that & in the full name stands for the login id.  */

/* #define AMPERSAND_FULL_NAME */

/* Define HIGHPRI as a negative number if you want Emacs to run at a higher
   than normal priority.  For this to take effect, you must install it as
   setuid root. */

/* #define HIGHPRI */

/* support `getenv' and `setenv' in Emacs (unix only) */
#define MAINTAIN_ENVIRONMENT

/* Define LISP_FLOAT_TYPE if you want emacs to support floating-point
   numbers. */

#define LISP_FLOAT_TYPE

/* Define GNU_MALLOC if you want to use the *new* GNU memory allocator.
   If you have trouble with _malloc being multiply-defined, or if you're
   on a NeXT (or possibly MACH in general) comment out the next four lines.
 */

/*
#ifdef SYSTEM_MALLOC
#undef SYSTEM_MALLOC
#endif
#define GNU_MALLOC
*/

/* Define NEED_STRDUP if your system doesn't have a strdup() function.
   Define NEED_REALPATH if your system does not include a realpath()
function.
   If you system doesn't have the fmod() function, then you need to define
   either HAVE_DREM or HAVE_REMAINDER, as appropriate.

   These flags really should be in the appropriate s- file, so if you need 
   to do this, let us know and we'll put them there in the next release.
 */
#define NEED_STRDUP
#define NEED_REALPATH
/* #define HAVE_DREM */
/* #define HAVE_REMAINDER */


/* Define REL_ALLOC if you want to use the relocating allocator for
   buffer space.  (There are too many problems with this right now.) */

/* #define REL_ALLOC */

/* Non-Lucid sites can't compile with Energize support yet */
/* #define ENERGIZE */

/* You should define LWLIB_HAS_EXTENSIONS if and only if the lwlib
Imakefile
   had INCLUDE_EXTENSIONS defined.  This makes it possible to link
arbitrary
   other widgets into the Emacs frame; Energize requires this.  The only
   reason you would not want this defined is if you couldn't get lwlib to
   compile this way because you don't have read-access to the X source
tree.
   See also LWLIB_USES_MOTIF and LWLIB_USES_OLIT, below.
 */
#ifdef ENERGIZE
#define LWLIB_HAS_EXTENSIONS
#endif

/* Sun SparStations and SGI machines have support for playing different
sound
   files as beeps.  If you are on a SparcStation but do not have the sound 
   option installed for some reason (It's usually in /usr/demo/SOUND/) then
   undefine USE_SOUND.
 */
/* #undef USE_SOUND */


/* Compile in support for running emacs directly from temacs (useful for
   debugging emacs) */
#define RUNNABLE_TEMACS


#ifdef THIS_IS_YMAKEFILE

/* If you have defined USE_MOTIF in the lwlib Imakefile, then you must
define
   LWLIB_USES_MOTIF here.  Similarly, if you have defined USE_OLIT in the
   lwlib Imakefile, you must define LWLIB_USES_OLIT here.  This is because
   emacs must be linked with the Motif or OpenLook libraries if lwlib has
   been configured to use them.  (Note: you cannot define both.)
 */
/* #define LWLIB_USES_MOTIF */
/* #define LWLIB_USES_OLIT */


/* Define LD_SWITCH_SITE to contain any special flags your loader may
   need.  For instance, if you've defined HAVE_X_WINDOWS above and your
   X libraries aren't in a place that your loader can find on its own,
   you might want to add "-L/..." or something similar.  */

/* #define LD_SWITCH_SITE -L/x11r4/usr.`arch`/lib */


/* Define C_SWITCH_SITE to contain any special flags your compiler may
   need.  For instance, if you've defined HAVE_X_WINDOWS above and your
   X include files aren't in a place that your compiler can find on its
   own, you might want to add "-I/..." or something similar.  */

/* #define C_SWITCH_SITE -I/cadillacgnu/gcc-include -I/x11r4/usr/include */

#define C_SWITCH_SITE -I/usr/include/mit

#ifdef USE_GCC
/* Depending on how GCC is installed, you may need to add the gcc library
   here.  This could also go in LD_SWITCH_SITE.  If you get errors about
   __fixunsdfsi or__main being undefined, you probably need to do this. */

/* #define LIB_GCC /cadillacgnu/lib/sun4/gcc-gnulib */

#endif /* USE_GCC */


/* If you are using SunOS 4.1.1 and X11r5, then you need this patch.
   There is a stupid bug in the SunOS libc.a: two functions which X11r5
   uses, mbstowcs() and wcstombs(), are unusable when programs are
   statically linked (as Emacs must be) because the static version of
   libc.a contains the *dynamic* versions of these functions.  These
   functions don't seem to be called when Emacs is running, so it's 
   enough to define stubs for them.

   This appears to be fixed in SunOS 4.1.2.

   Also, SunOS 4.1.1 contains buggy versions of strcmp and strcpy that
   sometimes reference memory past the end of the string, which can segv.
 */
#ifdef sparc
#define OBJECTS_SYSTEM sunOS-fix.o strcmp.o strcpy.o
#endif


#endif /* THIS_IS_YMAKEFILE */

____________________________________________________________________________
if you really want to know...

Frank Siebenlist                             Email: franks@imt.ntu.ac.sg
Institute of Manufacturing Technology (IMT)    Tel: (65) 799-1336
Nanyang Technological University (NTU)         Fax: (65) 791-2927
Nanyang Avenue
Singapore 2263




From help-lucid-emacs-request@lucid.com  Thu Sep 10 20:40:14 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01850; Thu, 10 Sep 92 20:40:14 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA09941g; Thu, 10 Sep 92 20:26:25 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA25992; Thu, 10 Sep 92 23:37:38 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA25987; Thu, 10 Sep 92 23:37:36 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!nestroy!news-mail-gateway
From: franks%ntu.ac.SG@lucid.com (Frank Siebenlist)
Subject: 19.3 installation on decstation/ultrix4.2 with native cc
Message-Id: <9209110328.AA00345@ntu.ac.sg>
Organization: WU Mail/News Gateway
Date: Fri, 11 Sep 1992 19:17:41 GMT
Lines: 305
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


Find attached the descriptions of three problems 
with work-arounds (sigh...) and the used config.h.

First impression of 19.3:
installation "somewhat" easier than 19.2, 
colour-version doesn't bomb anymore on MacX1.1.7,
popup menus stay on the (visible) screen!,
more defined menus (be careful, emacs might become user friendly...),
no scrollbars yet (hint, hint, hint....)
great job, THANKS.
Rgds, Frank.

ps. Is there any site keeping split files of the distribution?
    (it is still kind of a miracle to ftp 8MB across the pacific in one go)

____________________________________________________________________________
1. src/lwlib/lwlib.c wouldn't compile:

******
cc -c -O -Wf,-XNh2000 -Olimit 2000 -I/usr/include/mit -I/usr/include       
-DUSE_LUCID lwlib.c
ccom: Error: lwlib.c, line 400: syntax error
            char* real_name = (char*) __builtin_alloca (length + 2);
      ---------------------------------------------------------^
******
The compiler is not very descriptive, but the offending line reads:

      char* real_name = (char*)alloca (length + 2);

Not sure what is wrong with that (?), 
kind of odd that the compiler expands the macro in the error message (??),
guiding the compiler step by step thru the compilation process worked
(???):

      char* real_name;
      length = length + 2;
      real_name = (char*)alloca (length);

____________________________________________________________________________
2. src/gmalloc.c wouldn't compile:

******
cc -g   -I/usr/include/mit -Demacs  -I./lwlib   -c gmalloc.c -o gmalloc.o
ccom: Error: /usr/include/stdio.h, line 92: illegal type combination
      typedef unsigned int	unsigned int;		
      -------------------------------------^
ccom: Error: gmalloc.c, line 1241: redeclaration of old_free_hook
      static void (*old_free_hook) ();
      -------------------------------^
ccom: Error: gmalloc.c, line 1242: redeclaration of old_malloc_hook
      static char *(*old_malloc_hook) ();
      ----------------------------------^
ccom: Error: gmalloc.c, line 1243: redeclaration of old_realloc_hook
      static char *(*old_realloc_hook) ();
      -----------------------------------^
******
The gmalloc.c which came with 19.2 had no problem but seems "very"
different.
19.3 seems to work with the 19.2 version of gmalloc.c though,
but there must be a reason for having a new version (?),
so I decided not to use gmalloc at all but the system's one.
____________________________________________________________________________
3. Changed ymakefile:

original reads:

  #define LIBS_TERMCAP -lcurses

had to add two more libs:

  #define LIBS_TERMCAP -lcurses -ltermcap -lcursesX

19.2 core-dumped when curses was substituted by cursesX (?), 
haven't tried it yet for 19.3.
____________________________________________________________________________
4. config.h:

/* Allow Emacses larger than 16 megabytes.  */

#ifndef VALBITS
#define VALBITS 26
#define GCTYPEBITS 5
#endif

/* Define USE_GCC to compile with GCC.
   Define USE_LCC to compile with Lucid C.
   Otherwise, "cc" will be used.
   You -must- use an ANSI C compiler.
   This has to come before include the m- file.
 */

/* #define USE_GCC */
/* #define USE_LCC */

/* Include here a s- file that describes the system type you are using.
   See the file ../etc/MACHINES for a list of systems and the names of
   the s- files to use for them.  See s-template.h for documentation on 
   writing s- files.
 */
#include "s/s-bsd4-3.h"

/* Include here a m- file that describes the machine and system you use.
   See the file ../etc/MACHINES for a list of machines and the names of 
   the m- files to use for them.   See m-template.h for info on what m- 
   files should define.
 */
#include "m/m-pmax.h"

/* Load in the conversion definitions if this system
   needs them and the source file being compiled has not
   said to inhibit this.  There should be no need for you
   to alter these lines.  */

#ifdef SHORTNAMES
#ifndef NO_SHORTNAMES
#include "../shortnames/remap.h"
#endif /* not NO_SHORTNAMES */
#endif /* SHORTNAMES */

/* Define HAVE_X_WINDOWS if you want to use the X window system.  */
#define HAVE_X_WINDOWS

#ifdef HAVE_X_WINDOWS
#ifndef MULTI_SCREEN
#define MULTI_SCREEN
#endif
#endif

/* Define `subprocesses' if you want to have code for asynchronous
   subprocesses (as used in M-x compile and M-x shell).  These do not
   work for some USG systems yet; for the ones where they work, the
   s-*.h file defines this flag.  */

#ifndef VMS
#ifndef USG
#define subprocesses
#endif
#endif

/* Define USER_FULL_NAME to return a string
   that is the user's full name.
   It can assume that the variable `pw'
   points to the password file entry for this user.

   At some sites, the pw_gecos field contains
   the user's full name.  If neither this nor any other
   field contains the right thing, use pw_name,
   giving the user's login name, since that is better than nothing.  */

#define USER_FULL_NAME pw->pw_gecos

/* Define AMPERSAND_FULL_NAME if you use the convention
   that & in the full name stands for the login id.  */

/* #define AMPERSAND_FULL_NAME */

/* Define HIGHPRI as a negative number if you want Emacs to run at a higher
   than normal priority.  For this to take effect, you must install it as
   setuid root. */

/* #define HIGHPRI */

/* support `getenv' and `setenv' in Emacs (unix only) */
#define MAINTAIN_ENVIRONMENT

/* Define LISP_FLOAT_TYPE if you want emacs to support floating-point
   numbers. */

#define LISP_FLOAT_TYPE

/* Define GNU_MALLOC if you want to use the *new* GNU memory allocator.
   If you have trouble with _malloc being multiply-defined, or if you're
   on a NeXT (or possibly MACH in general) comment out the next four lines.
 */

/*
#ifdef SYSTEM_MALLOC
#undef SYSTEM_MALLOC
#endif
#define GNU_MALLOC
*/

/* Define NEED_STRDUP if your system doesn't have a strdup() function.
   Define NEED_REALPATH if your system does not include a realpath()
function.
   If you system doesn't have the fmod() function, then you need to define
   either HAVE_DREM or HAVE_REMAINDER, as appropriate.

   These flags really should be in the appropriate s- file, so if you need 
   to do this, let us know and we'll put them there in the next release.
 */
#define NEED_STRDUP
#define NEED_REALPATH
/* #define HAVE_DREM */
/* #define HAVE_REMAINDER */


/* Define REL_ALLOC if you want to use the relocating allocator for
   buffer space.  (There are too many problems with this right now.) */

/* #define REL_ALLOC */

/* Non-Lucid sites can't compile with Energize support yet */
/* #define ENERGIZE */

/* You should define LWLIB_HAS_EXTENSIONS if and only if the lwlib
Imakefile
   had INCLUDE_EXTENSIONS defined.  This makes it possible to link
arbitrary
   other widgets into the Emacs frame; Energize requires this.  The only
   reason you would not want this defined is if you couldn't get lwlib to
   compile this way because you don't have read-access to the X source
tree.
   See also LWLIB_USES_MOTIF and LWLIB_USES_OLIT, below.
 */
#ifdef ENERGIZE
#define LWLIB_HAS_EXTENSIONS
#endif

/* Sun SparStations and SGI machines have support for playing different
sound
   files as beeps.  If you are on a SparcStation but do not have the sound 
   option installed for some reason (It's usually in /usr/demo/SOUND/) then
   undefine USE_SOUND.
 */
/* #undef USE_SOUND */


/* Compile in support for running emacs directly from temacs (useful for
   debugging emacs) */
#define RUNNABLE_TEMACS


#ifdef THIS_IS_YMAKEFILE

/* If you have defined USE_MOTIF in the lwlib Imakefile, then you must
define
   LWLIB_USES_MOTIF here.  Similarly, if you have defined USE_OLIT in the
   lwlib Imakefile, you must define LWLIB_USES_OLIT here.  This is because
   emacs must be linked with the Motif or OpenLook libraries if lwlib has
   been configured to use them.  (Note: you cannot define both.)
 */
/* #define LWLIB_USES_MOTIF */
/* #define LWLIB_USES_OLIT */


/* Define LD_SWITCH_SITE to contain any special flags your loader may
   need.  For instance, if you've defined HAVE_X_WINDOWS above and your
   X libraries aren't in a place that your loader can find on its own,
   you might want to add "-L/..." or something similar.  */

/* #define LD_SWITCH_SITE -L/x11r4/usr.`arch`/lib */


/* Define C_SWITCH_SITE to contain any special flags your compiler may
   need.  For instance, if you've defined HAVE_X_WINDOWS above and your
   X include files aren't in a place that your compiler can find on its
   own, you might want to add "-I/..." or something similar.  */

/* #define C_SWITCH_SITE -I/cadillacgnu/gcc-include -I/x11r4/usr/include */

#define C_SWITCH_SITE -I/usr/include/mit

#ifdef USE_GCC
/* Depending on how GCC is installed, you may need to add the gcc library
   here.  This could also go in LD_SWITCH_SITE.  If you get errors about
   __fixunsdfsi or__main being undefined, you probably need to do this. */

/* #define LIB_GCC /cadillacgnu/lib/sun4/gcc-gnulib */

#endif /* USE_GCC */


/* If you are using SunOS 4.1.1 and X11r5, then you need this patch.
   There is a stupid bug in the SunOS libc.a: two functions which X11r5
   uses, mbstowcs() and wcstombs(), are unusable when programs are
   statically linked (as Emacs must be) because the static version of
   libc.a contains the *dynamic* versions of these functions.  These
   functions don't seem to be called when Emacs is running, so it's 
   enough to define stubs for them.

   This appears to be fixed in SunOS 4.1.2.

   Also, SunOS 4.1.1 contains buggy versions of strcmp and strcpy that
   sometimes reference memory past the end of the string, which can segv.
 */
#ifdef sparc
#define OBJECTS_SYSTEM sunOS-fix.o strcmp.o strcpy.o
#endif


#endif /* THIS_IS_YMAKEFILE */

____________________________________________________________________________
if you really want to know...

Frank Siebenlist                             Email: franks@imt.ntu.ac.sg
Institute of Manufacturing Technology (IMT)    Tel: (65) 799-1336
Nanyang Technological University (NTU)         Fax: (65) 791-2927
Nanyang Avenue
Singapore 2263




From help-lucid-emacs-request@lucid.com  Thu Sep 10 20:53:29 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01892; Thu, 10 Sep 92 20:53:29 PDT
Received: by heavens-gate.lucid.com id AA09978g; Thu, 10 Sep 92 20:38:21 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA09964g; Thu, 10 Sep 92 20:36:27 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA02711; Thu, 10 Sep 92 20:47:46 PDT
Date: Thu, 10 Sep 92 20:47:46 PDT
Message-Id: <9209110347.AA02711@thalidomide.lucid>
X-Windows: Form follows malfunction.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: franks%ntu.ac.sg@lucid.com (Frank Siebenlist)
Cc: help-lucid-emacs@lucid.com
Subject: Re: 19.3 installation on decstation/ultrix4.2 with native cc
In-Reply-To: Frank Siebenlist's message of Fri 11-Sep-92 11:29:41 +0730 <9209110328.AA00345@ntu.ac.sg>
References: <9209110328.AA00345@ntu.ac.sg>

In message <9209110328.AA00345@ntu.ac.sg> Frank Siebenlist wrote:
>
> The compiler is not very descriptive, but the offending line reads:
> 
>       char* real_name = (char*)alloca (length + 2);
> 
> Not sure what is wrong with that (?), 

How about running that file through -E to see what cpp is really turning
that line in to.

> The gmalloc.c which came with 19.2 had no problem but seems "very"
> different.
> 19.3 seems to work with the 19.2 version of gmalloc.c though,
> but there must be a reason for having a new version (?),
> so I decided not to use gmalloc at all but the system's one.

GCC2 didn't like the version of gmalloc that we were using in 19.2, so I
grabbed a new version of gmalloc from the FSF v19 sources.  I don't know how
recent it is.  I don't understand why it's so unportable.  (I understand why
it's hard, but I would have expected it to be more portable than it is by
now.)  I humbly await enlightenment...

	-- Jamie

From help-lucid-emacs-request@lucid.com  Thu Sep 10 22:30:35 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA02077; Thu, 10 Sep 92 22:30:35 PDT
Received: by heavens-gate.lucid.com id AA10099g; Thu, 10 Sep 92 22:13:29 PDT
Received: from ntu.ac.sg by heavens-gate.lucid.com id AA10095g; Thu, 10 Sep 92 22:10:47 PDT
Received: by ntu.ac.sg (5.57/Ultrix3.0-C)
	id AA09472; Fri, 11 Sep 92 13:21:58 +0800
Message-Id: <9209110521.AA09472@ntu.ac.sg>
Sender: franks%ntu.ac.sg@lucid.com
Date: Fri, 11 Sep 1992 13:23:02 +0730
To: Jamie Zawinski <jwz@lucid.com>
From: franks%ntu.ac.sg@lucid.com (Frank Siebenlist)
Subject: Re: 19.3 installation on decstation/ultrix4.2 with native cc
Cc: help-lucid-emacs@lucid.com


>> The compiler is not very descriptive, but the offending line reads:
>> 
>>       char* real_name = (char*)alloca (length + 2);
>> 
>> Not sure what is wrong with that (?), 
>
>How about running that file through -E to see what cpp is really turning
>that line in to.
>

yields exactly the code in the error message:
   char* real_name = (char*) __builtin_alloca (length + 2);

>GCC2 didn't like the version of gmalloc that we were using in 19.2, so I
>grabbed a new version of gmalloc from the FSF v19 sources.>

so using the 19.2 version of gmalloc would be ok (?)

>I humbly await enlightenment...

when "it" arrives, please let me know what, where, when, how...

--Frank.


From help-lucid-emacs-request@lucid.com  Fri Sep 11 05:20:41 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA03673; Fri, 11 Sep 92 05:20:41 PDT
Received: by heavens-gate.lucid.com id AA10738g; Fri, 11 Sep 92 05:05:30 PDT
Received: from plg.uwaterloo.ca by heavens-gate.lucid.com id AA10734g; Fri, 11 Sep 92 05:05:18 PDT
Received: by plg.uwaterloo.ca id <28714>; Fri, 11 Sep 1992 08:16:31 -0400
From: Dave Mason <dmason%plg.uwaterloo.ca@lucid.com>
To: bug-lucid-emacs@lucid.com, help-lucid-emacs@lucid.com
Subject: Simple optimization for blink-paren 
Message-Id: <92Sep11.081631edt.28714@plg.uwaterloo.ca>
Date: Fri, 11 Sep 1992 08:16:30 -0400

 Every day I uncover more nifty things!

 blink-paren is pretty neat, but it is a real network hog, so I
thought of highlighting the paren rather than having it constantly
change, so I tried setting the -on and -off fonts the same:

Emacs*default.attributeFont: -*-courier-medium-r-*-*-20-*-*-*-*-*-*-*
Emacs*blink-paren-off.attributeFont: -*-courier-medium-r-*-*-20-*-*-*-*-*-*-*
Emacs*blink-paren-off.attributeBackgroundPixmap: gray3
Emacs*blink-paren-on.attributeFont: -*-courier-medium-r-*-*-20-*-*-*-*-*-*-*
Emacs*blink-paren-on.attributeBackgroundPixmap: gray3

  However the set-extent-face code doesn't check to see if the new
face is the same as the old face, and you get all the extra timer
interrupts anyway, so I made blink-paren-post-command do the check.
Here is the diff:
*** /usr/local/src/lemacs/lemacs-19.3/lisp/packages/blink-paren.el	Fri Sep  4 05:42:38 1992
--- Emacs/blink-paren.el	Thu Sep 10 19:07:57 1992
***************
*** 79,84 ****
--- 79,88 ----
  (defun blink-paren-post-command ()
    (blink-paren-pre-command)
    (if (and (setq blink-paren-extent (blink-paren-make-extent))
+ 	   (not (and (face-equal 'blink-paren-on 'blink-paren-off)
+ 		     (progn
+ 		       (set-extent-face blink-paren-extent 'blink-paren-on)
+ 		       t)))
  	   (or (floatp blink-paren-timeout)
  	       (integerp blink-paren-timeout)))
        (setq blink-paren-timeout-id

This might be worth putting in the distribution with a comment about
the amount of network activity that plain blink-paren produces.

A couple of other useful font changes that I've found:

This works well for isearch, even when using hilite, etc.:
Emacs*isearch.attributeForeground: black
Emacs*isearch.attributeBackground: white
Emacs*highlight.attributeBackgroundPixmap: dimple3

This makes for quieter modelines:
Emacs*modeline.attributeForeground: white
Emacs*modeline.attributeBackground: black
Emacs*modeline.attributeBackgroundPixmap: dimple3

	../Dave

From help-lucid-emacs-request@lucid.com  Fri Sep 11 06:03:01 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA03760; Fri, 11 Sep 92 06:03:01 PDT
Received: by heavens-gate.lucid.com id AA10810g; Fri, 11 Sep 92 05:47:51 PDT
Received: from amil.co.il by heavens-gate.lucid.com id AA10806g; Fri, 11 Sep 92 05:46:53 PDT
Received: from ipc6.AMIL ([192.86.89.16]) by amil.co.il (4.1/AMIL-M2)
	id AA15568; Fri, 11 Sep 92 15:57:27 IDT
Date: Fri, 11 Sep 92 15:57:27 IDT
From: danny@amil.co.il (Danny Bar-Dov)
Message-Id: <9209111257.AA15568@amil.co.il>
Received: by ipc6.AMIL (4.1/AMIL-C1)
	id AA26520; Fri, 11 Sep 92 14:57:26 IST
To: Jamie Zawinski <jwz@lucid.com>
Cc: hb%woody.csd.uu.se@lucid.com (Henrik B}kman  CSD),
        help-lucid-emacs@lucid.com
Subject: Re: more lemacs 19.3 on HPUX
Newsgroups: alt.lucid-emacs.help
In-Reply-To: <9209110319.AA02602@thalidomide.lucid>
References: <18o0nrINNf43@corax.udac.uu.se>
	<9209110319.AA02602@thalidomide.lucid>

Jamie Zawinski writes:
 > [ ... ]
 > 
 > Would adding this to config.h work?
 > 
 > 	#ifdef hpux
 > 	#define _HPUX_SOURCE
 > 	#endif
 >
Well no. I tried that (with all the _INCLUDES) but there are many source files
which include "config.h" only after some other (system) includes.
In those cases this looses. The C_SWITCH_SITE is the best place.

 > > As Danny I had problems with missing floating-point functions and the
 > > easiest, I thing, way to get rid of the problems is to comment out
 > > 'LISP_FLOAT_TYPE'
 > 
 > It would be better if someone could figure out what the HP equivalents of
 > the various float functions are.  An emacs without float support is like
 > a day without sunshine...
I had to take out only about 8 functions. Most of them inverse hyperbolic
trigo functions. I think emacs can live without them (at least on HP)

 > > 3. I do the following changes in 'src/events.h'
 > > 
 > > 	219,220d218
 > > 	< /* HB: 920910: Cause trouble "redeclaration" in hpux. */
 > > 	< #if ! defined(__hpux)
 > > 	222d219
 > > 	< #endif
 > > 
 > > This takes away 'struct Lisp_Process;' which causes complains from the
 > > compiler. Why??? Well, it seems to work without it.
 > 
 > But it doesn't on other systems; this is legal ANSI C, and if the HP 
 > compiler chokes on it, that's a bug.

Go tell the Spartans. (HP has many ANSI C bugs. So much that in many cases
I use their C++ compiler as an ANSI C compiler).
 > 
 > 	-- Jamie

--
Danny.

-------------------------------
Dan Bar Dov

Applied Materials (Israel)

Email:        danny@amil.co.il
Phone: office 972-3-499573
       home   972-3-5469625
TimeZone:     GMT+2
-------------------------------

From help-lucid-emacs-request@lucid.com  Fri Sep 11 07:55:02 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA04176; Fri, 11 Sep 92 07:55:02 PDT
Received: by heavens-gate.lucid.com id AA11064g; Fri, 11 Sep 92 07:42:13 PDT
Received: from spssig.spss.com by heavens-gate.lucid.com id AA11060g; Fri, 11 Sep 92 07:41:58 PDT
Received: from spsssq (spsssq.spss.com) by spssig.spss.com Fri, 11 Sep 92 09:53:30 CDT
Received: from spssrs0 by spsssq (5.61/4.7)
	id AA11503; Fri, 11 Sep 92 09:57:11 -0500
Received: from ibmws001.spss.com by spssrs0.spss.com (AIX 3.2/UCB 5.64/4.03)
          id AA41996; Fri, 11 Sep 1992 09:53:32 -0500
Received: by ibmws001.spss.com (AIX 3.2/UCB 5.64/4.03)
          id AA12801; Fri, 11 Sep 1992 09:53:30 -0500
From: bobhays@spss.com
Message-Id: <9209111453.AA12801@ibmws001.spss.com>
Subject: Okay, built (with minor changes) Lucid on AIX 3.2.2 but ...
To: help-lucid-emacs@lucid.com (help-lucid-emacs@lucid.com)
Date: Fri, 11 Sep 92 9:53:29 CDT
X-Mailer: ELM [version 2.3 PL11]

I succeeded in building Lucid 19.3 on AIX 3.2.2.  If I run it on a
remote node, it dies while initializing (apparently while it is
putting up the menu bar).  If I run it locally (on my 220 WS), it will
start up.  However, the menu items don't seem to do anything.  And, if
I C-X C-F and then ask for a file to open, it reads it in, displays it
and then cores.

I'll get a core dump and wring it through dbx later today - if I learn
anything (or maybe even it I don't:-), I'll post the where listing (at
a minimum).

I wanted to know if anyone else was working on this (note - I'm not
using R5 X11; I want to run Lucid on a vanilla AIX environment under
Motif).

Thanks and have fun! - Bob

From help-lucid-emacs-request@lucid.com  Fri Sep 11 08:31:39 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA04303; Fri, 11 Sep 92 08:31:39 PDT
Received: by heavens-gate.lucid.com id AA11126g; Fri, 11 Sep 92 08:19:21 PDT
Received: from spssig.spss.com by heavens-gate.lucid.com id AA11122g; Fri, 11 Sep 92 08:19:08 PDT
Received: from spsssq (spsssq.spss.com) by spssig.spss.com Fri, 11 Sep 92 10:30:45 CDT
Received: from spssrs0 by spsssq (5.61/4.7)
	id AA15419; Fri, 11 Sep 92 10:34:26 -0500
Received: from ibmws001.spss.com by spssrs0.spss.com (AIX 3.2/UCB 5.64/4.03)
          id AA28698; Fri, 11 Sep 1992 10:30:46 -0500
Received: by ibmws001.spss.com (AIX 3.2/UCB 5.64/4.03)
          id AA16147; Fri, 11 Sep 1992 10:30:45 -0500
From: bobhays@spss.com
Message-Id: <9209111530.AA16147@ibmws001.spss.com>
Subject: More on AIX 3.2.2 Lucid 19.3
To: help-lucid-emacs@lucid.com (help-lucid-emacs@lucid.com)
Date: Fri, 11 Sep 92 10:30:43 CDT
X-Mailer: ELM [version 2.3 PL11]

The menus are activating....  I had a friend run the program (we
actually edited some text in the *scratch* buffer) and he succeeded in
using the Exit Lucid option (and no core dump there).

Just a small update....  Hope someone has some ideas....

I've kept the changes (I think) for the files I manipulated, so I will
eventually post these for general info if desired.

Have fun! - Bob

From help-lucid-emacs-request@lucid.com  Fri Sep 11 09:45:51 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA04485; Fri, 11 Sep 92 09:45:51 PDT
Received: by heavens-gate.lucid.com id AA11330g; Fri, 11 Sep 92 09:29:39 PDT
Received: from scylla.lucid (scylla.lucid.com) by heavens-gate.lucid.com id AA11299g; Fri, 11 Sep 92 09:23:19 PDT
Received: by scylla.lucid (4.1/SMI-4.1)
	id AA18463; Fri, 11 Sep 92 08:41:28 PDT
Date: Fri, 11 Sep 92 08:41:28 PDT
From: devin%scylla@lucid.com (Matthieu Devin)
Message-Id: <9209111541.AA18463@scylla.lucid>
To: Dave Mason <dmason%plg.uwaterloo.ca@lucid.com>
Cc: bug-lucid-emacs@lucid.com, help-lucid-emacs@lucid.com
Subject: Re: Simple optimization for blink-paren 
In-Reply-To: Dave Mason's message of Fri 11-Sep-19 08:16:30 -0400 <92Sep11.081631edt.28714@plg.uwaterloo.ca>
References: <92Sep11.081631edt.28714@plg.uwaterloo.ca>

In message <92Sep11.081631edt.28714@plg.uwaterloo.ca> Dave Mason wrote:
>  blink-paren is pretty neat, but it is a real network hog, so I
> thought of highlighting the paren rather than having it constantly
> change, so I tried setting the -on and -off fonts the same:

If you just want to highlight (and not blink) you can get rid of the timeout.
It would put a much lower load on the system running your emacs.

From help-lucid-emacs-request@lucid.com  Fri Sep 11 10:39:23 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA04662; Fri, 11 Sep 92 10:39:23 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA11512g; Fri, 11 Sep 92 10:25:27 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA27906; Fri, 11 Sep 92 13:38:15 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA27899; Fri, 11 Sep 92 13:38:13 -0400
Path: uunet!mcsun!uknet!axion!muppet!ishtar!davidh
From: davidh@muppet.bt.co.uk (David Hobley)
Newsgroups: alt.lucid-emacs.help
Subject: lemacs19.3 installation
Keywords: help emacs lucid install
Message-Id: <1992Sep11.084048.11135@muppet.bt.co.uk>
Date: 11 Sep 92 08:40:48 GMT
Reply-To: davidh@muppet.bt.co.uk
Followup-To: alt.lucid-emacs.help
Organization: British Telecom Research Laboratories
Lines: 15
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I have just compiled lemacs 19.3. I tested it in the ..src/ directory and 
everything was fine. However when I moved the binary to /usr/local/bin it could
no longer find its startup files. The library was in /usr/local/lib/emacs.

It turns out that if the /usr/local/etc directory exists, it looks in there for 
its DOC file. Moving the etc to etc.old fixes the problem.
Having seen the patch to startup.el, I applied that, but to no avail. I also
looked at the lisp code in that function, but can't work out why it isn't checking
the correct directory.

Has anyone seen this ? Fixed it ? ;-)
---
	David Hobley	davidh@muppet.bt.co.uk

 Feel disillusioned?  I've got some great new illusions ...

From help-lucid-emacs-request@lucid.com  Fri Sep 11 10:42:52 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA04688; Fri, 11 Sep 92 10:42:52 PDT
Received: by heavens-gate.lucid.com id AA11528g; Fri, 11 Sep 92 10:29:23 PDT
Received: from plg.uwaterloo.ca by heavens-gate.lucid.com id AA11491g; Fri, 11 Sep 92 10:19:28 PDT
Received: by plg.uwaterloo.ca id <28714>; Fri, 11 Sep 1992 13:32:38 -0400
From: Dave Mason <dmason%plg.uwaterloo.ca@lucid.com>
To: devin%scylla@lucid.com
Cc: bug-lucid-emacs@lucid.com, help-lucid-emacs@lucid.com
In-Reply-To: Matthieu Devin's message of Fri, 11 Sep 1992 11:41:28 -0400 <9209111541.AA18463@scylla.lucid>
Subject: RE: Simple optimization for blink-paren 
Message-Id: <92Sep11.133238edt.28714@plg.uwaterloo.ca>
Date: Fri, 11 Sep 1992 13:32:31 -0400

> From: devin%scylla@lucid.com (Matthieu Devin)
> In message <92Sep11.081631edt.28714@plg.uwaterloo.ca> Dave Mason wrote:
> >  blink-paren is pretty neat, but it is a real network hog, so I
> > thought of highlighting the paren rather than having it constantly
> > change, so I tried setting the -on and -off fonts the same:
> 
> If you just want to highlight (and not blink) you can get rid of the timeout.
> It would put a much lower load on the system running your emacs.

Unless I've done something stupid, the code I sent already does that (the
``and'' terminates with a nil value if the two faces are equal).

	../Dave

From help-lucid-emacs-request@lucid.com  Fri Sep 11 10:45:39 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA04725; Fri, 11 Sep 92 10:45:39 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA11553g; Fri, 11 Sep 92 10:32:23 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA28092; Fri, 11 Sep 92 13:44:33 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA28088; Fri, 11 Sep 92 13:44:22 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!nestroy!news-mail-gateway
From: dmason%plg.uwaterloo.CA@lucid.com (Dave Mason)
Subject: RE: Simple optimization for blink-paren
Message-Id: <92Sep11.133238edt.28714@plg.uwaterloo.ca>
Organization: WU Mail/News Gateway
References: <9209111541.AA18463@scylla.lucid>
Date: Fri, 11 Sep 1992 09:32:31 GMT
Lines: 13
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

> From: devin%scylla@lucid.com (Matthieu Devin)
> In message <92Sep11.081631edt.28714@plg.uwaterloo.ca> Dave Mason wrote:
> >  blink-paren is pretty neat, but it is a real network hog, so I
> > thought of highlighting the paren rather than having it constantly
> > change, so I tried setting the -on and -off fonts the same:
> 
> If you just want to highlight (and not blink) you can get rid of the timeout.
> It would put a much lower load on the system running your emacs.

Unless I've done something stupid, the code I sent already does that (the
``and'' terminates with a nil value if the two faces are equal).

	../Dave

From help-lucid-emacs-request@lucid.com  Fri Sep 11 13:45:45 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA05269; Fri, 11 Sep 92 13:45:45 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA12092g; Fri, 11 Sep 92 13:33:37 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA11013; Fri, 11 Sep 92 16:44:43 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA11008; Fri, 11 Sep 92 16:44:40 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!sun-barr!cs.utexas.edu!csc.ti.com!tilde.csc.ti.com!fstop.csc.ti.com!fstop.csc.ti.com!kenb
From: kenb@dadd.ti.com (Ken Butler)
Subject: Re: paste in minibuffer (19.3)
In-Reply-To: jwz@lucid.COM's message of Fri, 11 Sep 1992 03:24:31 GMT
Message-Id: <KENB.92Sep11151945@bigears.dadd.ti.com>
Nntp-Posting-Host: bigears.dadd.ti.com
Organization: Texas Instruments, Inc., Dallas, TX
References: <hoelzle.716146448@Xenon.Stanford.EDU> <9209110324.AA02616@thalidomide.lucid>
Date: Fri, 11 Sep 1992 21:19:45 GMT
Lines: 25
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

   In message <hoelzle.716146448@Xenon.Stanford.EDU> Urs Hoelzle wrote:

   > In 19.3, the middle mouse button no longer works as "paste" in the
   > minibuffer. [...] Is there any way to change this back to the 19.2
   > behavior?

Jamie>    Of course, just change the binding of button2 in
Jamie>    minibuffer-local-map back to what it is globally.

I was never able to do this in 19.2, let alone 19.3.  If I hit ctrl-s, and
then grab some text from another window and try to paste it into the
minibuffer with button, I'd get a message like "not in a text window" in
the minibuffer.  Was I doing something wrong?

Thanks.

Ken
--

*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
Kenneth M. Butler                           (214) 997-6370 (office)
Texas Instruments                           (214) 997-2049 (FAX)
P.O. Box 655303 MS 3683                     kenb@dadd.ti.com
Dallas, TX 75265
*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*

From help-lucid-emacs-request@lucid.com  Fri Sep 11 14:10:38 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA05319; Fri, 11 Sep 92 14:10:38 PDT
Received: by heavens-gate.lucid.com id AA12186g; Fri, 11 Sep 92 13:58:03 PDT
Received: from spssig.spss.com by heavens-gate.lucid.com id AA12167g; Fri, 11 Sep 92 13:56:02 PDT
Received: from spsssq (spsssq.spss.com) by spssig.spss.com Fri, 11 Sep 92 16:07:37 CDT
Received: from spssrs0 by spsssq (5.61/4.7)
	id AA21086; Fri, 11 Sep 92 16:11:18 -0500
Received: from ibmws001.spss.com by spssrs0.spss.com (AIX 3.2/UCB 5.64/4.03)
          id AA29783; Fri, 11 Sep 1992 16:07:38 -0500
Received: by ibmws001.spss.com (AIX 3.2/UCB 5.64/4.03)
          id AA15606; Fri, 11 Sep 1992 16:07:34 -0500
From: bobhays@spss.com
Message-Id: <9209112107.AA15606@ibmws001.spss.com>
Subject: The dbx info I promised....
To: help-lucid-emacs@lucid.com (help-lucid-emacs@lucid.com)
Date: Fri, 11 Sep 92 16:07:31 CDT
X-Mailer: ELM [version 2.3 PL11]

Here is the dbx output that I said I'd post.  This is the death and
where info for the core file created when xemacs (lucid 19.3) fails
to start up on AIX 3.2.2:

segmentation violation in unnamed block $b682 at line 686 in file "gmalloc.c"
  686               next->next->prev = next;

(dbx) where
unnamed block $b682, line 686 in "gmalloc.c"
__free(ptr = warning: Unable to access address 0x201d49f8 from core
(invalid char ptr (0x201d49f8))), line 686 in "gmalloc.c"
gmalloc.free(ptr = 0x201d49f8), line 730 in "gmalloc.c"
free_widget_value(wv = 0x2015df00), line 148 in "menubar.c"
free_widget_value(wv = 0x2015dec0), line 159 in "menubar.c"
free_widget_value(wv = 0x2015dcc0), line 160 in "menubar.c"
free_widget_value(wv = 0x2015dc80), line 159 in "menubar.c"
set_screen_menubar(s = 0x201b4400, deep_p = 0), line 527 in "menubar.c"
unnamed block $b239, line 688 in "menubar.c"
update_screen_menubars(), line 688 in "menubar.c"
redisplay(), line 708 in "xdisp.c"
initialize_first_screen(), line 1074 in "xdisp.c"
Finitialize_first_screen(), line 2247 in "dispnew.c"
Ffuncall(nargs = 1, args = 0x2017bff8), line 1802 in "eval.c"
Fbyte_code(bytestr = 202269268, vector = 269378192, maxdepth = 2, 0x100278ac, 0xdeadbeef, 0xdeadbeef, 0xdeadbe
ef, 0xdeadbeef), line 428 in "bytecode.c"
unnamed block $b481, line 1418 in "eval.c"
Feval(form = 336486980, 0x4155804, 0xdeadbeef, 0x100278ac, 0xdeadbeef, 0xdeadbeef, 0xdeadbeef, 0xdeadbeef), li
ne 1418 in "eval.c"
Fcondition_case(args = 337129756), line 968 in "eval.c"
Fbyte_code(bytestr = 202269104, vector = 269378036, maxdepth = 3, 0x4155804, 0x0, 0x0, 0x0, 0x0), line 582 in 
"bytecode.c"
funcall_lambda(fun = 403595672, nargs = 0, arg_vector = 0x2015cf8c), line 1969 in "eval.c"
Ffuncall(nargs = 1, args = 0x2015cf88), line 1836 in "eval.c"
Fbyte_code(bytestr = 202268104, vector = 269377044, maxdepth = 5, 0x10027b08, 0xdeadbeef, 0xdeadbeef, 0xdeadbe
ef, 0xdeadbeef), line 428 in "bytecode.c"
funcall_lambda(fun = 403594672, nargs = 0, arg_vector = (nil)), line 1969 in "eval.c"
apply_lambda(fun = 403594672, args = 68507652, eval_flag = 1, 0x10027b08, 0xdeadbeef, 0xdeadbeef, 0xdeadbeef, 
0xdeadbeef), line 1900 in "eval.c"
Feval(form = 337073900, 0xdeadbeef, 0xdeadbeef, 0x10027b08, 0xdeadbeef, 0xdeadbeef, 0xdeadbeef, 0xdeadbeef), l
ine 1441 in "eval.c"
top_level_2(), line 397 in "keyboard.c"
internal_condition_case(bfun = 0x20148974, handlers = 68507932, hfun = 0x20148968), line 1002 in "eval.c"
top_level_1(dummy = 68507652), line 406 in "keyboard.c"
internal_catch(tag = 68507912, func = 0x20148950, arg = 68507652), line 814 in "eval.c"
command_loop(), line 366 in "keyboard.c"
recursive_edit_1(), line 221 in "keyboard.c"
Frecursive_edit(), line 250 in "keyboard.c"
main(argc = 1, argv = 0x2ff7ff04, envp = 0x2ff7ff0c), line 819 in "emacs.c"

I'll think about this output Monday. :-)

Have fun! - Bob

From help-lucid-emacs-request@lucid.com  Fri Sep 11 15:23:31 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA05642; Fri, 11 Sep 92 15:23:31 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA12416g; Fri, 11 Sep 92 15:10:52 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA15722; Fri, 11 Sep 92 18:22:09 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA15718; Fri, 11 Sep 92 18:22:06 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!spool.mu.edu!agate!boulder!news!grunwald
From: grunwald@mumble.cs.colorado.edu (Dirk Grunwald)
Subject: Changes for DECstation
Message-Id: <GRUNWALD.92Sep11160539@mumble.cs.colorado.edu>
Nntp-Posting-Host: mumble.cs.colorado.edu
Reply-To: grunwald@foobar.cs.colorado.edu
Organization: University of Colorado at Boulder
Date: 11 Sep 92 16:05:39
Lines: 206
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


I changed m-pmax.h to be...

-----------------------------------------------------------------------------
#include "m-mips.h"

#undef BIG_ENDIAN
#define LIBS_DEBUG

/* Supposedly the following will overcome a kernel bug.  */
#undef LD_SWITCH_MACHINE
#undef DATA_START
#define DATA_START 0x10000000
#define DATA_SEG_BITS 0x10000000

#define BROKEN_O_NONBLOCK

#define NEED_STRDUP
#define NEED_REALPATH
#define HAVE_DREM 
-----------------------------------------------------------------------------


..it's the last 3 that are useful.

Also, I had numerous problems preloading packages. I found the
following to be useful.

+ Reporting of error messages on loadup is broken. See appended
  site-load for an (unsatisfying) work-around [thanks to JWZ]
	

+ in loadup.el, move the load of "site-load" to be after the version
  increment. Some packages use the emacs-version string to decide
  between Lucid and normal emacs behaviors.

	(load "version.el")
	(load "bytecomp-runtime")
	(if (load "site-load" t)
	    (garbage-collect))

+ Here's the site-load I'm using..

;;
;;	site-load.el for SRL lucid emacs
;;
(defun loadup::load-list (doit list)
  (if doit
      (if (not (null list))
	  (let
		;;
		;; this makes 'print' work on loadup. Error still
		;; causes problems.
		;;
	      ((standard-output 'external-debugging-output))
	    (while list
	      (load (car list))
	      (print pure-bytes-used)
	      (setq list (cdr list))
	      )
	    (garbage-collect)
	    )
	)
    )
)

;;
;; Tree Dired - works fine with Ange-ftp
;;
(loadup::load-list 't
	'( "dired" "ange-ftp")
; "dired" "dired-cd" "dired-cwd"
;"dired-link" "dired-num"  "dired-rcs" "dired-trns"

)

(loadup::load-list 't
 '(
   "gnus" "gnusmail" "gnusmisc" "gnuspost"
   "nntp"  "gnus-lucid" "rnewspost"

;   "gnus-mark" "gnus-hide-quote"
) ; timezone 
 )

(loadup::load-list 't
'( 
  "vm-lucid" "vm-delete" "vm-edit" "vm-folder" "vm-group" 
   "vm-mark" "vm-message" "vm-misc" "vm-motion" "vm-page" "vm-save"
   "vm-search" "vm-summary" "vm-undo" "vm-vars" "vm-window"
 )
)

(loadup::load-list 't
		   '( 
		     "bbdb"
		     "bbdb-lucid"
		     "bbdb-com"
		     "bbdb-gnus"
		     "bbdb-vm"
		     "bbdb-mhe"
		     "sendmail"
		     "bbdb-lucid"
		     "mail-abbrevs"
		     "mail-extr"
		   )
)



;;
;; CMU shell
(loadup::load-list 't
 '( "comint" "shell" )
 )

(loadup::load-list 't
		   '( "bytecomp" "bytecomp-runtime" "byte-optimize")
)

;;
;; built-ins we use a lot...
;;
(loadup::load-list 't
		   '( 
		     ;;
		     ;; modes
		     ;;
		     "dabbrev"
		     "c++-mode" "c-style"
		     ;;
		     ;; Packages
		     ;;
		     "webster" "compile" "info"  "man"  
		     "apropos" "edebug" "info" "mh-e"
		     "font-lock"
		     ;;
		     ;; from prim
		     ;;
		     "rect"
					; "timer" -- Can't load timer
		     ;;
		     ;; utils
		     ;;
		     "backquote"
		     )
		   )

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Localisms...
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

(setq old-load-path load-path)

(defun loadup::add (path)
  (setq load-path (cons path load-path))
  )

(let* ((local-gnu "/srl/Lucid19/local"))
  (loadup::add (concat local-gnu "/VorTeX/"))
  (loadup::add (concat local-gnu "/SC-2.2/"))
  (loadup::add local-gnu)
  )

;;
;; VorTeX -- Load first because it used to define fill-paragraph
;; and we want to over-ride that with filladapt.elc
;;
(loadup::load-list 't
 '( 
   "TeX-mode" "TeX-custom" "TeX-misc" "TeX-match" "TeX-spell" 
   ;;    "BibTeX-abv" "BibTeX-misc" "BibTeX-mode" "BibTeX-ops"
   ;;    "TeX-bib"
   )
 )

;;
;; Supercite
;;
(loadup::load-list 't
 '( "sc" "sc-alist" "sc-electric" )
 )

;;
;; Random shit
;;
(loadup::load-list 't
 '( "crypt" "electric-minibuffer" "filladapt" ;  "ps-mode"
    )
 )

;;
;; Clean up after ourselves..
;;

(setq load-path old-load-path)

(makunbound 'old-load-path)
(fmakunbound 'loadup::load-list)
(fmakunbound 'loadup::add)
(garbage-collect)
(print pure-bytes-used 'external-debugging-output)
(garbage-collect)




From help-lucid-emacs-request@lucid.com  Fri Sep 11 15:23:53 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA05646; Fri, 11 Sep 92 15:23:53 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA12420g; Fri, 11 Sep 92 15:11:21 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA15795; Fri, 11 Sep 92 18:22:38 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA15791; Fri, 11 Sep 92 18:22:35 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!europa.asd.contel.com!darwin.sura.net!spool.mu.edu!agate!boulder!news!grunwald
From: grunwald@mumble.cs.colorado.edu (Dirk Grunwald)
Subject: can't ``xon some-host lemacs'' anymore
Message-Id: <GRUNWALD.92Sep11160918@mumble.cs.colorado.edu>
Nntp-Posting-Host: mumble.cs.colorado.edu
Reply-To: grunwald@foobar.cs.colorado.edu
Organization: University of Colorado at Boulder
Date: 11 Sep 92 16:09:18
Lines: 12
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com



It used to be that I could start a Lemacs on another host using the
standard 'xon' script. E.g.,


xon goober lemacs -display foobar:0

Xon does an rsh and setups up HOME and DISPLAY.  However, now lemacs
complains about needing TERM to be defined - it didn't need this
before. Is there a fix, other than having a version of 'xon' which
sets TERM as well?

From help-lucid-emacs-request@lucid.com  Fri Sep 11 15:51:56 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA05725; Fri, 11 Sep 92 15:51:56 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA12508g; Fri, 11 Sep 92 15:39:41 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA16890; Fri, 11 Sep 92 18:50:52 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA16886; Fri, 11 Sep 92 18:50:51 -0400
Path: uunet!olivea!sgigate!odin!fido!shankar
From: shankar@wpd.sgi.com (Shankar Unni)
Newsgroups: alt.lucid-emacs.help
Subject: Re: compiling lucid 19.2 on HP 7x0
Message-Id: <pnssj44@fido.asd.sgi.com>
Date: 11 Sep 92 22:41:41 GMT
References: <9209101349.AA21434@amil.co.il>
Organization: Silicon Graphics, Inc.
Lines: 51
X-Newsreader: Tin 1.1 PL5
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Danny Bar-Dov (danny@amil.co.il) wrote:

> 1. Lucid specifies an ansi C compiler. Not having gcc - I tried to
> use HP's cc with the ansi mode flag (-Aa). After complaints about
> errors in header files (HP's) I tried the HP CC (C++) compiler -
> same problems. The c89 (another flavor of HP ansi compiler) yielded
> same results.  To make a long story short I've found out that you
> must define _INCLUDE_POSIX_SOURCE _INCLUDE_HPUX_SOURCE
> _INCLUDE_XOPEN_SOURCE to make it work.

Don't define the _INCLUDE_* names here - just define _HPUX_SOURCE.
This will cause all three names above to get defined.  This is a
standard HP FAQ.

Better still, use the flag combination "-Aa +e" (the +e flag defines
_HPUX_SOURCE and enables a couple of hp extensions to C that should
not affect any programs not using them, like asm(), etc)..

(The short version is that when you turn on -Aa in HP's C compiler,
you get a *PURE* ANSI C namespace - i.e. names that are not explicitly
in the ANSI C standard do not get defined in the headers. To get these
back, you need to define one of three possible "name-space" defines -

  _POSIX_SOURCE <= _XOPEN_SOURCE <= _HPUX_SOURCE

(i.e. each of these names is a subset of the one to its right)).

> 2. HP do not provide Xmu & Xaw include files. Also they do not
> give these libraries in both archive & shared library formats -
> one is provided only as a shared lib. the other as an archive.
> - solution - I compiled against X11R5 native distribution.

The compiled X11R4 libs and headers are on "hpcvaaz.cv.hp.com" (use
anonymous ftp - I don't remember the exact directory).

> 3. (This was partly mentioned in lucid-19.3 announcement) There are
> some mathematic functions missing under the HP platform
> some are called differently (i.e. remainder() is called fabs())
> others (i.e. atanh) are totally missing. I simply closed all these
> references with #ifndef HPUX

That's "fmod()", not "fabs()".

Jamie - very few systems have implemented the remainder() function
(which seems to be something out of IEEE754).  Could you convert all
such references to the more common ANSI C function "fmod()"?


--
Shankar Unni				E-Mail:	shankar@sgi.com
Silicon Graphics Inc.			Phone:	+1-415-390-2072

From help-lucid-emacs-request@lucid.com  Fri Sep 11 19:38:33 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA06117; Fri, 11 Sep 92 19:38:33 PDT
Received: by heavens-gate.lucid.com id AA12977g; Fri, 11 Sep 92 19:26:13 PDT
Received: from plg.uwaterloo.ca by heavens-gate.lucid.com id AA12973g; Fri, 11 Sep 92 19:23:40 PDT
Received: by plg.uwaterloo.ca id <28714>; Fri, 11 Sep 1992 22:34:53 -0400
From: Dave Mason <dmason%plg.uwaterloo.ca@lucid.com>
To: jwz@lucid.com (Jamie Zawinski)
Cc: help-lucid-emacs@lucid.com
In-Reply-To: jwz@lucid.com's message of Thu, 10 Sep 1992 20:47:46 PDT
Subject: Re: 19.3 installation on decstation/ultrix4.2 with native cc
Message-Id: <92Sep11.223453edt.28714@plg.uwaterloo.ca>
Date: Fri, 11 Sep 1992 22:34:50 -0400

 Here is some better menubar Buffers functions that you might want to
include in the distribution.

	../Dave

-------------------------------
(add-menu-item  '("Buffers" "Change to...") "" nil t)
(add-menu-item  '("Buffers" "Save...") "" nil t)
(add-menu-item  '("Buffers" "Delete...") "" nil t)
(add-menu-item  '("Buffers") "Save All Buffers" 'save-some-buffers t)
(add-menu-item  '("Buffers") "List All Buffers" 'list-buffers t)

(defun build-buffers-each (buffer-menu func buffers)
  (let (name)
    (if (not buffer-menu)
	nil
      ;;(if (> (length buffers) 10)
      ;;    (setcdr (nthcdr 10 buffers) nil))
      (setq buffers
	    (mapcar (function
		     (lambda (buffer)
		       (if (setq name (format-buffers-menu-line buffer))
			   (vector name
			     (list func (buffer-name buffer))
			     t))))
		    buffers))
      ;; slightly (only slightly) more efficient to not install the menubar
      ;; if it hasn't visibly changed.
      (if (equal buffers (cdr buffer-menu))
	  t  ; return t meaning "no change"
	(setcdr buffer-menu buffers)
	;; return the now-modified menubar to install.
	))))

(defun build-buffers-menu-hook (nothing)
  "For use as a value of activate-menubar-hook.
This function changes the contents of the \"Buffers\" menu to correspond
to the current set of buffers.  You can control how the text of the menu
items are generated by redefining the function `format-buffers-menu-line'."
  (let ((buffers (buffer-list)))
    (build-buffers-each (car (find-menu-item current-menubar 
					     '("Buffers" "Change to...")))
			'switch-to-buffer
			buffers)
    (build-buffers-each (car (find-menu-item current-menubar 
					     '("Buffers" "Save...")))
			'save-buffer
			buffers)
    (build-buffers-each (car (find-menu-item current-menubar 
					     '("Buffers" "Delete...")))
			'kill-buffer
			buffers)
    )
  nil)

From help-lucid-emacs-request@lucid.com  Sat Sep 12 00:25:48 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA06605; Sat, 12 Sep 92 00:25:48 PDT
Received: by heavens-gate.lucid.com id AA13310g; Sat, 12 Sep 92 00:10:28 PDT
Received: from ntu.ac.sg by heavens-gate.lucid.com id AA13306g; Sat, 12 Sep 92 00:10:13 PDT
Received: by ntu.ac.sg (5.57/Ultrix3.0-C)
	id AA05272; Sat, 12 Sep 92 15:21:13 +0800
Message-Id: <9209120721.AA05272@ntu.ac.sg>
Sender: franks%ntu.ac.sg@lucid.com
Date: Sat, 12 Sep 1992 15:22:20 +0730
To: help-lucid-emacs@lucid.com
From: franks%ntu.ac.sg@lucid.com (Frank Siebenlist)
Subject: mouse scrolling for lemacs 19

The following few lines may make your lifes a little easier
(until we get our scrollbars....),
unless you're using hyperbole 
(in which case the interesting parts keep jumping of your screen...).

Enjoy, Frank.

-------------------------cut-here-------------------------------------------
-
;; mouse-scroll-prop.el
;; proportional mouse scrolling for lemacs-19
;;
;; add next three lines to .emacs and modify key assignment to taste:
;;(load "mouse-scroll-prop")
;;(define-key global-map '(control button2) 'mouse-scroll-up-prop)
;;(define-key global-map '(control button3) 'mouse-scroll-down-prop)

(defun mouse-scroll-up-prop (event)
  "Scrolls window up proportionally, i.e. clicked line becomes first line."
  (interactive "@event")
  (scroll-up (- (event-y event) (car (cdr (window-edges))))))

(defun mouse-scroll-down-prop (event)
  "Scrolls window down proportionally, i.e. clicked line becomes last
line."
  (interactive "@event")
  (scroll-down (- (car (cdr (cdr (cdr (window-edges))))) (event-y event)
2)))


From help-lucid-emacs-request@lucid.com  Sat Sep 12 03:06:41 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA07407; Sat, 12 Sep 92 03:06:41 PDT
Received: by heavens-gate.lucid.com id AA13520g; Sat, 12 Sep 92 02:50:04 PDT
Received: from newton.ncsa.uiuc.edu by heavens-gate.lucid.com id AA13516g; Sat, 12 Sep 92 02:49:52 PDT
Received: from wintermute.ncsa.uiuc.edu by newton.ncsa.uiuc.edu with SMTP id AA29851
  (5.65a/IDA-1.4.2 for help-lucid-emacs@lucid.com); Sat, 12 Sep 92 05:01:05 -0500
Received: by wintermute.ncsa.uiuc.edu (920110.SGI/911001.SGI)
	for @newton.ncsa.uiuc.edu:epoch@cs.uiuc.edu id AA02905; Sat, 12 Sep 92 05:01:49 -0700
Date: Sat, 12 Sep 92 05:01:49 -0700
From: marca@ncsa.uiuc.edu (Marc Andreessen)
Message-Id: <9209121201.AA02905@wintermute.ncsa.uiuc.edu>
To: epoch@cs.uiuc.edu, help-lucid-emacs@lucid.com
Subject: Lightbrite 1.1 (for Epoch and Lucid Emacs)
X-Dano: Everything I did last year was for the purpose of advancing my --
 everything I did politically -- advancing my election.  And of course
 I'm not going to say that.
                -- President George Bush, June 1989.

Lightbrite 1.1 (a source-code highlighting package) is available for
anonymous FTP from ftp.ncsa.uiuc.edu in /outgoing/marca/epoch.  It
runs (transparently) on both Epoch 4.2 and Lucid Emacs 19.3.

It hasn't been greatly stress-tested yet, so bugs surely remain; in
the tradition of c++-mode, it has an automatic bug-report generation
command specifically designed to make it extra-easy to whine and
complain :-).

Features of Lightbrite 1.1 include:

o Accurate comment highlighting.
o Regexp touchup highlighting.
o Easy specification of visual attributes of multiple 
  highlighting styles.
o Instant highlighting (as you type) with adjustable 
  responsiveness.
o Buffer size thresholds for both comment and touchup 
  highlighting.
o Use of minor mode and local keymaps.
o Re-highlight visible screen, current paragraph, current
  function, immediate area, or entire buffer.
o Large assortment of default mode-specific highlighting
  patterns.
o Automatic highlight on find-file and/or write-file.
o Special handling of mail and rmail modes.
o Works with both Epoch and Lucid Emacs transparently.

Enjoy,

Marc

--
Marc Andreessen
Software Development Group
National Center for Supercomputing Applications
marca@ncsa.uiuc.edu


From help-lucid-emacs-request@lucid.com  Mon Sep 14 05:59:59 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA13295; Mon, 14 Sep 92 05:59:59 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA15932g; Mon, 14 Sep 92 05:44:26 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA23650; Mon, 14 Sep 92 08:55:39 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA23643; Mon, 14 Sep 92 08:55:36 -0400
Path: uunet!spool.mu.edu!umn.edu!noc.msc.net!uc.msc.edu!shamash!bjdunlop
From: bjdunlop@shamash.cdc.com (Bruce Dunlop)
Newsgroups: alt.lucid-emacs.help
Subject: blink-paren function
Message-Id: <47510@shamash.cdc.com>
Date: 14 Sep 92 12:10:26 GMT
Distribution: usa
Organization: Control Data, Arden Hills, MN
Lines: 13
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


I tried the blink-paren function, and it almost works.  BUT, matching a right paren
works a little odd.  For example, if I have a function with just one level of paren.,
and put the cursor ON the right paren, it does not blink the matching left one.  If
I move the cursor one space to the right of the right paren, THEN it blinks the matching
left paren.

In general, it always blinks the matching left paren for the paren one space to the left
of where the cursor is.

Is this how it is supposed to work?  Does it work like this for anyone else?

Jim Dahlberg

From help-lucid-emacs-request@lucid.com  Mon Sep 14 07:11:36 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA13608; Mon, 14 Sep 92 07:11:36 PDT
Received: by heavens-gate.lucid.com id AA16054g; Mon, 14 Sep 92 06:58:27 PDT
Received: from scylla.lucid (scylla.lucid.com) by heavens-gate.lucid.com id AA16050g; Mon, 14 Sep 92 06:58:14 PDT
Received: by scylla.lucid (4.1/SMI-4.1)
	id AA23669; Mon, 14 Sep 92 07:08:17 PDT
Date: Mon, 14 Sep 92 07:08:17 PDT
From: devin%scylla@lucid.com (Matthieu Devin)
Message-Id: <9209141408.AA23669@scylla.lucid>
To: bjdunlop@shamash.cdc.com (Bruce Dunlop)
Cc: help-lucid-emacs@lucid.com
Subject: Re: blink-paren function
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Bruce Dunlop's message of  14-Sep-92 12:10:26 GMT <47510@shamash.cdc.com>
References: <47510@shamash.cdc.com>

In message <47510@shamash.cdc.com> Bruce Dunlop wrote:
> I tried the blink-paren function, and it almost works.  BUT, matching a right
> paren works a little odd.  For example, if I have a function with just one
> level of paren., and put the cursor ON the right paren, it does not blink the
> matching left one.  If I move the cursor one space to the right of the right
> paren, THEN it blinks the matching left paren.

That's how it's supposed to work, it's also how M-C-f and M-C-b work.  Don't
forget that the point is actually *in-between* characters, it's never *on* a
character even if it is dispayed above characters.  

So the rule is: If point is just before an open-paren it blinks the matching
close-paren and if point is just after a close-paren it blinks the matching
open-paren.

From help-lucid-emacs-request@lucid.com  Mon Sep 14 07:12:44 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA13616; Mon, 14 Sep 92 07:12:44 PDT
Received: by heavens-gate.lucid.com id AA16059g; Mon, 14 Sep 92 06:59:48 PDT
Received: from spssig.spss.com by heavens-gate.lucid.com id AA16055g; Mon, 14 Sep 92 06:59:22 PDT
Received: from spsssq (spsssq.spss.com) by spssig.spss.com Mon, 14 Sep 92 09:10:40 CDT
Received: from spssrs0 by spsssq (5.61/4.7)
	id AA23267; Mon, 14 Sep 92 09:14:50 -0500
Received: from ibmws001.spss.com by spssrs0.spss.com (AIX 3.2/UCB 5.64/4.03)
          id AA31889; Mon, 14 Sep 1992 09:10:59 -0500
Received: by ibmws001.spss.com (AIX 3.2/UCB 5.64/4.03)
          id AA15599; Mon, 14 Sep 1992 09:10:57 -0500
From: bobhays@spss.com
Message-Id: <9209141410.AA15599@ibmws001.spss.com>
Subject: Here are diffs so far to get Lucid to build on AIX
To: help-lucid-emacs@lucid.com (help-lucid-emacs@lucid.com)
Date: Mon, 14 Sep 92 9:10:55 CDT
X-Mailer: ELM [version 2.3 PL11]

Here are my differences so far.

First, config.h.  This is trivial and you should know what to do here
(note that I am using Motif).

> diff config.h config.h-dist
35c35
< /* #define USE_GCC */
---
> #define USE_GCC
43c43
< #include "s/s-aix3-1.h"
---
> #include "s/s-sunos4.h"
50c50
< #include "m/m-ibmrs6000.h"
---
> #include "m/m-sparc.h"
177c177
< #define LWLIB_USES_MOTIF
---
> /* #define LWLIB_USES_MOTIF */

Second, gmalloc.c.  Here, somebody just goes and defines size_t and
then includes stdio.h later!  Someone should read something on ANSI C
I think.  Anyway, this hack is definitely dependent on AIX; now that I
think about it, a possibly better solution is to undef size_t before
entering stdio.h.

> diff gmalloc.c gmalloc.c~
49c49
< #    include <stddef.h>
---
> #include <stddef.h>
51,53c51,55
< #    undef  size_t
< #    define size_t unsigned int
< #    define _SIZE_T
---
> #undef        size_t
> #define       size_t  unsigned int
> #ifdef AIX
> #define _SIZE_T                                                                 /* Do this to keep stdio.h h
appy. */
> #endif

Third, look at sysdep.c.  You'll see AIX 3.1 isms.  You must change
HFQEIO to HFQERROR for 3.2.

> diff sysdep.c sysdep.c~
4246c4246
<   if (ioctl (0, HFQERROR, 0) < 0)
---
>   if (ioctl (0, HFQEIO, 0) < 0)
4284c4284
<   if (ioctl (0, HFQERROR, 0) != -1)
---
>   if (ioctl (0, HFQEIO, 0) != -1)
4300c4300
<   if (ioctl (0, HFQERROR, 0) < 0)
---
>   if (ioctl (0, HFQEIO, 0) < 0)

I had to turn off LD_SWITCH_SYSTEM (this should probably be done in
m-ibmrs6000.h).

I had to slightly restructure ymakefile - make is so clumsy and
non-standard.  I think the following def for obj would make things
much better for AIX at least:

obj=    dispnew.o screen.o scroll.o xdisp.o window.o \
        events.o event-alloc.o event-stream.o \
        term.o cm.o $(XOBJ) SOUND_OBJS \
        emacs.o keyboard.o macros.o keymap.o sysdep.o \
        buffer.o filelock.o insdel.o marker.o \
        minibuf.o fileio.o dired.o filemode.o \
        cmds.o casetab.o casefiddle.o indent.o search.o regex.o undo.o \
        alloc.o data.o doc.o editfns.o callint.o \
        eval.o floatfns.o fns.o print.o lread.o \
        abbrev.o syntax.o font_lock.o UNEXEC mocklisp.o bytecode.o \
        process.o callproc.o $(environobj) \
        doprnt.o extents.o \
        faces.o ENERGIZE_OBJS BTLOBJS FREECHECKOBJS REALPATH_OBJS

In s-aix3-1.h, I defined NEED_REALPATH.

I had to define ENERGIZE in Imakefile in lwlib - otherwise, I had
unresolved references (naughty people:-).

In lwlib.c, I had to conditionally remove alloca.h:

#ifdef AIXV3
#else
#include <alloca.h>
#endif

I also conditioned out the signal handler for segment violation in
emacs.c so that I could get core files that had useful where info in
them (a compile time option for this would be handy).

Hope that helps.  I would really really like to get this working on
vanilla AIX 3.2.2 and hope that this info and the stack trace provided
in an earlier message (Friday) may help others complete the task.

Have fun! - Bob

From help-lucid-emacs-request@lucid.com  Mon Sep 14 08:55:07 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA13948; Mon, 14 Sep 92 08:55:07 PDT
Received: by heavens-gate.lucid.com id AA16268g; Mon, 14 Sep 92 08:42:31 PDT
Received: from watergate.lucid ([192.31.212.117]) by heavens-gate.lucid.com id AA16263g; Mon, 14 Sep 92 08:42:18 PDT
Received: by watergate.lucid (4.1/SMI-4.1)
	id AA02890; Mon, 14 Sep 92 08:52:17 PDT
Date: Mon, 14 Sep 92 08:52:17 PDT
From: eb%watergate@lucid.com (Eric Benson)
Message-Id: <9209141552.AA02890@watergate.lucid>
To: bjdunlop@shamash.cdc.com (Bruce Dunlop)
Cc: help-lucid-emacs@lucid.com
Subject: Re: blink-paren function
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Bruce Dunlop's message of  14-Sep-92 12:10:26 GMT <47510@shamash.cdc.com>
References: <47510@shamash.cdc.com>
Reply-To: eb@lucid.com

That's the way it works.  Even though the cursor is *on* that
character, it's really meant to be positioned *before* that character.
Most terminals can't display a cursor between characters.

From help-lucid-emacs-request@lucid.com  Mon Sep 14 09:56:53 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA14129; Mon, 14 Sep 92 09:56:53 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA16443g; Mon, 14 Sep 92 09:44:14 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA17448; Mon, 14 Sep 92 12:55:36 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA17441; Mon, 14 Sep 92 12:55:32 -0400
Path: uunet!cis.ohio-state.edu!zaphod.mps.ohio-state.edu!sdd.hp.com!think.com!barmar
From: barmar@think.com (Barry Margolin)
Newsgroups: alt.lucid-emacs.help
Subject: Re: blink-paren function
Date: 14 Sep 1992 16:51:16 GMT
Organization: Thinking Machines Corporation, Cambridge MA, USA
Lines: 22
Distribution: usa
Message-Id: <192fu4INN3j4@early-bird.think.com>
References: <47510@shamash.cdc.com>
Nntp-Posting-Host: telecaster.think.com
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <47510@shamash.cdc.com> bjdunlop@shamash.cdc.com (Bruce Dunlop) writes:
>In general, it always blinks the matching left paren for the paren one space to the left
>of where the cursor is.
>
>Is this how it is supposed to work?  Does it work like this for anyone else?

Think about how it works when you're initially typing.  After you type a
right parenthesis, it's to the left of the cursor, and you want the
parenthesis that matches the one you just typed to blink.  It can't match
the parenthesis of the one you're *about* to type, since Emacs doesn't have
ESP yet (I think that's planned for the FSF's version, which may be why
it's taking so long :-).

Also, that's where you want the cursor to be when you type
Control-Meta-Rubout (does Lucid Emacs have this binding by default?  Lisp
Machine Zmacs has it), and you want the matching parenthesis to blink.

-- 
Barry Margolin
System Manager, Thinking Machines Corp.

barmar@think.com          {uunet,harvard}!think!barmar

From help-lucid-emacs-request@lucid.com  Mon Sep 14 10:39:13 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA14270; Mon, 14 Sep 92 10:39:13 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA16612g; Mon, 14 Sep 92 10:26:33 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA19247; Mon, 14 Sep 92 13:37:56 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA19242; Mon, 14 Sep 92 13:37:52 -0400
Path: uunet!mcsun!uknet!axion!muppet!aero!bret
From: bret@muppet.bt.co.uk (Bret Giddings)
Newsgroups: alt.lucid-emacs.help
Subject: fonts
Message-Id: <1992Sep14.093657.21930@muppet.bt.co.uk>
Date: 14 Sep 92 09:36:57 GMT
Reply-To: bret@muppet.bt.co.uk
Organization: British Telecom Research Laboratories
Lines: 8
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Does anyone know of any decent fixed width fonts for use with lemacs. I don't like
the default, and would by choice use 8x16, but this has no bold variant. Alternatively,
is there a method of generating a bold/italic font from the provided 8x16 roman font.

Also - is it possible for lemacs to change the colour of the mouse pointer within
its windows?

Bret

From help-lucid-emacs-request@lucid.com  Mon Sep 14 12:45:40 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA14694; Mon, 14 Sep 92 12:45:40 PDT
Received: by heavens-gate.lucid.com id AA17113g; Mon, 14 Sep 92 12:33:11 PDT
Received: from ingr.ingr.com by heavens-gate.lucid.com id AA17102g; Mon, 14 Sep 92 12:31:45 PDT
Received: from matis.UUCP by ingr.ingr.com (5.65c/1.920611)
	id AA28391; Mon, 14 Sep 1992 14:48:33 -0500
Received: from simpson.ingr.com by turtles (4.1/SMI-4.1)
	id AA25464; Mon, 14 Sep 92 16:22:30 IST
Received: by simpson.ingr.com (4.1/SMI-4.1)
	id AA21199; Mon, 14 Sep 92 16:21:42 IST
From: matis!amir@lucid.com (Amir J Katz)
Message-Id: <9209141421.AA21199@simpson.ingr.com>
Subject: Lemacs 19.3, Audio and SunOS 4.1.3
To: bug-lucid-emacs@lucid.com (Lucid Emacs Bug M.L.)
Date: Mon, 14 Sep 92 16:21:42 EET
Cc: help-lucid-emacs@lucid.com (Lucid Emacs help M.L.)
Organization: SEE Technologies Ltd.
Reply-To: matis!amir@lucid.com
X-Reply-To: amir@matis.ingr.COM
X-Mailer: ELM [version 2.3 PL11]

(If you don't have a Sun SparcStation, please save this message to /dev/null :-)

On SunOS 4.1.3, Sun has changed the audio header files (and the audio ioctl
commands as well) in order to support the new audio devices on the
SparcStation 10 family. Accordingly, in Lucid Emacs 19.3, Jamie (or someone
else at Lucid) has surrounded some pre-SunOS 4.1.3 code in src/libsst.c with
the appropriate #ifdef. 
However, I found out that it is not enough, at least not for gcc and Sun's
ANSI-C compilers. Here is a patch to libsst.h that fixes the problem:  

*** libsst.h.orig	Wed Sep  2 11:00:23 1992
--- libsst.h	Mon Sep 14 14:52:53 1992
***************
*** 14,19 ****
--- 14,20 ----
  #ifndef SUNOS4_0_3
  #define AUDIO_4_0_3_COMPAT
  #define AUDIO_CHIP
+ #define AMD_CHIP               /* AJK: SparcStation 1, 2, IPC, IPX */
  #include <sbusdev/audio_79C30.h>
  #include <multimedia/libaudio.h>
  #include <multimedia/audio_device.h>

Since I don't have a SparcStation 10, I don't know whether this code will
compile correctly there.

BTW, does anyone know whether there is a #define on Suns that shows the
machine type? Both Sun's cc and GNU gcc define, when on Sun, the symbols
'sun' and 'sparc'. However, in order to determine whether an audio device
exists at all, the machine type (as returned by the shell command 'arch -k')
must be either 'sun4c' and 'sun4m'. Neither compiler defines such symbols.

-- 
/* ----------------------------------------------------------- */
/*  Amir J. Katz             |   amir@matis.ingr.COM           */
/*  System Specialist        |   Voice:  +972 52-584684        */
/*  SEE Technologies Ltd.    |   Fax:    +972 52-543917        */
/* ............ Solaris 2.0 - The Final Frontier ? ........... */

From help-lucid-emacs-request@lucid.com  Mon Sep 14 12:50:59 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA14712; Mon, 14 Sep 92 12:50:59 PDT
Received: by heavens-gate.lucid.com id AA17123g; Mon, 14 Sep 92 12:38:08 PDT
Received: from ingr.ingr.com by heavens-gate.lucid.com id AA17119g; Mon, 14 Sep 92 12:37:35 PDT
Received: from matis.UUCP by ingr.ingr.com (5.65c/1.920611)
	id AA29018; Mon, 14 Sep 1992 14:54:34 -0500
Received: from simpson.ingr.com by turtles (4.1/SMI-4.1)
	id AA25902; Mon, 14 Sep 92 18:39:32 IST
Received: by simpson.ingr.com (4.1/SMI-4.1)
	id AA22064; Mon, 14 Sep 92 18:38:43 IST
From: matis!amir@lucid.com (Amir J Katz)
Message-Id: <9209141638.AA22064@simpson.ingr.com>
Subject: 19.3 hangs when creating new screens?
To: help-lucid-emacs@lucid.com (Lucid Emacs help M.L.)
Date: Mon, 14 Sep 92 18:38:42 EET
Organization: SEE Technologies Ltd.
Reply-To: matis!amir@lucid.com
X-Reply-To: amir@matis.ingr.COM
X-Mailer: ELM [version 2.3 PL11]

Guys,
I've built Lucid Emacs 19.3, and the following functions (suggested recently
by someone on the list) seem to hang lemacs. A new screen is opened, but
then lemacs goes to sleep and never comes back. Any idea? Thanks in advance.
BTW, sometimes even 'C-x 5' (x-new-screen) hangs lemacs.

My configuration is:
  SparcStation 1+ w/SunOS 4.1.3
  gcc 2.2.2
  MIT X11R5, patch 17

---------------------------------------
(defun x-find-file (filename)
  "Does find file in new X Window"
  (interactive "Ffind file new screen: ")
  (select-screen (x-create-screen nil))
  (switch-to-buffer (find-file-noselect filename)))

(defun y-find-file (filename)
  "Does find file in new X Window"
  (interactive)
  (select-screen (x-create-screen nil))
  (switch-to-buffer (find-file-noselect filename)))

(defun find-dot-emacs ()
  (interactive)
  (y-find-file "~/.emacs")
  )

;; add new item to existing menu
(add-menu-item '("File")  "Find File New Screen"  'x-find-file t)
;; add a new menu
(add-menu-item '("--Dot Files--") ".emacs"        'find-dot-emacs t)

---------------------------------------

-- 
/* ----------------------------------------------------------- */
/*  Amir J. Katz             |   amir@matis.ingr.COM           */
/*  System Specialist        |   Voice:  +972 52-584684        */
/*  SEE Technologies Ltd.    |   Fax:    +972 52-543917        */
/* ............ Solaris 2.0 - The Final Frontier ? ........... */

From help-lucid-emacs-request@lucid.com  Mon Sep 14 14:43:55 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA15019; Mon, 14 Sep 92 14:43:55 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA17539g; Mon, 14 Sep 92 14:31:27 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA01308; Mon, 14 Sep 92 17:42:44 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA01304; Mon, 14 Sep 92 17:42:42 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!news.univie.ac.at!nestroy!news-mail-gateway
From: neumann%dec4.wu-wien.ac.AT@lucid.com (Gustaf Neumann)
Subject: testing ...
Message-Id: <9209142142.AA06315@dec4.wu-wien.ac.at>
Organization: WU Mail/News Gateway
Date: Mon, 14 Sep 1992 22:41:35 GMT
Lines: 7
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

do not appear in at.mail!

--
Gustaf Neumann          neumann@dec4.wu-wien.ac.at, neumann@awiwuw11.bitnet
Vienna University of Economics and Business Administration 
Augasse 2-6,  A-1090 Vienna, Austria		
Tel: +43 (222) 31-336 x4533  	Fax: 347-555

From help-lucid-emacs-request@lucid.com  Mon Sep 14 18:41:01 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA15494; Mon, 14 Sep 92 18:41:01 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA18213g; Mon, 14 Sep 92 18:25:29 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA09371; Mon, 14 Sep 92 21:36:53 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA09367; Mon, 14 Sep 92 21:36:52 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!usc!sol.ctr.columbia.edu!zaphod.mps.ohio-state.edu!magnus.acs.ohio-state.edu!csn!cherokee!mcclen
From: mcclen@advtech.uswest.com ( Chris McClenaghan)
Subject: Re: Problem compiling 19.3 with Motif
In-Reply-To: steve@gabriela.tymnet.com's message of 10 Sep 92 18:39:51 GMT
Message-Id: <MCCLEN.92Sep11102909@alder.advtech.uswest.com>
Nntp-Posting-Host: alder.advtech.uswest.com
Organization: US WEST Advanced Technologies, Boulder, Colorado
References: <2474@tymix.Tymnet.COM>
Date: Fri, 11 Sep 1992 17:29:09 GMT
Lines: 10
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I had the same problem, in lwlib Imakefile define ENERGIZE, this
will/should force the compiling and linking of the modules in the
energize subdirectory. Then just relink lemacs. I'm not sure that
this is what JWZ intended, possibly some conditional compilation
would remove this need. I haven't experienced any side effects
yet.

--
Chris McClenaghan    mcclen@advtech.uswest.com


From help-lucid-emacs-request@lucid.com  Mon Sep 14 19:19:39 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA15577; Mon, 14 Sep 92 19:19:39 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA18295g; Mon, 14 Sep 92 19:04:30 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA10493; Mon, 14 Sep 92 22:15:54 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA10489; Mon, 14 Sep 92 22:15:53 -0400
Path: uunet!cis.ohio-state.edu!pacific.mps.ohio-state.edu!zaphod.mps.ohio-state.edu!sol.ctr.columbia.edu!spool.mu.edu!umn.edu!noc.msc.net!uc.msc.edu!shamash!bjdunlop
From: bjdunlop@shamash.cdc.com (Bruce Dunlop)
Newsgroups: alt.lucid-emacs.help
Subject: Re: blink-paren function
Message-Id: <47573@shamash.cdc.com>
Date: 15 Sep 92 01:50:00 GMT
References: <47510@shamash.cdc.com> <192fu4INN3j4@early-bird.think.com>
Distribution: usa
Organization: Control Data, Arden Hills, MN
Lines: 25
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <192fu4INN3j4@early-bird.think.com> barmar@think.com (Barry Margolin) writes:
>Think about how it works when you're initially typing.  After you type a
>right parenthesis, it's to the left of the cursor, and you want the

Ohhhhhhhhhhhhhh!  That's the first explanation I have gotten that made any
sense.

>the parenthesis of the one you're *about* to type, since Emacs doesn't have
>ESP yet (I think that's planned for the FSF's version, which may be why

DARN,  I was hoping that would be in lemacs 19.3.


Wouldn't it be possible to modify the behavior of blink-paren, depending on
whether you just typed in a right paren. or not?

After moving the cursor, it would be more intuitive and consistent to see
the blink match the hi-lited character.  Consistent, because then left and
right paren matching would both match (blink) the paren matching the
hi-lited character.

Thanks for the explanation.


Jim Dahlberg

From help-lucid-emacs-request@lucid.com  Mon Sep 14 20:06:06 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA15623; Mon, 14 Sep 92 20:06:06 PDT
Received: by heavens-gate.lucid.com id AA18349g; Mon, 14 Sep 92 19:53:41 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA18345g; Mon, 14 Sep 92 19:53:29 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA16539; Mon, 14 Sep 92 20:03:28 PDT
Date: Mon, 14 Sep 92 20:03:28 PDT
Message-Id: <9209150303.AA16539@thalidomide.lucid>
X-Windows: The defacto substandard.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: bjdunlop@shamash.cdc.com (Bruce Dunlop)
Cc: help-lucid-emacs@lucid.com
Subject: Re: blink-paren function
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Bruce Dunlop's message of  15-Sep-92 01:50:00 GMT <47573@shamash.cdc.com>
References: <192fu4INN3j4@early-bird.think.com>
	<47510@shamash.cdc.com>
	<47573@shamash.cdc.com>

In message <47573@shamash.cdc.com> Bruce Dunlop wrote:
>
> Wouldn't it be possible to modify the behavior of blink-paren, depending
> on whether you just typed in a right paren. or not?

The point of blink-paren is to not be tied to insertion.  Blinking the
matching paren just after you've typed one is easy.  Blinking it when
the cursor happens to be on it is a Hack.

> After moving the cursor, it would be more intuitive and consistent to
> see the blink match the hi-lited character.

You think this because you think of the cursor as being ON a character.
You have not truly discovered The Way.  

	-- Jamie

From help-lucid-emacs-request@lucid.com  Tue Sep 15 02:31:30 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA00865; Tue, 15 Sep 92 02:31:30 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA18808g; Tue, 15 Sep 92 02:19:32 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA17863; Tue, 15 Sep 92 05:30:56 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA17852; Tue, 15 Sep 92 05:30:54 -0400
Path: uunet!mcsun!sunic!corax.udac.uu.se!woody.csd.uu.se!hb
From: hb%woody.csd.uu.se@lucid.com (Henrik B}kman  CSD)
Newsgroups: alt.lucid-emacs.help
Subject: floating-point functions
Date: 15 Sep 1992 09:19:50 GMT
Organization: Uppsala University
Lines: 25
Distribution: world
Message-Id: <1949rmINNis7@corax.udac.uu.se>
Nntp-Posting-Host: woody.csd.uu.se
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


I'am looking on some floating-point functions, especially the
missing ones in hpux, and I have some questions.

Some of the floating-point functions isn't defined for all values
and returns the special IEEE-754 value 'Nan' and on overflow they
return '+-(infinit)'. There is two C-functions, isnan() and isinf()
which you can check for this special values but I can't find any
such functions in Lucid-emacs. I wonder if there is some functions
like this in Lucid-emacs or if I haven't looked enough or if Lucid-
emacs is handling such math-errors in another way or if Lucid-emacs
doesn't handling such errors at all?

If I want to implement the missing functions what should I go for.
Fast and eaisy but with some round-errors or should I make them
return more correct values? That is, can I use already defined functions
or should I use "pure" numerical methods like Newton-Raphson and such?
(I don't want to implement them in PA-RISC assembler :-) )
 
-- 
----------------------------------------------------------------------
Henrik Bakman           Adress: Box 520          Tel: +46 18 181044
System Manager                  751 20 UPPSALA   Fax: +46 18 521270
Computing Science Dep.          SWEDEN           Email: hb@csd.uu.se
Uppsala University

From help-lucid-emacs-request@lucid.com  Tue Sep 15 06:10:26 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01324; Tue, 15 Sep 92 06:10:26 PDT
Received: by heavens-gate.lucid.com id AA19083g; Tue, 15 Sep 92 05:58:26 PDT
Received: from calspan.com (port3.buffalo.pub-ip.psi.net) by heavens-gate.lucid.com id AA19079g; Tue, 15 Sep 92 05:57:55 PDT
Received: from geordi.Calspan.COM by calspan.com (4.1/3.1.090690-Calspan Advanced Technology Center)
	id AA22409; Tue, 15 Sep 92 09:09:43 EDT
Received: by geordi.Calspan.COM (4.1/SMI-4.1)
	id AA02801; Tue, 15 Sep 92 09:09:43 EDT
Date: Tue, 15 Sep 92 09:09:43 EDT
From: summers@geordi.calspan.com (Mike Summers)
Message-Id: <9209151309.AA02801@geordi.Calspan.COM>
To: help-lucid-emacs@lucid.com
Subject: Wanted: Info about lucid emacs and hyperbole

Please subscribe me to this mailing list.

From help-lucid-emacs-request@lucid.com  Tue Sep 15 08:11:22 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01707; Tue, 15 Sep 92 08:11:22 PDT
Received: by heavens-gate.lucid.com id AA19242g; Tue, 15 Sep 92 07:56:28 PDT
Received: from cs.utah.edu by heavens-gate.lucid.com id AA19238g; Tue, 15 Sep 92 07:56:18 PDT
Received: from asylum.cs.utah.edu by cs.utah.edu (5.65/utah-2.21-cs)
	id AA00425; Tue, 15 Sep 92 09:07:45 -0600
Received: by asylum.cs.utah.edu (5.65/utah-2.15-leaf)
	id AA17866; Tue, 15 Sep 92 09:07:43 -0600
Date: Tue, 15 Sep 92 09:07:43 -0600
From: eeide@asylum.cs.utah.edu (Eric Eide)
Message-Id: <9209151507.AA17866@asylum.cs.utah.edu>
To: help-lucid-emacs@lucid.com
Subject: Available Minibuffer Partial Completion Packages?

I generally use Dave Gillespie's "partial minibuffer completion" package for
GNU Emacs, but my copy (version 1.05 beta) doesn't work within Lucid GNU Emacs.
Has anybody adapted any of the partial completion packages to Lucid?  I know of
these packages:

  "complete.el" by Dave Gillespie (daveg@csvax.caltech.edu)
  "completer.el" by Chris McConnell (ccm@cs.cmu.edu)

Thanks for any leads.

-------------------------------------------------------------------------------
Eric Eide          |          University of Utah Department of Computer Science
eeide@cs.utah.edu  | Buddhist to hot dog vendor: "Make me one with everything."

From help-lucid-emacs-request@lucid.com  Tue Sep 15 08:31:33 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01776; Tue, 15 Sep 92 08:31:33 PDT
Received: by heavens-gate.lucid.com id AA19288g; Tue, 15 Sep 92 08:16:22 PDT
Received: from spssig.spss.com by heavens-gate.lucid.com id AA19284g; Tue, 15 Sep 92 08:16:07 PDT
Received: from spsssq (spsssq.spss.com) by spssig.spss.com Tue, 15 Sep 92 10:27:40 CDT
Received: from spssrs0 by spsssq (5.61/4.7)
	id AA16583; Tue, 15 Sep 92 10:31:49 -0500
Received: from ibmws001.spss.com by spssrs0.spss.com (AIX 3.2/UCB 5.64/4.03)
          id AA41422; Tue, 15 Sep 1992 10:27:58 -0500
Received: by ibmws001.spss.com (AIX 3.2/UCB 5.64/4.03)
          id AA17314; Tue, 15 Sep 1992 10:27:55 -0500
From: bobhays@spss.com
Message-Id: <9209151527.AA17314@ibmws001.spss.com>
Subject: Update on my continuing struggle with lucid on AIX
To: help-lucid-emacs@lucid.com (help-lucid-emacs@lucid.com)
Date: Tue, 15 Sep 92 10:27:53 CDT
X-Mailer: ELM [version 2.3 PL11]

I suppose hacking is allowed here :-) ....

This change allowed me to get lucid to start up and actually do some
things.

> diff menubar.c menubar.c~
146c146
<   if ( wv && wv != 0xDEADBEEF)
---
>   if ( wv )
150c150
<     if (wv->key && wv->key != 0xDEADBEEF) free (wv->key);
---
>     if (wv->key) free (wv->key);
161,174c161,162
<     if (a && a != 0xDEADBEEF)
<     {
<         if ( a->key && a->key != 0xDEADBEEF )
<         {
<             free ( a->key );
<         }
<     }
<     if (b && b != 0xDEADBEEF)
<     {
<         if ( b->key && b->key != 0xDEADBEEF )
<         {
<             free ( b->key );
<         }
<     }
---
>     if (a) free_widget_value (a);
>     if (b) free_widget_value (b);

Note that I took the recursive call to free_widget_value out - if you
do not, you end up segment violating in the free call because a
pointer has a non-null value but is not pointing to allocated memory.
Anyway, this allowed me to get further.  Now, I can lock it up if I do
just the right things, and I can still get it to core dump (I think -
the above fix might have changed that behavior now that I think about
it:-), but I can get it to load, open files, etc.

That's all I can do today (/usr/group/chicago meeting tonight - our
local UniForum users group, of which I'm an active [read volunteer
dish wiper] member].

Have fun! - Bob

From help-lucid-emacs-request@lucid.com  Tue Sep 15 10:49:26 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA02154; Tue, 15 Sep 92 10:49:26 PDT
Received: by heavens-gate.lucid.com id AA19754g; Tue, 15 Sep 92 10:37:21 PDT
Received: from Sun.COM by heavens-gate.lucid.com id AA19750g; Tue, 15 Sep 92 10:37:08 PDT
Received: from snail.Sun.COM (snail.Corp.Sun.COM) by Sun.COM (4.1/SMI-4.1)
	id AA11458; Tue, 15 Sep 92 10:48:34 PDT
Received: from East.Sun.COM by snail.Sun.COM (4.1/SMI-4.1)
	id AA12321; Tue, 15 Sep 92 10:48:29 PDT
Received: from sunpix.East.Sun.COM (string-beans.East.Sun.COM) by East.Sun.COM (4.1/SMI-4.1)
	id AA06000; Tue, 15 Sep 92 13:48:27 EDT
Received: from uh-oh.East.Sun.COM by sunpix.East.Sun.COM (4.1/SMI-4.1)
	id AA23796; Tue, 15 Sep 92 13:48:25 EDT
From: Tony.Bennett@East.Sun.COM (Tony E. Bennett)
Message-Id: <9209151748.AA23796@sunpix.East.Sun.COM>
To: help-lucid-emacs@lucid.com
Subject: minor 19.3 problems
Date: Tue 15 Sep 1992 13:37:58 EST
Mailed-From: GNU Emacs or Epoch (4.2.2)
Content-Length: 1591


Solaris 2.0 (svr4); SS2, compiled with the unbundled compiler.
Openwindows 3.x; olvwm 3.2

a few minor problems and questions:

    +  how do I assign a command to C-2 (control 2)
        Every thing I've tried has either complained that C-2 is
        not printable or screwed up another key defn (notably C-R !)

            (global-set-key '(control 2) 'set-mark-command)
            (global-set-key "\C-2" 'set-mark-command)

        invoking 'global-set-key' interactively does work, however.

    +  how do you move a screen, using set-screen-position and -0?
            eg: (set-screen-position screen -0 -0)
                is equivalent to 0 0.
                but -1 -1 behaves as expected.
       It's pretty clear what is happening, but how do you work around it?

    +  is it possible to have an extent within mode-line-format.
        (In epoch you can insert zones in the mode-line-format, and
        get, for example, 'Mail' in a different color)

    +  How to color the mouse pointer?
        I've tried all of the following, to no effect:

            Emacs*pointerBackgroundColor:	        Red
            Emacs*pointerForegroundColor:	        Red
            Emacs*pointerColorBackground:	        Red
            Emacs*pointerColorForeground:	        Red
            Emacs*pointerColor:	                Red

    +  How to set the screen name to the value of a variable?

            (setq my-screen-name "example")
            (x-create-screen '((name . my-screen-name)))
    
        just complains that my-screen-name is not a string.

Thanks for any help!

--tony

From help-lucid-emacs-request@lucid.com  Tue Sep 15 11:14:00 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA02201; Tue, 15 Sep 92 11:14:00 PDT
Received: by heavens-gate.lucid.com id AA19890g; Tue, 15 Sep 92 11:01:50 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA19884g; Tue, 15 Sep 92 11:01:35 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA18718; Tue, 15 Sep 92 11:11:37 PDT
Date: Tue, 15 Sep 92 11:11:37 PDT
Message-Id: <9209151811.AA18718@thalidomide.lucid>
X-Windows: It could happen to you.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: Tony.Bennett@East.Sun.COM (Tony E. Bennett)
Cc: help-lucid-emacs@lucid.com
Subject: Re: minor 19.3 problems
In-Reply-To: Tony E. Bennett's message of Tue 15-Sep-92 13:37:58 EST <9209151748.AA23796@sunpix.East.Sun.COM>
References: <9209151748.AA23796@sunpix.East.Sun.COM>

In message <9209151748.AA23796@sunpix.East.Sun.COM> Tony E. Bennett wrote:
>
>     +  how do I assign a command to C-2 (control 2)
>         Every thing I've tried has either complained that C-2 is
>         not printable or screwed up another key defn (notably C-R !)
> 
>             (global-set-key '(control 2) 'set-mark-command)
>             (global-set-key "\C-2" 'set-mark-command)

(global-set-key '(control \2) 'set-mark-command)

because 2 is an integer, which define-key interprets as ?\002, which is not
legal in this context.  \2 is a symbol: (symbol-name '\2) ==> "2".

>     +  How to color the mouse pointer?
...
>             Emacs*pointerColor:	                Red

This works for me.

>     +  How to set the screen name to the value of a variable?
> 
>             (setq my-screen-name "example")
>             (x-create-screen '((name . my-screen-name)))
>     
>         just complains that my-screen-name is not a string.

It's not.  (x-create-screen (list (cons 'name my-screen-name)))

	-- Jamie

From help-lucid-emacs-request@lucid.com  Tue Sep 15 12:12:14 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA02441; Tue, 15 Sep 92 12:12:14 PDT
Received: by heavens-gate.lucid.com id AA20052g; Tue, 15 Sep 92 11:57:18 PDT
Received: from ames.arc.nasa.gov by heavens-gate.lucid.com id AA20048g; Tue, 15 Sep 92 11:57:02 PDT
Received: from ra-iris9.arc.nasa.gov by ames.arc.nasa.gov with SMTP id AA05921
  (5.65c/IDA-1.4.4 for <@ames.arc.nasa.gov:help-lucid-emacs@lucid.com>); Tue, 15 Sep 1992 12:08:14 -0700
Received: by ra-iris9.arc.nasa.gov (911016.SGI/911001.SGI)
	for @ames.arc.nasa.gov:help-lucid-emacs@lucid.com id AA25492; Tue, 15 Sep 92 12:08:11 -0700
Date: Tue, 15 Sep 92 12:08:11 -0700
Message-Id: <9209151908.AA25492@ra-iris9.arc.nasa.gov>
From: David B. Serafini <serafini@ra-iris.arc.nasa.gov>
Sender: serafini@ra-iris9.arc.nasa.gov
To: help-lucid-emacs@lucid.com
Subject: questions about lemacs

Is there a way to get just the user manual for lemacs without ftp'ing
the whole tar file?  Is there an elisp manual update for lemacs?

Has anybody compiled it on an SGI under Irix 4.x?

Thanks.

-David

--
David B. Serafini			dbs@virgil.arc.nasa.gov
Rose Engineering and Research, Inc.	serafini@amelia.nas.nasa.gov
NASA/Ames Research Center MS 227-6	...!ames!amelia!serafini
Moffett Field, CA 94035-1000		(415)604-6233


From help-lucid-emacs-request@lucid.com  Tue Sep 15 14:22:01 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA02985; Tue, 15 Sep 92 14:22:01 PDT
Received: by heavens-gate.lucid.com id AA20486g; Tue, 15 Sep 92 14:09:59 PDT
Received: from relay2.UU.NET by heavens-gate.lucid.com id AA20478g; Tue, 15 Sep 92 14:09:40 PDT
Received: from uunet.uu.net (via LOCALHOST.UU.NET) by relay2.UU.NET with SMTP 
	(5.61/UUNET-internet-primary) id AA20496; Tue, 15 Sep 92 17:21:13 -0400
Received: from synaptx.UUCP by uunet.uu.net with UUCP/RMAIL
	(queueing-rmail) id 172051.9915; Tue, 15 Sep 1992 17:20:51 EDT
Received: from thymus.synaptics by synaptx.synaptics.com (4.1/SMI-4.1)
	id AA19697; Tue, 15 Sep 92 13:45:14 PDT
Received: by thymus.synaptics (4.1/SMI-4.1)
	id AA19718; Tue, 15 Sep 92 13:52:16 PDT
Message-Id: <9209152052.AA19718@thymus.synaptics>
To: help-lucid-emacs@lucid.com
Cc: uunet!asylum.cs.utah.edu!eeide@uunet.UU.NET (Eric Eide)
Subject: Re: Available Minibuffer Partial Completion Packages? 
In-Reply-To: Your message of "Tue, 15 Sep 92 09:07:43 MDT."
             <9209151507.AA17866@asylum.cs.utah.edu> 
Reply-To: daveg@synaptics.com
Date: Tue, 15 Sep 92 13:52:15 -0700
From: Dave Gillespie <daveg@thymus.synaptics.com>

Eric Eide writes:
> I generally use Dave Gillespie's "partial minibuffer completion" package for
> GNU Emacs, but my copy (version 1.05 beta) doesn't work within Lucid GNU Emacs.
> Has anybody adapted any of the partial completion packages to Lucid?

I have been really busy lately but I am finally finding the time to
port my Emacs packages to Lucid GNU Emacs.  My enhanced info.el,
with the same highlighting support as in Lucid's info.el plus all my
new features, will be ready in a few days.  I'll do the completer
sometime soon, although it's not quite as high a priority.

The big project is porting Calc.  Unfortunately there are still several
Emacs features that Calc uses heavily but that Lucid GNU Emacs doesn't
support, such as horizontally-split windows and horizontal scrolling.
At the moment I've just disabled all these features, but I'd like to
try to rethink them for the multi-screen context.  (For example, Keypad
Mode really ought to run on its own screen, so you can leave it up there
all the time.)  I'll keep you all posted---it probably won't be long
before there is a beta version ready to test.

								-- Dave

From help-lucid-emacs-request@lucid.com  Tue Sep 15 14:42:34 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA03043; Tue, 15 Sep 92 14:42:34 PDT
Received: by heavens-gate.lucid.com id AA20602g; Tue, 15 Sep 92 14:30:27 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA20586g; Tue, 15 Sep 92 14:29:52 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA19302; Tue, 15 Sep 92 14:39:56 PDT
Date: Tue, 15 Sep 92 14:39:56 PDT
Message-Id: <9209152139.AA19302@thalidomide.lucid>
X-Windows: The problem for your problem.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: daveg@synaptics.com
Cc: help-lucid-emacs@lucid.com
Subject: Re: Available Minibuffer Partial Completion Packages? 
In-Reply-To: Dave Gillespie's message of Tue 15-Sep-92 13:52:15 -0700 <9209152052.AA19718@thymus.synaptics>
References: <9209151507.AA17866@asylum.cs.utah.edu>
	<9209152052.AA19718@thymus.synaptics>

There's a working partial-completion package in lisp/ilisp/completer.el.
This is ccm's; I don't know what the difference is between his and daveg's.
I ported daveg's as well at one point but I can't find it now.  It only
took a couple of lines.

From help-lucid-emacs-request@lucid.com  Tue Sep 15 14:51:09 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA03064; Tue, 15 Sep 92 14:51:09 PDT
Received: by heavens-gate.lucid.com id AA20638g; Tue, 15 Sep 92 14:38:25 PDT
Received: from relay2.UU.NET by heavens-gate.lucid.com id AA20631g; Tue, 15 Sep 92 14:38:05 PDT
Received: from rational.rational.com (via [130.213.1.2]) by relay2.UU.NET with SMTP 
	(5.61/UUNET-internet-primary) id AA28464; Tue, 15 Sep 92 17:49:33 -0400
Received: from igor.Rational.COM by rational.rational.com (4.1/SMI-4.1)
	id AA11117; Tue, 15 Sep 92 14:50:17 PDT
Received: from rocky.Rational.COM by igor.Rational.COM (4.1/SMI-4.0)
	id AA08522; Tue, 15 Sep 92 14:49:01 PDT
Date: Tue, 15 Sep 92 14:49:01 PDT
From: carney@igor.rational.com (Mike Carney)
Message-Id: <9209152149.AA08522@igor.Rational.COM>
Received: by rocky.Rational.COM (4.1/SMI-4.1)
	id AA23895; Tue, 15 Sep 92 14:50:04 PDT
To: help-lucid-emacs@lucid.com
Subject: IBM RS6000

I'm trying to build lemacs on an RS6000. I've looked in the
$BUILD/etc/MACHINES file, and found that the 'm-' and 's-' files
should be: m-ibmrs6000.h; s-aix3-1.h. I can't seem to find these
anywhere in the source that I have. Could you send me a copy of them
so I can build this wonderful version of emacs on my RS6000? Thanks.

--
    Michael D. Carney
    email: carney@rational.com
    phone: 408-496-3790

From help-lucid-emacs-request@lucid.com  Tue Sep 15 15:37:38 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA03178; Tue, 15 Sep 92 15:37:38 PDT
Received: by heavens-gate.lucid.com id AA20803g; Tue, 15 Sep 92 15:22:39 PDT
Message-Id: <9209152222.AA20803@lucid.com>
Received: from spchp17.BBN.COM by heavens-gate.lucid.com id AA20797g; Tue, 15 Sep 92 15:22:12 PDT
Received: by spchp17.BBN.COM id AA06955g; Tue, 15 Sep 92 18:21:40 -0400
Site: 
To: help-lucid-emacs@lucid.com
Cc: jjd@spserv.bbn.com
Subject: New user finds bugs?  Or maybe I'm just confused.
Date: Tue, 15 Sep 92 18:21:39 EDT
From: James J Dempsey <jjd@spserv.bbn.com>

I've just started using Lucid Emacs for the first time.  I'm using
v19.3 on a HP9000/720 running HP-UX 8.07 using the modifications for
HP-UX posted to this list by hb@woody.csd.uu.se (Henrik B}kman CSD).
Note that this means I have compiled it without floating point support.

I like it a lot, but I have found a series of problems which I will
describe below.  Some of these may indeed be bugs which I will report
to the bug list if I am sure they are bugs.  Others may just be
confusions I have about the way Lucid Emacs works.  Most of them are
incompatibilities between Lucid Emacs and FSF Emacs 18.

I'd love to know whether I should report some of these as bugs, or if
I'm just confused.  Are there workarounds?

Thanks,

		--Jim Dempsey--
		jjd@bbn.com

* You can't have region selected in an other window 

    I use mh-e, the mh interface for Emacs.  When replying to a message,
    the draft you are composing is in one buffer and the message you are
    replying to is in another.  There is a command which inserts the
    selected part of the reply-to message in your draft.  It works great
    in Emacs 18.58, but with Lucid Emacs, there is no way to have a
    region in one window while your cursor is in the other.

* ^W^Y^W doesn't work

    In Emacs 18.58, If I kill a region with ^W and then yank it with ^Y
    the pasted region is selected.  I can then do a ^W to delete it again.
    In Lucid, yanked text isn't selected.

* I can't start it up in the background

    When I start lucid emacs in the background, it stops with
     "Stopped (tty output)".  If I then bring it to the foreground (it
    does no output) and then put it back in the background, it continues
    to function fine in the background.

* -geometry on the cmd line doesn't seem to override an Emacs*geometry
  resource in the resource database.

    In general, I thought that command line arguments should always
    override defaults in your resource database.

* When I start lucid emacs on my NCD X terminal at home, I get this message:

    emacs:  Alt_R (0x39) generates Mod1, which is generated by Meta.

        Two distinct modifier keys (such as Meta and Hyper) cannot generate
        the same modifier bit, because Emacs won't be able to tell which
        modifier was actually held down when some other key is pressed.  It
        won't be able to tell Meta-x and Hyper-x apart, for example.  Change
        one of these keys to use some other modifier bit.

        The meanings of the modifier bits Mod1 through Mod5 are determined
        by the keysyms used to control those bits.  Mod1 does NOT always
        mean Meta, although some non-ICCCM-compliant programs assume that.

    Unfortunately, this is exactly the behaviour I want.  I want Meta-x
    and Alt_R-x to be indistinguishable.  Interestingly, I never even
    mention Alt_R in my .xmodmaprc, just Meta_L and Meta_R.  It seems that
    lucid emacs is being too draconian in this regard.  Copies of my
    .xmodmaprc available on request, but the interesting lines are:
        keysym Caps_Lock = Meta_L
        add Mod1 = Meta_L Meta_R

* The mouse cursor changes to a watch on garbage collection and remains so

    On each GC, the mouse changes to a watch cursor, and remains so until
    the next time the mouse is moved.

* The SPACE key terminates an i-search-forward and self-inserts!!!

    When I type ^Sfoo<space> the <space> cancels the isearch and inserts
    itself in the buffer.  This is really annoying.  I mentioned this to
    someone on a Sun who uses Lucid emacs 19.3 and it doesn't happen to
    him, so it may be an HP-UX only bug.

* The visible bell doesn't work well

    I use (setq visible-bell t) in my .emacs file.  This mostly works fine
    in 18.58, but in Lucid Emacs, a subsequent bell appears to have the
    same effect as ^L.  The screen very briefly blanks, perhaps for 1/20th
    of a second, but it is hardly noticable.  I think it should flash some
    color on the screen or reverse video or something similar.

* Line continuation/truncation characters appear too soon

    Using the default font, a line with 79 characters on it in an 80
    character window displays without line continuation/truncation
    characters.  Using font 6x13, a 79 char line in an 80 char window is
    wrapped or truncated.  This is especially annoying when using
    something like mh-e, which specifically truncates message scan lines
    at 79 characters to avoid this problem.

* Autorepeat M-v acts differently than C-v and differently than 18.58

    If I hold C-v down so that it autorepeats, I see each page for a
    fraction of a second as it goes by. If I hold down M-v so it
    autorepeats, the display just freezes until I release the key at which
    time it goes to the place in the file many pages previous to which I
    have scrolled.  It is visually useful to see the pages going by so you
    know how far you have gone.  In any case, one would expect C-v and M-v
    to act similarly in this regard.

* The mh-e.el included with 19.3 is older than the one shipping with 18.58

* When replying to a message in mh-e, v18 can typeahead. V19 no typeahead.

    In emacs 18.58 with mh-e, I can issue a "reply to this message"
    command and start typing the reply even before the new draft buffer
    appears, a second later.  The characters I type appear in the new
    draft buffer.  In Lucid Emacs, there is no typeahead, those characters
    are dropped and don't appear to have gone anywhere.

*** end of report ***
   

From help-lucid-emacs-request@lucid.com  Tue Sep 15 16:54:46 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA03336; Tue, 15 Sep 92 16:54:46 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA21069g; Tue, 15 Sep 92 16:42:39 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA16436; Tue, 15 Sep 92 19:54:06 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA16432; Tue, 15 Sep 92 19:54:05 -0400
Path: uunet!dtix!darwin.sura.net!spool.mu.edu!agate!boulder!news!grunwald
From: grunwald@mumble.cs.colorado.edu (Dirk Grunwald)
Newsgroups: alt.lucid-emacs.help
Subject: tty 19.3
Message-Id: <GRUNWALD.92Sep15173645@mumble.cs.colorado.edu>
Date: 15 Sep 92 21:36:45 GMT
Reply-To: grunwald@foobar.cs.colorado.edu
Organization: University of Colorado at Boulder
Lines: 5
Nntp-Posting-Host: mumble.cs.colorado.edu
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


I notice that 19.3 can be started on a tty but crashes quickly.  Is
this a projected fix in 19.4 - i.e. will I be able to discard 18.58?

Thanks.

From help-lucid-emacs-request@lucid.com  Tue Sep 15 16:59:03 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA03349; Tue, 15 Sep 92 16:59:03 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA21089g; Tue, 15 Sep 92 16:46:22 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA16505; Tue, 15 Sep 92 19:57:50 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA16501; Tue, 15 Sep 92 19:57:48 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!cis.ohio-state.edu!magnus.acs.ohio-state.edu!usenet.ins.cwru.edu!agate!boulder!news!grunwald
From: grunwald@mumble.cs.colorado.edu (Dirk Grunwald)
Subject: Re: blink-paren function
In-Reply-To: jwz@lucid.com's message of Mon, 14 Sep 1992 20:03:28 PDT
Message-Id: <GRUNWALD.92Sep15174013@mumble.cs.colorado.edu>
Nntp-Posting-Host: mumble.cs.colorado.edu
Reply-To: grunwald@foobar.cs.colorado.edu
Organization: University of Colorado at Boulder
References: <192fu4INN3j4@early-bird.think.com> <47510@shamash.cdc.com>
	<47573@shamash.cdc.com> <9209150303.AA16539@thalidomide.lucid>
Date: 15 Sep 92 17:40:13
Lines: 22
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

>>>>> On Mon, 14 Sep 1992 20:03:28 PDT, jwz@lucid.com (Jamie Zawinski) said:
	...
JZ> You think this because you think of the cursor as being ON a character.
JZ> You have not truly discovered The Way.  
--

So, why not make the way a little more obvious and have the cursor be
an under-caret between letters. I.e.  someting like....


now is the time for a ll good
                     ^


Or have it be the text style cursor & use another cursor for the
normal mouse cursor style. I.e.

		     v
now is the time for a|ll good
                     ^

afterall, we *are* using bitmaps.

From help-lucid-emacs-request@lucid.com  Tue Sep 15 17:06:27 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA03367; Tue, 15 Sep 92 17:06:27 PDT
Received: by heavens-gate.lucid.com id AA21109g; Tue, 15 Sep 92 16:54:20 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA21105g; Tue, 15 Sep 92 16:52:36 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA19657; Tue, 15 Sep 92 17:02:40 PDT
Date: Tue, 15 Sep 92 17:02:40 PDT
Message-Id: <9209160002.AA19657@thalidomide.lucid>
X-Windows: Japan's secret weapon.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: grunwald@foobar.cs.colorado.edu
Cc: help-lucid-emacs@lucid.com
Subject: Re: blink-paren function
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Dirk Grunwald's message of  15-Sep-92 17:40:13  <GRUNWALD.92Sep15174013@mumble.cs.colorado.edu>
References: <192fu4INN3j4@early-bird.think.com>
	<47510@shamash.cdc.com>
	<47573@shamash.cdc.com>
	<9209150303.AA16539@thalidomide.lucid>
	<GRUNWALD.92Sep15174013@mumble.cs.colorado.edu>

There's a variable bar-cursor which makes the cursor be a (very thin and ugly)
bar cursor, but it doesn't really work any more.  I encourage someone to debug
it and make it pretty...

I think that bar cursors are bad because they're hard to see.  The advantage
of having a big block covering a character, even though it's only the left
edge of that block that is significant, is that it's easy to locate the cursor
without having to hunt for it.  

	-- Jamie

From help-lucid-emacs-request@lucid.com  Tue Sep 15 18:39:11 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA03577; Tue, 15 Sep 92 18:39:11 PDT
Received: by heavens-gate.lucid.com id AA21502g; Tue, 15 Sep 92 18:24:05 PDT
Received: from relay2.UU.NET by heavens-gate.lucid.com id AA21498g; Tue, 15 Sep 92 18:23:47 PDT
Received: from uunet.uu.net (via LOCALHOST.UU.NET) by relay2.UU.NET with SMTP 
	(5.61/UUNET-internet-primary) id AA20913; Tue, 15 Sep 92 21:35:17 -0400
Received: from synaptx.UUCP by uunet.uu.net with UUCP/RMAIL
	(queueing-rmail) id 213358.12277; Tue, 15 Sep 1992 21:33:58 EDT
Received: from thymus.synaptics by synaptx.synaptics.com (4.1/SMI-4.1)
	id AA20345; Tue, 15 Sep 92 18:02:59 PDT
Received: by thymus.synaptics (4.1/SMI-4.1)
	id AA19851; Tue, 15 Sep 92 18:10:02 PDT
Message-Id: <9209160110.AA19851@thymus.synaptics>
To: help-lucid-emacs@lucid.com
Cc: James J Dempsey <uunet!spserv.bbn.com!jjd@uunet.UU.NET>
Subject: Re: New user finds bugs? Or maybe I'm just confused. 
In-Reply-To: Your message of "Tue, 15 Sep 92 18:21:39 EDT."
             <9209152222.AA20803@lucid.com> 
Reply-To: daveg@synaptics.com
Date: Tue, 15 Sep 92 18:10:00 -0700
From: Dave Gillespie <daveg@thymus.synaptics.com>

> * ^W^Y^W doesn't work

The sequence C-x C-x C-x C-x (exchange-point-and-mark, twice) can be
used to re-enable the region.  This workaround is easy enough that I'd
vote for leaving C-y the way it is, not activating the yanked region,
just to reduce screen clutter.

> * The SPACE key terminates an i-search-forward and self-inserts!!!

This sounds like an interaction with auto-fill-mode.

>     emacs:  Alt_R (0x39) generates Mod1, which is generated by Meta.
>     Unfortunately, this is exactly the behaviour I want.  I want Meta-x
>     and Alt_R-x to be indistinguishable.

I agree here.  Lucid GNU Emacs needs to be more forgiving about this.
Does anybody know why lemacs checks this while other programs don't
seem to mind?

								-- Dave

From help-lucid-emacs-request@lucid.com  Tue Sep 15 18:49:40 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA03623; Tue, 15 Sep 92 18:49:40 PDT
Received: by heavens-gate.lucid.com id AA21534g; Tue, 15 Sep 92 18:37:17 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA21530g; Tue, 15 Sep 92 18:37:06 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA19981; Tue, 15 Sep 92 18:45:42 PDT
Date: Tue, 15 Sep 92 18:45:42 PDT
Message-Id: <9209160145.AA19981@thalidomide.lucid>
X-Windows: Power tools for power fools.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: daveg@synaptics.com
Cc: James J Dempsey <uunet!spserv.bbn.com!jjd@uunet.UU.NET>,
        help-lucid-emacs@lucid.com
Subject: Re: New user finds bugs? Or maybe I'm just confused. 
In-Reply-To: Dave Gillespie's message of Tue 15-Sep-92 18:10:00 -0700 <9209160110.AA19851@thymus.synaptics>
References: <9209152222.AA20803@lucid.com>
	<9209160110.AA19851@thymus.synaptics>

In message <9209160110.AA19851@thymus.synaptics> Dave Gillespie wrote:
>
>>     emacs:  Alt_R (0x39) generates Mod1, which is generated by Meta.
>>     Unfortunately, this is exactly the behaviour I want.  I want Meta-x
>>     and Alt_R-x to be indistinguishable.
> 
> I agree here.  Lucid GNU Emacs needs to be more forgiving about this.
> Does anybody know why lemacs checks this while other programs don't
> seem to mind?

Other programs do arbitrarily wrong things, because Xt contains no sanity
checks.  The X keyboard model is a complete mess that allows huge numbers of
ambiguities.  Meta and Alt are not the same "key".  They are distinguishable,
and thus should have different modifiers attached to them.

If you want two keys to act as "meta" then they should both have "meta"
keysyms attached to them.  You get this message when you have a Meta keysym
attached to one and an Alt keysym attached to the other.

I believe that emacs behaves exactly the same as Xt, the only difference
being that emacs complains when it sees a keyboard configuration that doesn't
make sense, and Xt does not.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Tue Sep 15 22:47:40 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA04086; Tue, 15 Sep 92 22:47:40 PDT
Received: by heavens-gate.lucid.com id AA21853g; Tue, 15 Sep 92 22:32:40 PDT
Received: from urmel.informatik.rwth-aachen.de by heavens-gate.lucid.com id AA21849g; Tue, 15 Sep 92 22:32:26 PDT
Received: from rwthi3.informatik.rwth-aachen.de (mozart.Informatik.RWTH-Aachen.DE) by urmel.informatik.rwth-aachen.de (4.1/urmel-MX.37)
	id AA21576; Wed, 16 Sep 92 07:43:18 +0200
Received: from haydn.informatik.rwth-aachen.de by rwthi3.informatik.rwth-aachen.de (4.1/SMI-4.1-i3)
	id AA15876; Wed, 16 Sep 92 07:42:58 +0200
Date: Wed, 16 Sep 92 07:42:58 +0200
From: norbert%rwthi3.informatik.rwth-aachen.de@lucid.com (Norbert Kiesel)
Message-Id: <9209160542.AA15876@rwthi3.informatik.rwth-aachen.de>
Received: by haydn.informatik.rwth-aachen.de (4.1/SMI-4.1)
	id AA00244; Wed, 16 Sep 92 07:43:38 +0200
To: help-lucid-emacs@lucid.com
Subject: Available Minibuffer Partial Completion Packages?
In-Reply-To: <9209151507.AA17866@asylum.cs.utah.edu>
References: <9209151507.AA17866@asylum.cs.utah.edu>

Eric Eide writes:
 > I generally use Dave Gillespie's "partial minibuffer completion" package for
 > GNU Emacs, but my copy (version 1.05 beta) doesn't work within Lucid GNU Emacs.
 > Has anybody adapted any of the partial completion packages to Lucid?  I know of
 > these packages:
 > 
 >   "complete.el" by Dave Gillespie (daveg@csvax.caltech.edu)
 >   "completer.el" by Chris McConnell (ccm@cs.cmu.edu)
 > 

I've ported complete.el version 1.03. If interested, I can post it.
The better way would be to port version 1.05 beta, I'll trying to get
my hands on it.

--

		so long

			Norbert


*******************************************************************************
* Norbert Kiesel	Institut f. Informatik III     NN       NN    KK   KK *
* RWTH Aachen           Ahornstr. 55  		       NNN      NN    KK  KK  *
* West Germany		D-5100 Aachen 		       NN N     NN    KK KK   *
*                       +49 241 80-7266		       NN  N    NN    KKKK    *
* 		                 		       NN   N   NN    KKKK    *
* EUNET:    norbert@rwthi3.uucp       		       NN    N  NN    KK KK   *
* USENET:   ...!mcvax!unido!rwthi3!norbert	       NN     N NN    KK  KK  *
* INTERNET: norbert@rwthi3.informatik.rwth-aachen.de   NN      NNN    KK   KK *
*******************************************************************************

From help-lucid-emacs-request@lucid.com  Tue Sep 15 22:56:31 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA04102; Tue, 15 Sep 92 22:56:31 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA21878g; Tue, 15 Sep 92 22:43:53 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA28628; Wed, 16 Sep 92 01:55:21 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA28624; Wed, 16 Sep 92 01:55:19 -0400
Path: uunet!spool.mu.edu!sdd.hp.com!think.com!barmar
From: barmar@think.com (Barry Margolin)
Newsgroups: alt.lucid-emacs.help
Subject: Re: New user finds bugs?  Or maybe I'm just confused.
Date: 16 Sep 1992 05:46:36 GMT
Organization: Thinking Machines Corporation, Cambridge MA, USA
Lines: 16
Message-Id: <196hnsINNnhe@early-bird.think.com>
References: <9209152222.AA20797@lucid.com>
Nntp-Posting-Host: gandalf.think.com
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <9209152222.AA20797@lucid.com> jjd@spserv.bbn.com (James J Dempsey) writes:
>* ^W^Y^W doesn't work

This is a consequence of the explicit region "enabling" feature of lemacs.
Only certain commands turn the region on.

Zwei, the Lisp Machine editor from which this feature (and many other
lemacs additions) is derived, has a special case for ^W after ^Y.  ^W
checks whether the previous command was ^Y, and ignores the region enabled
state if so.

-- 
Barry Margolin
System Manager, Thinking Machines Corp.

barmar@think.com          {uunet,harvard}!think!barmar

From help-lucid-emacs-request@lucid.com  Wed Sep 16 03:39:31 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA05136; Wed, 16 Sep 92 03:39:31 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA22208g; Wed, 16 Sep 92 03:24:26 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA02563; Wed, 16 Sep 92 06:35:54 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA02559; Wed, 16 Sep 92 06:35:52 -0400
Path: uunet!mcsun!corton!seti!margaux.inria.fr!murthy
From: murthy%margaux.inria.fr@lucid.com (Chet Murthy)
Newsgroups: alt.lucid-emacs.help
Subject: map-extents
Message-Id: <4228@seti.UUCP>
Date: 16 Sep 92 09:43:31 GMT
Organization: INRIA Rocquencourt,Le Chesnay, France.
Lines: 38
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I'm trying to use extents to for two purposes - first, to mark regions
of text to which I attach side-infomation, and second, for
highlighting and such.

The problem is, the highlight-extents created by, for instance,
mode-motion, can overlap with the extents which I use to carry
side-info.  And unfortunately, there doesn't seem to be a way to get
ahold of all extents which overlap a region.  At least, it doesn't
seem like map-extents works.

To reproduce, drop the following text into your scratch buffer, and
execute the elisp commands one by one.  The last series of
next-extents verifies that indeed, there are lots of extents in the
buffer.

Any idea what's going on?

Thanks,
--chet--
-------------------------cut from here-------------------------
012345678901234567890123456789


(setq *e1* (make-extent 1 11))
(setq *e2* (make-extent 5 16))
(setq *e3* (make-extent 11 20))

  (let (elist)
    (map-extents
     (function (lambda (e unused)
                 (y-or-n-p (prin1-to-string e))))
     (current-buffer) (point-min) (point-max))
    elist)

(extent-at (point-min))
(next-extent (extent-at (point-min)))
(next-extent (next-extent (extent-at (point-min))))
(next-extent (next-extent (next-extent (extent-at (point-min)))))

From help-lucid-emacs-request@lucid.com  Wed Sep 16 08:36:01 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA05963; Wed, 16 Sep 92 08:36:01 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA22600g; Wed, 16 Sep 92 08:23:34 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA26280; Wed, 16 Sep 92 11:35:00 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA26274; Wed, 16 Sep 92 11:34:58 -0400
Path: uunet!mcsun!corton!seti!margaux.inria.fr!murthy
From: murthy%margaux.inria.fr@lucid.com (Chet Murthy)
Newsgroups: alt.lucid-emacs.help
Subject: Re: map-extents
Message-Id: <4230@seti.UUCP>
Date: 16 Sep 92 15:29:14 GMT
References: <4228@seti.UUCP>
Organization: INRIA Rocquencourt,Le Chesnay, France.
Lines: 17
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <4228@seti.UUCP> murthy@margaux.inria.fr (Chet Murthy) writes:
>I'm trying to use extents to for two purposes - first, to mark regions
>of text to which I attach side-infomation, and second, for
>highlighting and such.
>
>The problem is, the highlight-extents created by, for instance,
>mode-motion, can overlap with the extents which I use to carry
>side-info.  And unfortunately, there doesn't seem to be a way to get
>ahold of all extents which overlap a region.  At least, it doesn't
>seem like map-extents works.

Whups!  I found the problem - the map-extents call is terminated when
the function passed to it returns something other than nil.

Other than that, it works as advertised.

--chet--

From help-lucid-emacs-request@lucid.com  Wed Sep 16 15:42:38 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA07264; Wed, 16 Sep 92 15:42:38 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA24009g; Wed, 16 Sep 92 15:30:19 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA26539; Wed, 16 Sep 92 18:41:48 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA26535; Wed, 16 Sep 92 18:41:46 -0400
Path: uunet!mcsun!uknet!edcastle!edcogsci!cogsci!rjc
From: rjc@cogsci.ed.ac.uk (Richard Caley)
Newsgroups: alt.lucid-emacs.help
Subject: Gnuserv.
Message-Id: <RJC.92Sep16232151@daiches.cogsci.ed.ac.uk>
Date: 16 Sep 92 22:21:51 GMT
Distribution: alt
Organization: Human Communication Research Center
Lines: 14
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


Has anyone had a go at making gnuserv.el work nicely with lucid-emacs?
I was thinking of making server edits start up a new screen etc.

If someone else has donw it I'll pinch theirs, being lazy.

I have hacked gnuserv to use X `MIT-MAGIC-COOKIE-1' authorisation
which should make the resulting system almost useable.

--
rjc@cogsci.ed.ac.uk	Nope, we'll never pull out of the ERM, not
			never, not no-how, read my lips, no floating
			exchange rates, on my grannie's grave,
			no-sir,... 

From help-lucid-emacs-request@lucid.com  Wed Sep 16 16:30:04 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA07399; Wed, 16 Sep 92 16:30:04 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA24106g; Wed, 16 Sep 92 16:15:01 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA28950; Wed, 16 Sep 92 19:26:30 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA28944; Wed, 16 Sep 92 19:26:28 -0400
Path: uunet!olivea!sgigate!odin!fido!shankar
From: shankar@wpd.sgi.com (Shankar Unni)
Newsgroups: alt.lucid-emacs.help
Subject: Separate minibuffer, screen-per-buffer...
Message-Id: <pugub50@fido.asd.sgi.com>
Date: 16 Sep 92 23:19:49 GMT
Organization: Silicon Graphics, Inc.
Lines: 35
X-Newsreader: Tin 1.1 PL5
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I'm trying to get the following things to work in Lucid Emacs:

  - Separate (detached) minibuffer.

    There is an interesting comment in screen.el, where the call to
    "detached-minibuffer-startup" is commented out, saying that it
    "crashes too much". Sure enough, when I uncommented it and set
    separate-minibuffer-startup to "t", lemacs died before putting up
    the first screen, with a lisp message:


	Error in window-setup-hook: Wrong type argument: stringp, only

    Has anyone got this to work? If not, when is it expected to become
    functional?

    WIBNI: It would be *real* *nice* if the choice of a detached
	   minibuffer did not have to be dumped into the executable.

	   If "pop-initial-screen" could look at some environment
	   variable and call "detached-" or "multi-minibuffer-startup"
	   appropriately, that would be dandy..

  - One screen per buffer (one-to-one) automatically.

    There seem to be hooks in get-screen-for-buffer to do this, but it
    seems to be tied to major-modes (i.e. I'd have to set up a
    property for every major-mode I'm likely to be interested in).

    Isn't there a simpler way to do this?

I'd appreciate any help..
--
Shankar Unni				E-Mail:	shankar@sgi.com
Silicon Graphics Inc.			Phone:	+1-415-390-2072

From help-lucid-emacs-request@lucid.com  Thu Sep 17 05:19:08 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA09368; Thu, 17 Sep 92 05:19:08 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA25229g; Thu, 17 Sep 92 05:05:23 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA17103; Thu, 17 Sep 92 08:16:45 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA17099; Thu, 17 Sep 92 08:16:42 -0400
Path: uunet!dtix!darwin.sura.net!wupost!sdd.hp.com!nigel.msen.com!caen!news.cs.indiana.edu!lynx!unmvax!cs.sandia.gov!gdsjaar
From: gdsjaar@sandia.gov (Gregory D. Sjaardema)
Newsgroups: alt.lucid-emacs.help
Subject: Problem with Info popup menu
Message-Id: <1992Sep16.212414.20205@cs.sandia.gov>
Date: 16 Sep 92 21:24:14 GMT
Distribution: usa
Organization: Sandia National Laboratories
Lines: 15
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I have recently installed Lucid Emacs v19.3 on a HP750 running 
HPUX-8.07.  We were running v19.2 previously with no major problems.
Now, when I enter the info mode, the popup-menu (button 3) does not
behave properly.  What happens is that whichever node is highlighted
when I select button3 appears as the first entry in the popup as it
is supposed to.  However, it is never updated as I visit other nodes
or move to highlight another entry.  Also, the next node, previous node
parent node, and Sub-Nodes entries are not updated.

It appears to me that once the menu is created, it is no longer updated.
All of this worked (and still works) on lemacs v19.2

Any and all help would be appreciated.

Greg Sjaardema, gdsjaar@sandia.gov

From help-lucid-emacs-request@lucid.com  Thu Sep 17 06:47:07 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA09596; Thu, 17 Sep 92 06:47:07 PDT
Received: by heavens-gate.lucid.com id AA25332g; Thu, 17 Sep 92 06:34:46 PDT
Received: from urmel.informatik.rwth-aachen.de by heavens-gate.lucid.com id AA25328g; Thu, 17 Sep 92 06:34:13 PDT
Received: from rwthi3.informatik.rwth-aachen.de (mozart.Informatik.RWTH-Aachen.DE) by urmel.informatik.rwth-aachen.de (4.1/urmel-MX.37)
	id AA08351; Thu, 17 Sep 92 15:44:56 +0200
Received: from haydn.informatik.rwth-aachen.de by rwthi3.informatik.rwth-aachen.de (4.1/SMI-4.1-i3)
	id AA19086; Thu, 17 Sep 92 15:45:11 +0200
Date: Thu, 17 Sep 92 15:45:11 +0200
From: norbert%rwthi3.informatik.rwth-aachen.de@lucid.com (Norbert Kiesel)
Message-Id: <9209171345.AA19086@rwthi3.informatik.rwth-aachen.de>
Received: by haydn.informatik.rwth-aachen.de (4.1/SMI-4.1)
	id AA00867; Thu, 17 Sep 92 15:45:17 +0200
To: help-lucid-emacs@lucid.com
Subject: complete-1.05beta.el for Lucid Emacs

Hello,
as I got this version, I made the trivial changes and post it now!
Happy completion.

P.S.: all want scrollbars, but when will they be available?

so long

	Norbert

;; Partial completion mechanism for GNU Emacs.  Version 1.05 (beta).
;; Copyright (C) 1990 Dave Gillespie, daveg@csvax.caltech.edu.
;; Special thanks to Hallvard Furuseth for his many ideas and contributions.
;;
;; This file has been modified by Eric Eide (eeide@cs.utah.edu).
;;
;; + April 17, 1992.  I changed the definition of PC-is-complete-p.  The new
;;   definition fixes a bug that occurs when a predicate is specified but the
;;   string is not in the (association list) table.  (This bug is tickled by
;;   Sebastian Kremer's "gmhist" package.)
;;
;; More modifications by Norbert Kiesel (norbert@informatik.rwth-aachen.de):
;;
;; + September 17, 1992. Changes for Lucid-Emacs: A new function
;;   (PC-original-complete ()) which tests whether to use the original
;;   or the completing functions. Also changed the
;;   (setq unread-command-char 7) to
;;   (setq unread-command-event (character-to-event 7)).


;; This file is part of GNU Emacs.

;; GNU Emacs is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY.  No author or distributor
;; accepts responsibility to anyone for the consequences of using it
;; or for whether it serves any particular purpose or works at all,
;; unless he says so in writing.  Refer to the GNU Emacs General Public
;; License for full details.

;; Everyone is granted permission to copy, modify and redistribute
;; GNU Emacs, but only under the conditions described in the
;; GNU Emacs General Public License.   A copy of this license is
;; supposed to have been given to you along with GNU Emacs so you
;; can know your rights and responsibilities.  It should be in a
;; file named COPYING.  Among other things, the copyright notice
;; and this notice must be preserved on all copies.


;; Extended completion for the Emacs minibuffer.
;;
;; The basic idea is that the command name or other completable text is
;; divided into words and each word is completed separately, so that
;; "M-x p-b" expands to "M-x print-buffer".  If the entry is ambiguous
;; each word is completed as much as possible and then the cursor is
;; left at the first position where typing another letter will resolve
;; the ambiguity.
;;
;; Word separators for this purpose are hyphen, space, and period.
;; These would most likely occur in command names, Info menu items,
;; and file names, respectively.  But all word separators are treated
;; alike at all times.
;;
;; This completion package installs itself on Meta- key sequences by
;; default, but many people prefer to replace the old-style completer
;; outright.  You can do this by setting PC-meta-flag as described below.


;; Usage:  Load this file.  Now, during completable minibuffer entry,
;;
;;     M-TAB    means to do a partial completion;
;;     M-SPC    means to do a partial complete-word;
;;     M-RET    means to do a partial complete-and-exit;
;;     M-?      means to do a partial completion-help.
;;
;; If you set PC-meta-flag non-nil, then TAB, SPC, RET, and ? perform
;; these functions, and M-TAB etc. perform original Emacs completion.
;; To do this, put the command,
;;
;;       (setq PC-meta-flag t)
;;
;; in your .emacs file.  To load partial completion automatically, put
;;
;;       (load "complete")
;;
;; in your .emacs file, too.  Things will be faster if you byte-compile
;; this file when you install it.
;;
;; As an extra feature, in cases where RET would not normally
;; complete (such as `C-x b'), the M-RET key will always do a partial
;; complete-and-exit.  Thus `C-x b f.c RET' will select or create a
;; buffer called "f.c", but `C-x b f.c M-RET' will select the existing
;; buffer whose name matches that pattern (perhaps "filing.c").
;; (PC-meta-flag does not affect this behavior; M-RET used to be
;; undefined in this situation.)


(defvar PC-meta-flag nil
  "*If nil, TAB does normal Emacs completion and M-TAB does Partial Completion.
If t, TAB does Partial Completion and M-TAB does normal completion.")


(defvar PC-word-delimiters "-. "
  "*A string of characters which are to be treated as word delimiters
by the Partial Completion system.

Some arcane rules:  If `]' is in this string it must come first.
If `^' is in this string it must NOT come first.  If `-' is in this
string, it must come first or right after `]'.  In other words, if
S is this string, then `[S]' must be a legal Emacs regular expression
(not containing character ranges like `a-z').")


(defvar PC-first-char 'x
  "*If t, first character of a string to be completed is always taken literally.
If nil, word delimiters are handled even if they appear as first character.
This controls whether \".e\" matches \".e*\" (t) or \"*.e*\" (nil).
If neither nil nor t, first char is literal only for filename completion.")


(defvar PC-default-bindings t
  "Set this to nil to suppress the default partial completion key bindings.")

(if PC-default-bindings (progn
(define-key minibuffer-local-completion-map "\t" 'PC-complete)
(define-key minibuffer-local-completion-map " "  'PC-complete-word)
(define-key minibuffer-local-completion-map "?"  'PC-completion-help)

(define-key minibuffer-local-completion-map "\e\t" 'PC-complete)
(define-key minibuffer-local-completion-map "\e "  'PC-complete-word)
(define-key minibuffer-local-completion-map "\e\r" 'PC-force-complete-and-exit)
(define-key minibuffer-local-completion-map "\e\n" 'PC-force-complete-and-exit)
(define-key minibuffer-local-completion-map "\e?"  'PC-completion-help)

(define-key minibuffer-local-must-match-map "\t" 'PC-complete)
(define-key minibuffer-local-must-match-map " "  'PC-complete-word)
(define-key minibuffer-local-must-match-map "\r" 'PC-complete-and-exit)
(define-key minibuffer-local-must-match-map "\n" 'PC-complete-and-exit)
(define-key minibuffer-local-must-match-map "?"  'PC-completion-help)

(define-key minibuffer-local-must-match-map "\e\t" 'PC-complete)
(define-key minibuffer-local-must-match-map "\e "  'PC-complete-word)
(define-key minibuffer-local-must-match-map "\e\r" 'PC-complete-and-exit)
(define-key minibuffer-local-must-match-map "\e\n" 'PC-complete-and-exit)
(define-key minibuffer-local-must-match-map "\e?"  'PC-completion-help)
))


(defun PC-complete ()
  "Like minibuffer-complete, but allows \"b--di\"-style abbreviations.
For example, \"M-x b--di\" would match \"byte-recompile-directory\", or any
name which consists of three or more words, the first beginning with \"b\"
and the third beginning with \"di\".

The pattern \"b--d\" is ambiguous for \"byte-recompile-directory\" and
\"beginning-of-defun\", so this would produce a list of completions
just like when normal Emacs completions are ambiguous.

Word-delimiters for the purposes of Partial Completion are \"-\", \".\", and SPC."
  (interactive)
  (if (PC-original-complete)
      (minibuffer-complete)
    (PC-do-completion nil))
)


(defun PC-complete-word ()
  "Like minibuffer-complete-word, but allows \"b--di\"-style abbreviations.
See PC-complete for details."
  (interactive)
  (if (PC-original-complete)
      (if (= last-command-char ? )
	  (minibuffer-complete-word)
	(self-insert-command 1))
    (self-insert-command 1)
    (if (eobp)
	(PC-do-completion 'word)))
)


(defun PC-complete-and-exit ()
  "Like minibuffer-complete-and-exit, but allows \"b--di\"-style abbreviations.
See PC-complete for details."
  (interactive)
  (if (PC-original-complete)
      (minibuffer-complete-and-exit)
    (PC-do-complete-and-exit))
)

(defun PC-force-complete-and-exit ()
  "Like minibuffer-complete-and-exit, but allows \"b--di\"-style abbreviations.
See PC-complete for details."
  (interactive)
  (let ((minibuffer-completion-confirm nil))
    (PC-do-complete-and-exit))
)

(defun PC-do-complete-and-exit ()
  (if (= (buffer-size) 0)  ; Duplicate the "bug" that Info-menu relies on...
      (exit-minibuffer)
    (let ((flag (PC-do-completion 'exit)))
      (and flag
	   (if (or (eq flag 'complete)
		   (not minibuffer-completion-confirm))
	       (exit-minibuffer)
	     (temp-minibuffer-message " (Confirm)")))))
)


(defun PC-completion-help ()
  "Like minibuffer-completion-help, but allows \"b--di\"-style abbreviations.
See PC-complete for details."
  (interactive)
  (if (PC-original-complete)
      (minibuffer-completion-help)
    (PC-do-completion 'help))
)


(defun PC-do-completion (&optional mode)
  (let* ((table minibuffer-completion-table)
	 (pred minibuffer-completion-predicate)
	 (filename (eq table 'read-file-name-internal))
	 (dirname nil)
	 (str (buffer-string))
	 basestr
	 regex
	 p offset
	 (poss nil)
	 helpposs
	 (case-fold-search completion-ignore-case))

    ;; Check if buffer contents can already be considered complete
    (if (and (eq mode 'exit)
	     (PC-is-complete-p str table pred))
	'complete

      ;; Do substitutions in directory names
      (and filename
	   (not (equal str (setq p (substitute-in-file-name str))))
	   (progn
	     (erase-buffer)
	     (insert p)
	     (setq str p)))

      ;; Strip directory name if appropriate
      (if filename
	  (setq basestr (file-name-nondirectory str)
		dirname (file-name-directory str))
	(setq basestr str))

      ;; Prepare various delimiter strings
      (or (equal PC-word-delimiters PC-delims)
	  (setq PC-delims PC-word-delimiters
		PC-delim-regex (concat "[" PC-delims "]")
		PC-ndelims-regex (concat "[^" PC-delims "]*")
		PC-delims-list (append PC-delims nil)))

      ;; Convert search pattern to a standard regular expression
      (setq regex (regexp-quote basestr)
	    offset (if (and (> (length regex) 0)
			    (or (eq PC-first-char t)
				(and PC-first-char filename))) 1 0)
	    p offset)
      (while (setq p (string-match PC-delim-regex regex p))
	(if (eq (aref regex p) ? )
	    (setq regex (concat (substring regex 0 p)
				PC-ndelims-regex
				PC-delim-regex
				(substring regex (1+ p)))
		  p (+ p (length PC-ndelims-regex) (length PC-delim-regex)))
	  (let ((bump (if (memq (aref regex p)
				'(?$ ?^ ?\. ?* ?+ ?? ?[ ?] ?\\))
			  -1 0)))
	    (setq regex (concat (substring regex 0 (+ p bump))
				PC-ndelims-regex
				(substring regex (+ p bump)))
		  p (+ p (length PC-ndelims-regex) 1)))))
      (setq regex (concat "\\`" regex))

      ;; Find an initial list of possible completions
      (if (not (setq p (string-match PC-delim-regex str
				     (+ (length dirname) offset))))

	  ;; Minibuffer contains no hyphens -- simple case!
	  (setq poss (all-completions str
				      table
				      pred))

	;; Use all-completions to do an initial cull.  This is a big win,
	;; since all-completions is written in C!
	(let ((compl (all-completions (substring str 0 p)
				      table
				      pred)))
	  (setq p compl)
	  (while p
	    (and (string-match regex (car p))
		 (setq poss (cons (car p) poss)))
	    (setq p (cdr p)))))

      ;; Now we have a list of possible completions
      (cond

       ;; No valid completions found
       ((null poss)
	(if (and (eq mode 'word)
		 (not PC-word-failed-flag))
	    (let ((PC-word-failed-flag t))
	      (delete-backward-char 1)
	      (PC-do-completion 'word))
	  (beep)
	  (temp-minibuffer-message (if (eq mode 'help)
				       " (No completions)"
				     " (No match)"))
	  nil))

       ;; More than one valid completion found
       ((or (cdr (setq helpposs poss))
	    (memq mode '(help word)))

	;; Handle completion-ignored-extensions
	(and filename
	     (not (eq mode 'help))
	     (let ((p2 poss))

	       ;; Build a regular expression representing the extensions list
	       (or (equal completion-ignored-extensions PC-ignored-extensions)
		   (setq PC-ignored-regexp
			 (concat "\\("
				 (mapconcat
				  'regexp-quote
				  (setq PC-ignored-extensions
					completion-ignored-extensions)
				  "\\|")
				 "\\)\\'")))

	       ;; Check if there are any without an ignored extension
	       (setq p nil)
	       (while p2
		 (or (string-match PC-ignored-regexp (car p2))
		     (setq p (cons (car p2) p)))
		 (setq p2 (cdr p2)))

	       ;; If there are "good" names, use them
	       (and p (setq poss p))))

	;; Is the actual string one of the possible completions?
	(setq p (and (not (eq mode 'help)) poss))
	(while (and p
		    (not (equal (car p) basestr)))
	  (setq p (cdr p)))
	(if p

	    (progn
	      (if (null mode)
		  (temp-minibuffer-message " (Complete, but not unique)"))
	      t)

	  ;; If ambiguous, try for a partial completion
	  (let ((improved nil)
		prefix
		(pt nil)
		(skip "\\`"))

	    ;; Check if next few letters are the same in all cases
	    (if (and (not (eq mode 'help))
		     (setq prefix (try-completion "" (mapcar 'list poss))))
		(let (i)
		  (if (eq mode 'word)
		      (setq prefix (PC-chop-word prefix basestr)))
		  (goto-char (+ (point-min) (length dirname)))
		  (while (and (progn
				(setq i 0)
				(while (< i (length prefix))
				  (if (eq (aref prefix i) (following-char))
				      (forward-char 1)
				    (if (or (and (looking-at " ")
						 (memq (aref prefix i)
						       PC-delims-list))
					    (eq (downcase (aref prefix i))
						(downcase (following-char))))
					(delete-char 1)
				      (setq improved t))
				    (insert (substring prefix i (1+ i))))
				  (setq i (1+ i)))
				(or pt (equal (point) (point-min))
				    (setq pt (point)))
				(looking-at PC-delim-regex))
			      (not (eq mode 'word))
			      (setq skip (concat skip
						 (regexp-quote prefix)
						 PC-ndelims-regex)
				    prefix (try-completion
					    ""
					    (mapcar
					     (function
					      (lambda (x)
						(list
						 (and (string-match skip x)
						      (substring
						       x
						       (match-end 0))))))
					     poss)))
			      (or (> i 0) (> (length prefix) 0))))
		  (goto-char (if (eq mode 'word) (point-max)
			       (or pt (point-min))))))

	    (if (and (eq mode 'word)
		     (not PC-word-failed-flag))

		(if improved

		    ;; We changed it... would it be complete without the space?
		    (if (PC-is-complete-p (buffer-substring 1 (1- (point-max)))
					  table pred)
			(delete-region (1- (point-max)) (point-max))))

	      (if improved

		  ;; We changed it... enough to be complete?
		  (and (eq mode 'exit)
		       (PC-is-complete-p (buffer-string) table pred))

		;; If totally ambiguous, display a list of completions
		(if (or completion-auto-help
			(eq mode 'help))
		    (with-output-to-temp-buffer " *Completions*"
		      (display-completion-list (sort helpposs 'string-lessp)))
		  (temp-minibuffer-message " (Next char not unique)"))
		nil)))))

       ;; Only one possible completion
       (t
	(if (equal basestr (car poss))
	    (if (null mode)
		(temp-minibuffer-message " (Sole completion)"))
	  (erase-buffer)
	  (insert (if filename
		      (substitute-in-file-name (concat dirname (car poss)))
		    (car poss))))
	t))))
)
(setq PC-ignored-extensions 'empty-cache)
(setq PC-delims 'empty-cache)
(setq PC-word-failed-flag nil)


;; ENE: This is my new version of PC-is-complete-p.

(defun PC-is-complete-p (str table pred)
  (let ((res (if (listp table)
		 (assoc str table)
	       (if (vectorp table)
		   (or (equal str "nil")   ; heh, heh, heh
		       (intern-soft str table))
		 (funcall table str pred 'lambda)))))
    (and (or (not pred)
	     (and (not (listp table)) (not (vectorp table)))
	     (and res (funcall pred res)))
	 res)))

;; This is the original version.
;;
;; (defun PC-is-complete-p (str table pred)
;;   (let ((res (if (listp table)
;;                  (assoc str table)
;;                (if (vectorp table)
;;                    (or (equal str "nil")   ; heh, heh, heh
;;                        (intern-soft str table))
;;                  (funcall table str pred 'lambda)))))
;;     (and (or (not pred)
;;              (and (not (listp table)) (not (vectorp table)))
;;              (funcall pred res))
;;          res))
;; )

(defun PC-chop-word (new old)
  (let ((i -1)
	(j -1))
    (while (and (setq i (string-match PC-delim-regex old (1+ i)))
		(setq j (string-match PC-delim-regex new (1+ j)))))
    (if (and j
	     (or (not PC-word-failed-flag)
		 (setq j (string-match PC-delim-regex new (1+ j)))))
	(substring new 0 (1+ j))
      new))
)

(defun temp-minibuffer-message (m)
  "A Lisp version of temp_minibuffer_message from minibuf.c."
  (let ((savemax (point-max)))
    (save-excursion
      (goto-char (point-max))
      (insert m))
    (let ((inhibit-quit t))
      (sit-for 2)
      (delete-region savemax (point-max))
      (if quit-flag
	  (setq quit-flag nil
		unread-command-event (character-to-event 7)))))
)

(defun PC-original-complete ()
  (eq (equal (event-modifiers (aref (this-command-keys) 0)) '(meta))
      PC-meta-flag))

From help-lucid-emacs-request@lucid.com  Thu Sep 17 09:03:53 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA10112; Thu, 17 Sep 92 09:03:53 PDT
Received: by heavens-gate.lucid.com id AA25604g; Thu, 17 Sep 92 08:51:27 PDT
Received: from uu3.psi.com by heavens-gate.lucid.com id AA25600g; Thu, 17 Sep 92 08:51:10 PDT
Received: from bacon.UUCP by uu3.psi.com (5.65b/4.0.071791-PSI/PSINet)
	id AA07122; Thu, 17 Sep 92 12:02:23 -0400
Received: from yen.moore by bacon.IMSI.COM (4.1/SMI-4.1)
	id AA18698; Thu, 17 Sep 92 11:10:14 EDT
Date: Thu, 17 Sep 92 11:10:14 EDT
From: chris@imsi.com (Chris Payne)
Message-Id: <9209171510.AA18698@IMSI.COM>
Received: by yen.moore (4.1/SMI-4.1)
	id AA08978; Thu, 17 Sep 92 11:09:52 EDT
To: help-lucid-emacs@lucid.com
Subject: twm patches to handle lemacs's focus behaviour
In-Reply-To: <9209171345.AA19086@rwthi3.informatik.rwth-aachen.de>
References: <9209171345.AA19086@rwthi3.informatik.rwth-aachen.de>


Did I see a patch to twm around here?  One which handles lemacs's
uncomfortable focus-grabbing behaviour...  Could someone point me in
the right direction?

/c (chris@IMSI.COM, chris payne in NYC)

From help-lucid-emacs-request@lucid.com  Thu Sep 17 18:27:14 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01856; Thu, 17 Sep 92 18:27:14 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA00323g; Thu, 17 Sep 92 18:14:39 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA04738; Thu, 17 Sep 92 21:26:00 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA04734; Thu, 17 Sep 92 21:25:58 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!paladin.american.edu!darwin.sura.net!zaphod.mps.ohio-state.edu!pacific.mps.ohio-state.edu!linac!att!cbnewse!cbnewsd!att-out!pacbell.com!decwrl!pa.dec.com!nntpd2.cxo.dec.com!nntpd.lkg.dec.com!dash.lmo.dec.com!tatlow
From: tatlow@athena.lmo.dec.com (Tom Tatlow)
Subject: More problems with 19.3 on a DECstation 
Message-Id: <1992Sep17.200749.29018@nntpd.lkg.dec.com>
Lines: 54
Reply-To: tatlow@athena.lmo.dec.com
Organization: Digital Equipment Corporation, AI Technology Center
Date: Thu, 17 Sep 1992 20:07:49 GMT
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


I'm having trouble compiling lemacs-19.3 on a DECstation.

I finally got the program to link, but now I can't get it to run.  I'm
on a DECstation 5000 running ULTRIX V4.2A, and I'm compiling using gcc 2.2.2

I am using the GNU malloc (!)


dash% gdb xemacs 
(gdb) run
Starting program: /dec/gnu/src/lemacs-19.3/src/xemacs

Program received signal 11, Segmentation fault
strlen () at ../strlen.c:36
./strlen.c:36: No such file or directory.
(gdb) where
#0  strlen () at ../strlen.c:36
#1  0x4c1994 in _popup_set_prop (w=0x1010d610) at EmacsShell.c:395
#2  0x4c15a4 in emacsShellRealize (wid=0x1010d610, vmask=0x7fffa044,
    attr=0x7fffa008) at EmacsShell.c:319
#3  0x55ef4c in RealizeWrapper () at Vendor.c:719
#4  0x55ec00 in RealizeWrapper3 () at Vendor.c:530
#5  0x572848 in RealizeWidget () at Intrinsic.c:215
#6  0x572ab8 in XtRealizeWidget () at Intrinsic.c:263
(etc.)

The problem seems to be in EmacsShell.c:

391:	if (XtIsTopLevelShell((Widget)w)) {
392:	    icon_name.value = (unsigned char*)tlshell->topLevel.icon_name;
393:	    icon_name.encoding = tlshell->topLevel.icon_name_encoding;
394:	    icon_name.format = 8;
395:	    icon_name.nitems = strlen((char *) icon_name.value) + 1;
396:	}

It looks like it's getting a NULL value for icon_name.value and so
strlen is dying.  Have any other DECstation users seen this problem?

T?




==================================================================
  	    Tom Tatlow	    "The Question"

    Work:  Digital Equipment Corporation, AI Technology Center
           tatlow@athena.lmo.dec.com         (508) 480-5397

    Home:  Post Office Box 1035, Berlin, MA 01503
           tom@math.mit.edu                  (617) 876-6216

==================================================================

From help-lucid-emacs-request@lucid.com  Fri Sep 18 06:01:01 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA03758; Fri, 18 Sep 92 06:01:01 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA01623g; Fri, 18 Sep 92 05:49:05 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA20536; Fri, 18 Sep 92 09:00:29 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA20532; Fri, 18 Sep 92 09:00:23 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!usc!sdd.hp.com!spool.mu.edu!news.nd.edu!news.cs.indiana.edu!att!cbnewsk!cbnewsj!cbnewsj!mah
From: mah@fjmah.att.com (Mark Hargrove)
Subject: Any fixes for outline-mode in lucid?
Organization: AT&T Bell Labs, Freehold, NJ
Distribution: alt
Date: Fri, 18 Sep 1992 13:37:16 GMT
Message-Id: <MAH.92Sep18083716@fjmah.att.com>
Nntp-Posting-Host: fjmah.fj.att.com
Lines: 16
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Hello,

outline-mode doesn't seem to work in lucid-19.3.

instead of "..." showing up, the lines have ^M's in the middle
(lines are not hidden, they're appended).

Does anyone have a fix?

Sorry if this is a FAQ, I couldn't find any docs.

--

Mark Hargrove
AT&T Bell Labs
mah@fjtlb.att.com

From help-lucid-emacs-request@lucid.com  Fri Sep 18 06:50:00 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA03899; Fri, 18 Sep 92 06:50:00 PDT
Received: by heavens-gate.lucid.com id AA01684g; Fri, 18 Sep 92 06:38:28 PDT
Received: from mitchell.cit.cornell.edu by heavens-gate.lucid.com id AA01680g; Fri, 18 Sep 92 06:36:46 PDT
Received: from FALCON.CIT.CORNELL.EDU by mitchell.cit.cornell.edu (4.1/1.34/Honig-1.3)
	id AA22522; Fri, 18 Sep 92 09:48:18 EDT
Message-Id: <9209181348.AA22522@mitchell.cit.cornell.edu>
To: help-lucid-emacs@lucid.com
Reply-To: swb@nr-tech.cit.cornell.edu
Subject: slow screens, finding files, lhilit mh-e mail
Date: Fri, 18 Sep 92 09:48:09 -0400
From: Scott Brim <swb@nr-tech.cit.cornell.edu>

Hi.  Sorry if these are FAQs.

I'm running twm on Xsun on SunOS 4.1.1 on a 16meg color Sparc 1+.

* New screens build *very* slowly (compared to Epoch).  It's not the
  menubar (I tried setting all menus to nil), and this is before the
  modeline even appears.  It seems that lemacs is really pumping the
  Xserver.  Any suggestions where to look for the bottleneck?  This is
  incredibly frustrating, such that when I have to get real work done I
  mostly use epoch.

* I'm looking for, and don't see, a function to tell if a buffer is
  already in a screen (iconified or not) and to display that if
  available, otherwise to build a new screen.  Before I write it, is
  there a builtin which I'm missing?

* I would like to use lhilit (or anything else) on mh-e "show-+*"
  buffers, at least for the From: and Subject: lines.  As I recall, Ken
  Wood had to add a hook to mh-e to do this with his tek-* code (in
  epoch).  Any suggestions?

							Thanks ... Scott

From help-lucid-emacs-request@lucid.com  Fri Sep 18 07:57:16 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA04054; Fri, 18 Sep 92 07:57:16 PDT
Received: by heavens-gate.lucid.com id AA01864g; Fri, 18 Sep 92 07:45:40 PDT
Received: from Sun.COM by heavens-gate.lucid.com id AA01854g; Fri, 18 Sep 92 07:43:37 PDT
Received: from snail.Sun.COM (snail.Corp.Sun.COM) by Sun.COM (4.1/SMI-4.1)
	id AA21311; Fri, 18 Sep 92 07:55:10 PDT
Received: from East.Sun.COM by snail.Sun.COM (4.1/SMI-4.1)
	id AA26205; Fri, 18 Sep 92 07:55:08 PDT
Received: from sunpix.East.Sun.COM (string-beans.East.Sun.COM) by East.Sun.COM (4.1/SMI-4.1)
	id AA20183; Fri, 18 Sep 92 10:55:07 EDT
Received: from uh-oh.East.Sun.COM by sunpix.East.Sun.COM (4.1/SMI-4.1)
	id AA15633; Fri, 18 Sep 92 10:55:05 EDT
Date: Fri, 18 Sep 92 10:55:05 EDT
From: Tony.Bennett@East.Sun.COM (Tony E. Bennett)
Message-Id: <9209181455.AA15633@sunpix.East.Sun.COM>
Received: by uh-oh.East.Sun.COM (5.0/SMI-SVR4)
	id AA18359; Fri, 18 Sep 92 10:55:02 EDT
To: help-lucid-emacs@lucid.com
Subject: 19.3 nits
Mailed-From: GNU Emacs or Epoch (19.3.13 Lucid)
Content-Length: 735

Solaris 2.0; ss2; compiled w/ Sun's unbundled compiler; OLIT menus
running under olvwm

Lest I complain too much: I think 19.3 is a fantastic job.

    +  vm-isearch-forward gives a byte-compile error

    +  if a screen is indicated as starting iconic in .Xdefaults,
        then the first time (deiconify-screen) is called nothing
        happens.  Double-click the icon to open it, then close
        it.  Subsequent (deiconify-screen) calls will work fine.

    +  isearch is terminated by a space.

    +  How do you get the mouse to follow focus?
        Do I have to write my own 'select-screen-hook' ?
        (if mouse doesn't follow focus it quickly defaults
        olvwm auto-raise feature which I have turned on)

--tony

From help-lucid-emacs-request@lucid.com  Fri Sep 18 13:25:12 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA05063; Fri, 18 Sep 92 13:25:12 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA02914g; Fri, 18 Sep 92 13:12:53 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA08116; Fri, 18 Sep 92 16:24:24 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA08112; Fri, 18 Sep 92 16:24:22 -0400
Path: uunet!cis.ohio-state.edu!ucbvax!decwrl!pa.dec.com!rdg.dec.com!jch
From: jch@rdg.dec.com (John Haxby)
Newsgroups: alt.lucid-emacs.help
Subject: Re: More problems with 19.3 on a DECstation
Message-Id: <1992Sep18.090512.10727@rdg.dec.com>
Date: 18 Sep 92 09:05:12 GMT
References: <1992Sep17.200749.29018@nntpd.lkg.dec.com>
Organization: Digital Equipment Corporation
Lines: 10
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I don't have this problem, but I compiled against X11R5 (more-or-less
latest patchlevel) instead of the X11R4 supplied with ULTRIX.

-- 
John Haxby, Definitively Wrong.
Digital				<jch@rdg.dec.com>
Reading, England		<...!uknet!wessex!jch>

----------------------------------------------------------------
The opinions expressed herein are my own, not my employers.

From help-lucid-emacs-request@lucid.com  Mon Sep 21 08:17:33 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA00859; Mon, 21 Sep 92 08:17:33 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA07188g; Mon, 21 Sep 92 05:36:39 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA26564; Mon, 21 Sep 92 08:37:17 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA26559; Mon, 21 Sep 92 08:37:15 -0400
Path: uunet!mcsun!uknet!axion!muppet!ishtar!davidh
From: davidh@muppet.bt.co.uk (David Hobley)
Newsgroups: alt.lucid-emacs.help
Subject: Colour map entries
Message-Id: <1992Sep21.110029.17802@muppet.bt.co.uk>
Date: 21 Sep 92 11:00:29 GMT
Reply-To: davidh@muppet.bt.co.uk
Organization: British Telecom Research Laboratories
Lines: 16
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Is there any way of telling emacs to use a monochrome configuration
if it is unable to allocate the required colours when it starts up.

At the minute it simply exits. I had a look at emacs NEWS, but the
only thing I could find was a function which would return true if
the display supported colour. Not quite what is required. 

I assume it couldn't be done in the .emacs file as the screen is mapped
before it is read, so the error messages are caught.

Cheers,
---
	David Hobley	davidh@muppet.bt.co.uk

 "Life may have no meaning -- or even worse, it may have a meaning of
 which I disapprove."

From help-lucid-emacs-request@lucid.com  Mon Sep 21 08:17:58 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA00863; Mon, 21 Sep 92 08:17:58 PDT
Received: by heavens-gate.lucid.com id AA06941g; Mon, 21 Sep 92 00:53:13 PDT
Received: from ntu.ac.sg ([155.69.1.5]) by heavens-gate.lucid.com id AA06937g; Mon, 21 Sep 92 00:52:57 PDT
Received: by ntu.ac.sg (5.57/Ultrix3.0-C)
	id AA17145; Mon, 21 Sep 92 15:53:15 +0800
Message-Id: <9209210753.AA17145@ntu.ac.sg>
Sender: franks%ntu.ac.sg@lucid.com
Date: Mon, 21 Sep 1992 15:54:41 +0730
To: help-lucid-emacs@lucid.com
From: franks%ntu.ac.sg@lucid.com (Frank Siebenlist)
Subject: Re: More problems with 19.3 on a DECstation

>
>It looks like it's getting a NULL value for icon_name.value and so
>strlen is dying.  Have any other DECstation users seen this problem?
>

Yes.

lemacs 19.3 used to work well until they (=DEC) "upgraded" to X11R4 last
week.
After recompilation I got exactly the same segmentation fault as you at
strlen().
I am not using gmalloc() and I use the native MIPS-cc, so it must be
somewhere 
in the X11R4 (?).
Please let me know if you found a way out yet...

Rgds, Frank.
________________________________________________________________________
Frank Siebenlist                             Email: franks@imt.ntu.ac.sg
Institute of Manufacturing Technology (IMT)    Tel: (65) 799-1336
Nanyang Technological University (NTU)         Fax: (65) 791-2927
Nanyang Avenue
Singapore 2263


From help-lucid-emacs-request@lucid.com  Mon Sep 21 08:18:25 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA00868; Mon, 21 Sep 92 08:18:25 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA06364g; Sun, 20 Sep 92 14:48:17 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA07790; Sun, 20 Sep 92 17:48:54 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA07786; Sun, 20 Sep 92 17:48:52 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!usc!sdd.hp.com!ux1.cso.uiuc.edu!news.iastate.edu!plakshm
From: plakshm@iastate.edu (P G Lakshminarayan)
Subject: META function key for VT100 emulation
Message-Id: <1992Sep20.213813.9698@news.iastate.edu>
Keywords: META_Key, VT100, MAPPING/BINDING
Organization: Iowa State University, Ames, IA
Date: Sun, 20 Sep 1992 21:38:13 GMT
Lines: 1
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com



From help-lucid-emacs-request@lucid.com  Mon Sep 21 08:21:04 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA00884; Mon, 21 Sep 92 08:21:04 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA05217g; Sat, 19 Sep 92 13:41:45 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA00963; Sat, 19 Sep 92 16:42:19 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA00958; Sat, 19 Sep 92 16:42:17 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!cis.ohio-state.edu!zaphod.mps.ohio-state.edu!sol.ctr.columbia.edu!news.cs.columbia.edu!news!bm
From: bm@shadow.cc.columbia.edu (Blair MacIntyre)
Subject: Menu position wrong ...
Message-Id: <BuuDnq.7CE@cs.columbia.edu>
Reply-To: Blair MacIntyre <bm@cs.columbia.edu>
Organization: Columbia University
Distribution: alt
Date: Sat, 19 Sep 1992 20:16:37 GMT
Lines: 12
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I have a problem with Lucid 19.2 and popup-menus.

They all seem to pop up in the lower right corner of my screen!  Well,
roughly the lower right (I can see the first 5 or so character of the
first 2 lines).

Anybody else seen this behaviour?
--
Blair MacIntyre --- bm@cs.columbia.edu --- CS Department, Columbia University

"Men can get into shaving, because it reminds them of what stud hombres
they are, having to tame their manliness on a regular basis." - Dave Barry

From help-lucid-emacs-request@lucid.com  Mon Sep 21 08:22:16 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA00905; Mon, 21 Sep 92 08:22:16 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA05245g; Sat, 19 Sep 92 14:25:20 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA01739; Sat, 19 Sep 92 17:25:53 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA01735; Sat, 19 Sep 92 17:25:51 -0400
Path: uunet!mcsun!uknet!stl!robobar!ibmpcug!iocgate!dfr
From: dfr@ioc.co.uk (Doug Rabson)
Newsgroups: alt.lucid-emacs.help
Subject: Re: IBM RS6000
Message-Id: <DFR.92Sep17175547@zebra.ioc.co.uk>
Date: 17 Sep 92 17:55:47 GMT
References: <9209152149.AA08522@igor.Rational.COM>
Organization: Intelligent Office Company Ltd.
Lines: 348
In-Reply-To: carney@igor.rational.com's message of Tue, 15 Sep 1992 14:49:01 PDT
Nntp-Posting-Host: zebra.ioc.co.uk
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I have managed to get Lucid Emacs 19.3 working OK under AIX 3.2.1.  I
could not get the thing to unexec properly.  It seems that unexaix.c
produces executables which only work on the machine which generated
them.

To get CANNOT_DUMP to work, I have made some gratuitous hacks to
loadup.el.  My changes are not really very clean.  Perhaps someone
else has a better solution.  Currently, to run lemacs, I have to use
the following shell script so that it can find loadup.el :

	#! /bin/sh
	EMACSLOADPATH=/vol/lemacs/lisp/prim export EMACSLOADPATH
	exec /vol/lemacs/src/temacs $*

Note that if any errors happen during loadup, temacs crashes in
strout().  I suppose that this is because the window doesn't exist
yet.

The main problems apart from CANNOT_DUMP were to do with memory
allocation.  It seems that you can override the shared libc version of
malloc in your own code but the shared library will continue to call
its own version.  This meant that code calling strdup() get memory
allocated by the AIX allocator which was then passed off to gmalloc
for freeing.  This didn't work too well.  There were a couple of thing
like this which I found using the free-hook.c checking code.  My
solution was to add strdup() to gmalloc.c

------------------------------cut here------------------------------
diff -cr lemacs-19.3/lisp/prim/loadup.el lemacs-19.3.aix/lisp/prim/loadup.el
*** lemacs-19.3/lisp/prim/loadup.el	Fri Aug 21 08:40:12 1992
--- lemacs-19.3.aix/lisp/prim/loadup.el	Wed Sep 16 10:53:30 1992
***************
*** 28,38 ****
  ;; we can call directory-files and get the rest of the dirs (so that we can
  ;; dump stuff from modes/ and packages/.)
  ;;
! (setq load-path (nconc (directory-files "../lisp" t "^[^-.]" nil 'dirs-only)
! 		       (cons "../lisp" load-path)))
  
  (load "subr")
  (garbage-collect)
  (load "faces")		; must be loaded before any file that makes faces
  (garbage-collect)
  (load "loaddefs.el")  ;Don't get confused if someone compiled loaddefs by mistake.
--- 28,41 ----
  ;; we can call directory-files and get the rest of the dirs (so that we can
  ;; dump stuff from modes/ and packages/.)
  ;;
! (setq load-path (nconc (directory-files "/vol/lemacs/lisp" t "^[^-.]" nil 'dirs-only)
! 		       (cons "/vol/lemacs/lisp" load-path)))
! ;;(setq load-path (nconc (directory-files "../lisp" t "^[^-.]" nil 'dirs-only)
! ;;		       (cons "../lisp" load-path)))
  
  (load "subr")
  (garbage-collect)
+ (load "x-faces")		; must be loaded before any file that makes faces
  (load "faces")		; must be loaded before any file that makes faces
  (garbage-collect)
  (load "loaddefs.el")  ;Don't get confused if someone compiled loaddefs by mistake.
***************
*** 48,53 ****
--- 51,57 ----
  (load "paths.el")  ;Don't get confused if someone compiled paths by mistake.
  (garbage-collect)
  (load "startup")
+ (set-default-load-path)
  (load "lisp")
  (garbage-collect)
  (load "page")
***************
*** 113,121 ****
  ;; Don't bother with these if we're running temacs, i.e. if we're
  ;; just debugging don't waste time finding doc strings.
  
! (if (or (equal (nth 3 command-line-args) "dump")
! 	(equal (nth 4 command-line-args) "dump"))
!     (progn
  (message "Finding pointers to doc strings...")
  (if (fboundp 'dump-emacs)
      (let ((name emacs-version))
--- 117,125 ----
  ;; Don't bother with these if we're running temacs, i.e. if we're
  ;; just debugging don't waste time finding doc strings.
  
! ;;(if (or (equal (nth 3 command-line-args) "dump")
! ;;	(equal (nth 4 command-line-args) "dump"))
! ;;    (progn
  (message "Finding pointers to doc strings...")
  (if (fboundp 'dump-emacs)
      (let ((name emacs-version))
***************
*** 129,135 ****
        (Snarf-documentation (concat "DOC-" name)))
      (Snarf-documentation "DOC"))
  (message "Finding pointers to doc strings...done")
! ))
  ;Note: You can cause additional libraries to be preloaded
  ;by writing a site-init.el that loads them.
  ;See also "site-load" above.
--- 133,139 ----
        (Snarf-documentation (concat "DOC-" name)))
      (Snarf-documentation "DOC"))
  (message "Finding pointers to doc strings...done")
! ;;))
  ;Note: You can cause additional libraries to be preloaded
  ;by writing a site-init.el that loads them.
  ;See also "site-load" above.
diff -cr lemacs-19.3/lisp/version.el lemacs-19.3.aix/lisp/version.el
*** lemacs-19.3/lisp/version.el	Wed Sep  9 09:13:19 1992
--- lemacs-19.3.aix/lisp/version.el	Wed Sep 16 10:17:01 1992
***************
*** 20,26 ****
  
  ;; The following line is modified automatically
  ;; by loading inc-version.el, each time a new Emacs is dumped.
! (defconst emacs-version "19.3" "\
  Version numbers of this version of Emacs.")
  
  (setq emacs-version (purecopy (concat emacs-version " Lucid")))
--- 20,26 ----
  
  ;; The following line is modified automatically
  ;; by loading inc-version.el, each time a new Emacs is dumped.
! (defconst emacs-version "19.3.3" "\
  Version numbers of this version of Emacs.")
  
  (setq emacs-version (purecopy (concat emacs-version " Lucid")))
diff -cr lemacs-19.3/src/config.h lemacs-19.3.aix/src/config.h
*** lemacs-19.3/src/config.h	Sun Aug 30 22:46:56 1992
--- lemacs-19.3.aix/src/config.h	Wed Sep 16 10:21:15 1992
***************
*** 40,46 ****
     the s- files to use for them.  See s-template.h for documentation on 
     writing s- files.
   */
! #include "s/s-sunos4.h"
  
  /* Include here a m- file that describes the machine and system you use.
     See the file ../etc/MACHINES for a list of machines and the names of 
--- 40,46 ----
     the s- files to use for them.  See s-template.h for documentation on 
     writing s- files.
   */
! #include "s/s-aix3-1.h"
  
  /* Include here a m- file that describes the machine and system you use.
     See the file ../etc/MACHINES for a list of machines and the names of 
***************
*** 47,53 ****
     the m- files to use for them.   See m-template.h for info on what m- 
     files should define.
   */
! #include "m/m-sparc.h"
  
  /* Load in the conversion definitions if this system
     needs them and the source file being compiled has not
--- 47,53 ----
     the m- files to use for them.   See m-template.h for info on what m- 
     files should define.
   */
! #include "m/m-ibmrs6000.h"
  
  /* Load in the conversion definitions if this system
     needs them and the source file being compiled has not
***************
*** 164,169 ****
--- 164,170 ----
  /* Compile in support for running emacs directly from temacs (useful for
     debugging emacs) */
  #define RUNNABLE_TEMACS
+ #define CANNOT_DUMP
  
  
  #ifdef THIS_IS_YMAKEFILE
diff -cr lemacs-19.3/src/emacs.c lemacs-19.3.aix/src/emacs.c
*** lemacs-19.3/src/emacs.c	Wed Sep  2 08:59:16 1992
--- lemacs-19.3.aix/src/emacs.c	Wed Sep 16 10:22:06 1992
***************
*** 346,352 ****
    int name_len = lname->size;
    char *path_list = getenv ("PATH");
    int must_be_executable = 1;
!   extern int file_exists_p;
    char *full_path;
    char *path;
    int path_index = 0;
--- 346,352 ----
    int name_len = lname->size;
    char *path_list = getenv ("PATH");
    int must_be_executable = 1;
! /*  extern int file_exists_p;*/
    char *full_path;
    char *path;
    int path_index = 0;
diff -cr lemacs-19.3/src/free-hook.c lemacs-19.3.aix/src/free-hook.c
*** lemacs-19.3/src/free-hook.c	Mon Jun 29 23:26:45 1992
--- lemacs-19.3.aix/src/free-hook.c	Wed Sep 16 10:05:11 1992
***************
*** 46,52 ****
--- 46,54 ----
  #define sun4
  
  #ifdef emacs
+ #ifndef _AIX
  #include "cadillac-btl.h"
+ #endif
  #include "config.h"
  #include "lisp.h"
  #else
***************
*** 56,61 ****
--- 58,73 ----
  #include "hash.h"
  #include "blockio.h"
  
+ #ifdef _AIX
+ typedef struct _frame FRAME;
+ struct _frame {
+     char*	pc;
+     FRAME*	prev;
+ };
+ #define PREVIOUS_FRAME(x)	0
+ #define FRAME_PC(x)		(x.pc)
+ #endif
+ 
  #ifdef UNMAPPED_FREE
  #include <sys/mman.h>
  #include <sys/param.h>
***************
*** 64,70 ****
--- 76,84 ----
  
  #include <sys/types.h>
  
+ #ifndef _AIX
  void free (void *);
+ #endif
  
  c_hashtable pointer_table;
  
diff -cr lemacs-19.3/src/gmalloc.c lemacs-19.3.aix/src/gmalloc.c
*** lemacs-19.3/src/gmalloc.c	Wed Sep  2 08:59:17 1992
--- lemacs-19.3.aix/src/gmalloc.c	Wed Sep 16 10:15:57 1992
***************
*** 909,914 ****
--- 909,924 ----
  
    return result;
  }
+ 
+ /* Copy a string. */
+ char *
+ strdup (s)
+      char *s;
+ {
+   char *new = (char *) malloc (strlen(s) + 1);
+   strcpy(new, s);
+   return new;
+ }
  /* Copyright (C) 1991 Free Software Foundation, Inc.
  This file is part of the GNU C Library.
  
Only in lemacs-19.3.aix/src/lwlib: Makefile
Only in lemacs-19.3.aix/src/lwlib: liblw.a
Only in lemacs-19.3.aix/src/lwlib: lwlib-Xlw.o
Only in lemacs-19.3.aix/src/lwlib: lwlib-utils.o
diff -cr lemacs-19.3/src/lwlib/lwlib.c lemacs-19.3.aix/src/lwlib/lwlib.c
*** lemacs-19.3/src/lwlib/lwlib.c	Thu Jul 30 00:44:22 1992
--- lemacs-19.3.aix/src/lwlib/lwlib.c	Wed Sep 16 09:51:10 1992
***************
*** 24,30 ****
--- 24,32 ----
  #include <string.h>
  #include <stdlib.h>
  #include <stdio.h>
+ #ifndef _AIX
  #include <alloca.h>
+ #endif
  #include <X11/StringDefs.h>
  #include "lwlib-internal.h"
  
Only in lemacs-19.3.aix/src/lwlib: lwlib.o
Only in lemacs-19.3.aix/src/lwlib: xlwmenu.o
diff -cr lemacs-19.3/src/s/s-aix3-1.h lemacs-19.3.aix/src/s/s-aix3-1.h
*** lemacs-19.3/src/s/s-aix3-1.h	Tue Aug 18 23:14:47 1992
--- lemacs-19.3.aix/src/s/s-aix3-1.h	Wed Sep 16 10:10:25 1992
***************
*** 30,35 ****
--- 30,36 ----
  
  #ifndef AIX
  #define AIX
+ #define IBMR2AIX
  #endif
  
  /*      turn off c prototypes */
***************
*** 114,120 ****
   *	the 4.2 functions
   */
  
! #define SYSV_SYSTEM_DIR
  
  /* Define this symbol if your system has the functions bcopy, etc. */
  
--- 115,121 ----
   *	the 4.2 functions
   */
  
! /* #define SYSV_SYSTEM_DIR */
  
  /* Define this symbol if your system has the functions bcopy, etc. */
  
***************
*** 230,233 ****
  #define SYSTEM_MALLOC
  
  
! 
--- 231,236 ----
  #define SYSTEM_MALLOC
  
  
! #define LD_CMD gcc -L/vol/X11R5/lib
! #define NEED_REALPATH
! #define FREE_CHECKING
diff -cr lemacs-19.3/src/sysdep.c lemacs-19.3.aix/src/sysdep.c
*** lemacs-19.3/src/sysdep.c	Sat Aug 29 21:28:15 1992
--- lemacs-19.3.aix/src/sysdep.c	Wed Sep 16 10:22:06 1992
***************
*** 4281,4287 ****
--- 4281,4291 ----
    /* The HFT system on AIX doesn't optimize for scrolling, so it's really ugly
       at times.  Here we determine if we are on an HFT by trying to get an
       HFT error code.  If this call works, we must be on an HFT. */
+ #ifdef IBMR2AIX
+   if (ioctl (0, HFQERROR, 0) != 0)
+ #else
    if (ioctl (0, HFQEIO, 0) != -1)
+ #endif
      line_ins_del_ok = char_ins_del_ok = 0;
  }
  
------------------------------cut here------------------------------
--
Doug Rabson		| Email:  dfr@ioc.co.uk
Phone: +44 81 528 9864	|	  drabson@cix.compulink.co.uk
Fax:   +44 81 528 9878	|	  

From help-lucid-emacs-request@lucid.com  Mon Sep 21 11:56:09 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA02425; Mon, 21 Sep 92 11:56:09 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA08112g; Mon, 21 Sep 92 11:55:41 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA26307; Mon, 21 Sep 92 14:56:19 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA26303; Mon, 21 Sep 92 14:56:15 -0400
Path: uunet!noc.near.net!nic.umass.edu!m2c!crackers!transfer!sw.stratus.com!wayne
From: wayne@sw.stratus.com (Wayne Newberry)
Newsgroups: alt.lucid-emacs.help
Subject: Adding a menu to middle mouse key.
Keywords: Mouse, menu
Message-Id: <6576@transfer.stratus.com>
Date: 21 Sep 92 17:47:49 GMT
Organization: Stratus Computer, Inc.
Lines: 9
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


I'd like to get an idea of how hard it would be to add a menu
to the middle mouse key.  What I have in mind would be to have
the current "edit" menu pop up right where the cursor is 
diplayed.  Some software packaged call this the quick menu or
something comparable.  For the frequently used things like
copy, cut and paste, this would mean less hand motion.

Wayne

From help-lucid-emacs-request@lucid.com  Mon Sep 21 13:12:29 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA02735; Mon, 21 Sep 92 13:12:29 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA08337g; Mon, 21 Sep 92 13:11:50 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA03102; Mon, 21 Sep 92 16:12:29 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA03098; Mon, 21 Sep 92 16:12:28 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!caen!sol.ctr.columbia.edu!news.cs.columbia.edu!bm
From: bm@cs.columbia.edu (Blair MacIntyre)
Subject: comint and cmushell
Message-Id: <Buy1u3.LHA@cs.columbia.edu>
Reply-To: Blair MacIntyre <bm@cs.columbia.edu>
Organization: Columbia University Department of Computer Science
Date: Mon, 21 Sep 1992 19:51:38 GMT
Lines: 22
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Perhaps someone can give me a hint as to what might be causing this:

I'm running (or trying to run) cmushell (1990 version on
archive.ohio-state) with the comint.el that came with lucid.  It keeps
dying with

Signalling: (void-variable process-environment)
  (comint-update-env process-environment (list (format "TERMCAP=emacs:co#%d:tc=unknown" ...) "TERM=emacs" "EMACS=t")))

I'm using Lucid19.2, and the MAINTAIN_ENVIROMENT flag was set during
compile.  Is there any reason this would happen?  It shouldn't get past
the line right before the error (in comint.el)

  (if (boundp 'process-environment) ; Not a completely reliable test.

should it?  

-- 
Blair MacIntyre --- bm@cs.columbia.edu --- CS Department, Columbia University

"Men can get into shaving, because it reminds them of what stud hombres
they are, having to tame their manliness on a regular basis." - Dave Barry

From help-lucid-emacs-request@lucid.com  Mon Sep 21 13:30:40 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA02827; Mon, 21 Sep 92 13:30:40 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA08377g; Mon, 21 Sep 92 13:29:44 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA04194; Mon, 21 Sep 92 16:30:22 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA04190; Mon, 21 Sep 92 16:30:12 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!convex!sunova!sunova.ssc.gov!allen
From: allen@golem.ssc.gov (Michael Allen)
Subject: Energize
Message-Id: <ALLEN.92Sep21151048@golem.ssc.gov>
Nntp-Posting-Host: golem.ssc.gov
Reply-To: allen@ssc.gov
Organization: SSC Laboratory, Dallas, TX
Distribution: alt
Date: Mon, 21 Sep 1992 21:10:48 GMT
Lines: 16
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I tried loading energize-load only to find there were two or three
functions not defined.  Further, the only thing I could do was to
quit.  Can someone clue me in?

-Thanks,
 Michael
--
K'tivah v'Chatima Tova!

===================================================
But those who toiled knew nothing of the dreams of 
        Those Who Planned;                         
And the minds who planned the Tower of Babel       
        Cared nothing for the workers who built it.

	-Metropolis

From help-lucid-emacs-request@lucid.com  Mon Sep 21 14:31:12 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA03142; Mon, 21 Sep 92 14:31:12 PDT
Received: by heavens-gate.lucid.com id AA08566g; Mon, 21 Sep 92 14:30:45 PDT
Received: from JUNIN.MT.CS.CMU.EDU by heavens-gate.lucid.com id AA08550g; Mon, 21 Sep 92 14:28:44 PDT
Received: from junin.mt.cs.cmu.edu by JUNIN.MT.CS.CMU.EDU id aa04433;
          21 Sep 92 17:28:53 EDT
To: Blair MacIntyre <bm@CS.COLUMBIA.EDU>
Cc: help-lucid-emacs@lucid.com
Subject: Re: comint and cmushell 
In-Reply-To: Your message of Mon, 21 Sep 92 19:51:38 +0000.
             <Buy1u3.LHA@cs.columbia.edu> 
Date: Mon, 21 Sep 92 17:28:47 -0400
Message-Id: <4430.717110927@JUNIN.MT.CS.CMU.EDU>
From: Todd_Kaufmann@JUNIN.MT.CS.CMU.EDU

No need to bother--the default shell is now cmushell, and uses cominit,
so just try M-x shell.

If that doesn't work, then get back to us...


 -todd

From help-lucid-emacs-request@lucid.com  Mon Sep 21 16:45:29 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA03835; Mon, 21 Sep 92 16:45:29 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA08837g; Mon, 21 Sep 92 16:43:13 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA17923; Mon, 21 Sep 92 19:43:50 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA17919; Mon, 21 Sep 92 19:43:46 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!spool.mu.edu!sol.ctr.columbia.edu!news.cs.columbia.edu!bm
From: bm@cs.columbia.edu (Blair MacIntyre)
Subject: vm highlighting code ...
Message-Id: <BuyC8K.7MF@cs.columbia.edu>
Reply-To: Blair MacIntyre <bm@cs.columbia.edu>
Organization: Columbia University Department of Computer Science
Date: Mon, 21 Sep 1992 23:36:19 GMT
Lines: 157
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Well, this is short, so I thought I'd post it here to see what people
think, since I like it!

I hacked a few vm functions to get highlighting inside VM to do what I
want, especially in the summary buffer.  I have the summary buffer patch
that puts the "=>" in from of messages from yourself.
 
This uses the lhilit.el and the patch to allow subexpressions to be
hilit.  I tried to take care so only the lines of the summary buffer
that need to be rehilit are scanned (using narrow-to-region --
I'm not much of an Emacs hacker, so there might be a better way to do
this, for example). 

I've included the colours I use for the 10 hilight colours.  My emacs
has a background of gray70 and a foreground of gray20, I use
*-courier-bold-r-normal--14-* as my font.  (just so you know why I chose
those hilight colours)

---snip---
(set-face-foreground 'hilit0 "yellow")
(set-face-foreground 'hilit1 "white")
(set-face-foreground 'hilit2 "blue3")
(set-face-foreground 'hilit3 "palegreen")
(set-face-foreground 'hilit4 "skyblue")
(set-face-foreground 'hilit5 "brown4")
(set-face-foreground 'hilit6 "gray85")
(set-face-foreground 'hilit7 "magenta3")
(set-face-foreground 'hilit8 "gold")
(set-face-foreground 'hilit9 "red3")

(setq vm-mode-hilit
      '(
	("^From:[ \t]*\\(.*\\)" nil hilit0 1)
	("^To:[ \t]*\\(.*\\)" nil hilit1 1)
	("^Subject:[ \t]*\\(.*\\)" nil hilit2 1)))

(setq vm-summary-mode-hilit
      ;; vm-summary-format assumed value is 
      ;;    "%2n %*%a %-17.17U %-3.3m %2d %4l/%-5c \"%s\"\n"
      ;; needs a regexp like
      ;;    "^..[0-9]* ..... ................. ... .. ..../..... \".*\"\n"
      '(
	("^->.*" nil hilit1)
	("^..[ 0-9]* ..... \\(=> ..............\\)" nil hilit2 1) ;; from me!
	("^..[ ]*[0-9]* \\(\*\\)" nil hilit3 1) ;; if marked
	("^..[ ]*[0-9]* .\\(D\\)" nil hilit4 1) ;; if deleted
	("^..[ ]*[0-9]* .\\([NU]\\)" nil hilit0 1) ;; if new or unread
	("^..[ ]*[0-9]* ..\\([FW]\\)" nil hilit6 1) ;; if filed or written
	("^..[ ]*[0-9]* ...\\([RZ]\\)" nil hilit7 1) ;; if replied or forwared
	("^..[ ]*[0-9]* ..... ................. ... .. ..../..... \"\\(Re:\\)"
	 nil hilit8 1)
	("^..[ ]*[0-9]* ....\\(E\\)" nil hilit9 1))) ;; if edited

(hilit::mode-list-update "VM" vm-mode-hilit)
(hilit::mode-list-update "VM Summary" vm-summary-mode-hilit)
(add-hook 'vm-mode-hooks 'hilit::hilit-buffer)
    
(defun vm-do-summary (&optional start-point)
  (let ((mp (or start-point vm-message-list))
	(n 0)
	;; Just for laughs, make the update interval vary.
	(modulus (+ (% (vm-abs (random)) 11) 10))
	summary)
    (message "Generating summary...")
    (save-excursion
      (set-buffer vm-summary-buffer)
      (let ((buffer-read-only nil))
	(if start-point
	    (if (vm-su-start-of (car mp))
		(progn
		  (goto-char (vm-su-start-of (car mp)))
		  (delete-region (point) (point-max)))
	      (goto-char (point-max)))
	  (erase-buffer)
	  (setq vm-summary-pointer nil))
	(while mp
	  (set-buffer vm-mail-buffer)
	  (setq summary (vm-sprintf 'vm-summary-format (car mp)))
	  (set-buffer vm-summary-buffer)
	  (vm-set-su-start-of (car mp) (point-marker))
	  ;; the leading spaces are for the summary arrow
	  (insert "  " summary)
	  (vm-set-su-end-of (car mp) (point-marker))
	  (setq mp (cdr mp) n (1+ n))
	  (if (zerop (% n modulus))
	      (message "Generating summary... %d" n)))
	(re-hilit nil)))
    (message "Generating summary... done")))

(defun vm-update-message-summary (m)
  (let ((m-list (cons m
		      (and (eq (vm-attributes-of m)
			       (vm-attributes-of (vm-real-message-of m)))
			   (vm-virtual-messages-of m))))
	summary)
    (while m-list
      (if (and (vm-su-start-of (car m-list))
	       (buffer-name (marker-buffer (vm-su-start-of (car m-list)))))
	(save-excursion
	  (setq summary (vm-sprintf 'vm-summary-format (car m-list)))
	  (set-buffer (marker-buffer (vm-su-start-of (car m-list))))
	  (let ((inhibit-quit t) buffer-read-only)
	    (save-excursion
	      (goto-char (vm-su-start-of (car m-list)))
	      (insert (if (= (following-char) ?\ ) "  " "->") summary)
	      (delete-region (point) (vm-su-end-of (car m-list)))
	      ;;; added the next line --- Blair
	      (re-hilit-summary-record (car m-list))))))
      (setq m-list (cdr m-list)))))

;; assume we are in the summary buffer and editting it
(defun re-hilit-summary-record (mmmm)
  (narrow-to-region (vm-su-start-of mmmm) (vm-su-end-of mmmm))
  (re-hilit nil)
  (widen))

(defun vm-set-summary-pointer (m)
  (if vm-summary-buffer
      (let ((w (get-buffer-window vm-summary-buffer))
	    (old-window nil)
	    (inhibit-quit t))
	(vm-save-buffer-excursion
	  (unwind-protect
	      (progn
		(set-buffer vm-summary-buffer)
		(if w
		    (progn
		      (setq old-window (selected-window))
		      (select-window w)))
		(let ((buffer-read-only nil))
		  (if vm-summary-pointer
		      (progn
			(goto-char (vm-su-start-of vm-summary-pointer))
			(insert "  ")
			(delete-char 2)
			;; added the next line --- Blair
			(re-hilit-summary-record vm-summary-pointer)))
		  (setq vm-summary-pointer m)
		  (goto-char (vm-su-start-of m))
		  (insert "->")
		  (delete-char 2)
		  (forward-char -2)
		  ;; added the next line --- Blair
		  (re-hilit-summary-record m)
		  (and w vm-auto-center-summary (vm-auto-center-summary))))
	    (and old-window (select-window old-window)))))))

(defun vm-highlight-headers (message window)
  (and vm-highlighted-header-regexp window
       (<= (window-start window) (vm-text-of message))
       (save-excursion
	 (re-hilit nil))))
-- 
Blair MacIntyre --- bm@cs.columbia.edu --- CS Department, Columbia University

"Men can get into shaving, because it reminds them of what stud hombres
they are, having to tame their manliness on a regular basis." - Dave Barry

From help-lucid-emacs-request@lucid.com  Mon Sep 21 16:53:33 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA03848; Mon, 21 Sep 92 16:53:33 PDT
Received: by heavens-gate.lucid.com id AA08566g; Mon, 21 Sep 92 14:30:45 PDT
Site: 
Received: from JUNIN.MT.CS.CMU.EDU by heavens-gate.lucid.com id AA08550g; Mon, 21 Sep 92 14:28:44 PDT
Received: from junin.mt.cs.cmu.edu by JUNIN.MT.CS.CMU.EDU id aa04433;
          21 Sep 92 17:28:53 EDT
To: Blair MacIntyre <bm@CS.COLUMBIA.EDU>
Cc: help-lucid-emacs@lucid.com
Subject: Re: comint and cmushell 
In-Reply-To: Your message of Mon, 21 Sep 92 19:51:38 +0000.
             <Buy1u3.LHA@cs.columbia.edu> 
Date: Mon, 21 Sep 92 17:28:47 -0400
Message-Id: <4430.717110927@JUNIN.MT.CS.CMU.EDU>
From: Todd_Kaufmann@JUNIN.MT.CS.CMU.EDU

No need to bother--the default shell is now cmushell, and uses cominit,
so just try M-x shell.

If that doesn't work, then get back to us...


 -todd

From help-lucid-emacs-request@lucid.com  Mon Sep 21 17:50:14 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA03994; Mon, 21 Sep 92 17:50:14 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA08837g; Mon, 21 Sep 92 16:43:13 PDT
Site: 
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA17923; Mon, 21 Sep 92 19:43:50 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA17919; Mon, 21 Sep 92 19:43:46 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!spool.mu.edu!sol.ctr.columbia.edu!news.cs.columbia.edu!bm
From: bm@cs.columbia.edu (Blair MacIntyre)
Subject: vm highlighting code ...
Message-Id: <BuyC8K.7MF@cs.columbia.edu>
Reply-To: Blair MacIntyre <bm@cs.columbia.edu>
Organization: Columbia University Department of Computer Science
Date: Mon, 21 Sep 1992 23:36:19 GMT
Lines: 157
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Well, this is short, so I thought I'd post it here to see what people
think, since I like it!

I hacked a few vm functions to get highlighting inside VM to do what I
want, especially in the summary buffer.  I have the summary buffer patch
that puts the "=>" in from of messages from yourself.
 
This uses the lhilit.el and the patch to allow subexpressions to be
hilit.  I tried to take care so only the lines of the summary buffer
that need to be rehilit are scanned (using narrow-to-region --
I'm not much of an Emacs hacker, so there might be a better way to do
this, for example). 

I've included the colours I use for the 10 hilight colours.  My emacs
has a background of gray70 and a foreground of gray20, I use
*-courier-bold-r-normal--14-* as my font.  (just so you know why I chose
those hilight colours)

---snip---
(set-face-foreground 'hilit0 "yellow")
(set-face-foreground 'hilit1 "white")
(set-face-foreground 'hilit2 "blue3")
(set-face-foreground 'hilit3 "palegreen")
(set-face-foreground 'hilit4 "skyblue")
(set-face-foreground 'hilit5 "brown4")
(set-face-foreground 'hilit6 "gray85")
(set-face-foreground 'hilit7 "magenta3")
(set-face-foreground 'hilit8 "gold")
(set-face-foreground 'hilit9 "red3")

(setq vm-mode-hilit
      '(
	("^From:[ \t]*\\(.*\\)" nil hilit0 1)
	("^To:[ \t]*\\(.*\\)" nil hilit1 1)
	("^Subject:[ \t]*\\(.*\\)" nil hilit2 1)))

(setq vm-summary-mode-hilit
      ;; vm-summary-format assumed value is 
      ;;    "%2n %*%a %-17.17U %-3.3m %2d %4l/%-5c \"%s\"\n"
      ;; needs a regexp like
      ;;    "^..[0-9]* ..... ................. ... .. ..../..... \".*\"\n"
      '(
	("^->.*" nil hilit1)
	("^..[ 0-9]* ..... \\(=> ..............\\)" nil hilit2 1) ;; from me!
	("^..[ ]*[0-9]* \\(\*\\)" nil hilit3 1) ;; if marked
	("^..[ ]*[0-9]* .\\(D\\)" nil hilit4 1) ;; if deleted
	("^..[ ]*[0-9]* .\\([NU]\\)" nil hilit0 1) ;; if new or unread
	("^..[ ]*[0-9]* ..\\([FW]\\)" nil hilit6 1) ;; if filed or written
	("^..[ ]*[0-9]* ...\\([RZ]\\)" nil hilit7 1) ;; if replied or forwared
	("^..[ ]*[0-9]* ..... ................. ... .. ..../..... \"\\(Re:\\)"
	 nil hilit8 1)
	("^..[ ]*[0-9]* ....\\(E\\)" nil hilit9 1))) ;; if edited

(hilit::mode-list-update "VM" vm-mode-hilit)
(hilit::mode-list-update "VM Summary" vm-summary-mode-hilit)
(add-hook 'vm-mode-hooks 'hilit::hilit-buffer)
    
(defun vm-do-summary (&optional start-point)
  (let ((mp (or start-point vm-message-list))
	(n 0)
	;; Just for laughs, make the update interval vary.
	(modulus (+ (% (vm-abs (random)) 11) 10))
	summary)
    (message "Generating summary...")
    (save-excursion
      (set-buffer vm-summary-buffer)
      (let ((buffer-read-only nil))
	(if start-point
	    (if (vm-su-start-of (car mp))
		(progn
		  (goto-char (vm-su-start-of (car mp)))
		  (delete-region (point) (point-max)))
	      (goto-char (point-max)))
	  (erase-buffer)
	  (setq vm-summary-pointer nil))
	(while mp
	  (set-buffer vm-mail-buffer)
	  (setq summary (vm-sprintf 'vm-summary-format (car mp)))
	  (set-buffer vm-summary-buffer)
	  (vm-set-su-start-of (car mp) (point-marker))
	  ;; the leading spaces are for the summary arrow
	  (insert "  " summary)
	  (vm-set-su-end-of (car mp) (point-marker))
	  (setq mp (cdr mp) n (1+ n))
	  (if (zerop (% n modulus))
	      (message "Generating summary... %d" n)))
	(re-hilit nil)))
    (message "Generating summary... done")))

(defun vm-update-message-summary (m)
  (let ((m-list (cons m
		      (and (eq (vm-attributes-of m)
			       (vm-attributes-of (vm-real-message-of m)))
			   (vm-virtual-messages-of m))))
	summary)
    (while m-list
      (if (and (vm-su-start-of (car m-list))
	       (buffer-name (marker-buffer (vm-su-start-of (car m-list)))))
	(save-excursion
	  (setq summary (vm-sprintf 'vm-summary-format (car m-list)))
	  (set-buffer (marker-buffer (vm-su-start-of (car m-list))))
	  (let ((inhibit-quit t) buffer-read-only)
	    (save-excursion
	      (goto-char (vm-su-start-of (car m-list)))
	      (insert (if (= (following-char) ?\ ) "  " "->") summary)
	      (delete-region (point) (vm-su-end-of (car m-list)))
	      ;;; added the next line --- Blair
	      (re-hilit-summary-record (car m-list))))))
      (setq m-list (cdr m-list)))))

;; assume we are in the summary buffer and editting it
(defun re-hilit-summary-record (mmmm)
  (narrow-to-region (vm-su-start-of mmmm) (vm-su-end-of mmmm))
  (re-hilit nil)
  (widen))

(defun vm-set-summary-pointer (m)
  (if vm-summary-buffer
      (let ((w (get-buffer-window vm-summary-buffer))
	    (old-window nil)
	    (inhibit-quit t))
	(vm-save-buffer-excursion
	  (unwind-protect
	      (progn
		(set-buffer vm-summary-buffer)
		(if w
		    (progn
		      (setq old-window (selected-window))
		      (select-window w)))
		(let ((buffer-read-only nil))
		  (if vm-summary-pointer
		      (progn
			(goto-char (vm-su-start-of vm-summary-pointer))
			(insert "  ")
			(delete-char 2)
			;; added the next line --- Blair
			(re-hilit-summary-record vm-summary-pointer)))
		  (setq vm-summary-pointer m)
		  (goto-char (vm-su-start-of m))
		  (insert "->")
		  (delete-char 2)
		  (forward-char -2)
		  ;; added the next line --- Blair
		  (re-hilit-summary-record m)
		  (and w vm-auto-center-summary (vm-auto-center-summary))))
	    (and old-window (select-window old-window)))))))

(defun vm-highlight-headers (message window)
  (and vm-highlighted-header-regexp window
       (<= (window-start window) (vm-text-of message))
       (save-excursion
	 (re-hilit nil))))
-- 
Blair MacIntyre --- bm@cs.columbia.edu --- CS Department, Columbia University

"Men can get into shaving, because it reminds them of what stud hombres
they are, having to tame their manliness on a regular basis." - Dave Barry

From help-lucid-emacs-request@lucid.com  Mon Sep 21 23:26:22 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA04754; Mon, 21 Sep 92 23:26:22 PDT
Received: by heavens-gate.lucid.com id AA00902g; Mon, 21 Sep 92 23:25:48 PDT
Received: from amil.co.il by heavens-gate.lucid.com id AA00895g; Mon, 21 Sep 92 23:25:09 PDT
Received: from ipc8.AMIL ([192.86.90.18]) by amil.co.il (4.1/AMIL-M2)
	id AA17521; Tue, 22 Sep 92 08:25:18 IST
Date: Tue, 22 Sep 92 08:25:18 IST
From: danny@amil.co.il (Danny Bar-Dov)
Message-Id: <9209220625.AA17521@amil.co.il>
Received: by ipc8.AMIL (4.1/SMI-4.1)
	id AA01719; Tue, 22 Sep 92 08:25:15 IST
To: help-lucid-emacs@lucid.com
Subject: deleting selection

Some of the users here would like to be able to delete
the currently selected text (active region).

Does someone have a short elisp example about how
do you access that region ? how do you know if its active ?

It would be nice to change the behavior of the Delete/Backspace
so that regularly it will delete one character backword but when
a region is active it will delete it all.

Thanks

--
Danny.

-------------------------------
Dan Bar Dov

Applied Materials (Israel)

Email:        danny@amil.co.il
Phone: office 972-3-499573
       home   972-3-5469625
TimeZone:     GMT+2
-------------------------------

From help-lucid-emacs-request@lucid.com  Mon Sep 21 23:34:33 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA04789; Mon, 21 Sep 92 23:34:33 PDT
Received: by heavens-gate.lucid.com id AA00932g; Mon, 21 Sep 92 23:33:55 PDT
Received: from amil.co.il by heavens-gate.lucid.com id AA00928g; Mon, 21 Sep 92 23:33:20 PDT
Received: from ipc8.AMIL ([192.86.90.18]) by amil.co.il (4.1/AMIL-M2)
	id AA17582; Tue, 22 Sep 92 08:32:50 IST
Date: Tue, 22 Sep 92 08:32:50 IST
From: danny@amil.co.il (Danny Bar-Dov)
Message-Id: <9209220632.AA17582@amil.co.il>
Received: by ipc8.AMIL (4.1/SMI-4.1)
	id AA01720; Tue, 22 Sep 92 08:32:44 IST
To: Blair MacIntyre <bm@cs.columbia.edu>
Cc: help-lucid-emacs@lucid.com
Subject: comint and cmushell
Newsgroups: alt.lucid-emacs.help
In-Reply-To: <Buy1u3.LHA@cs.columbia.edu>
References: <Buy1u3.LHA@cs.columbia.edu>

Blair MacIntyre writes:
 > Perhaps someone can give me a hint as to what might be causing this:
 > 
 > I'm running (or trying to run) cmushell (1990 version on
 > archive.ohio-state) with the comint.el that came with lucid.  It keeps
 > dying with
 > 
 > Signalling: (void-variable process-environment)
 >   (comint-update-env process-environment (list (format "TERMCAP=emacs:co#%d:tc=unknown" ...) "TERM=emacs" "EMACS=t")))
 > 
 > I'm using Lucid19.2, and the MAINTAIN_ENVIROMENT flag was set during
 > compile.  Is there any reason this would happen?  It shouldn't get past
 > the line right before the error (in comint.el)
 > 
 >   (if (boundp 'process-environment) ; Not a completely reliable test.
 > 
 > should it?  
 > 
 > -- 
 > Blair MacIntyre --- bm@cs.columbia.edu --- CS Department, Columbia University
 > 
 > "Men can get into shaving, because it reminds them of what stud hombres
 > they are, having to tame their manliness on a regular basis." - Dave Barry

You do not say on what system type this is.
MAINTAIN_ENVIROMENT did some trouble for us on sysV platforms.
maybe you should look into that.

--
Danny.

-------------------------------
Dan Bar Dov

Applied Materials (Israel)

Email:        danny@amil.co.il
Phone: office 972-3-499573
       home   972-3-5469625
TimeZone:     GMT+2
-------------------------------

From help-lucid-emacs-request@lucid.com  Tue Sep 22 06:41:06 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA06533; Tue, 22 Sep 92 06:41:06 PDT
Received: by heavens-gate.lucid.com id AA01403g; Tue, 22 Sep 92 06:40:15 PDT
Received: from Sun.COM by heavens-gate.lucid.com id AA01399g; Tue, 22 Sep 92 06:40:07 PDT
Received: from snail.Sun.COM (snail.Corp.Sun.COM) by Sun.COM (4.1/SMI-4.1)
	id AA15407; Tue, 22 Sep 92 06:40:49 PDT
Received: from East.Sun.COM by snail.Sun.COM (4.1/SMI-4.1)
	id AA27520; Tue, 22 Sep 92 06:40:44 PDT
Received: from sunpix.East.Sun.COM (string-beans.East.Sun.COM) by East.Sun.COM (4.1/SMI-4.1)
	id AA03351; Tue, 22 Sep 92 09:40:43 EDT
Received: from uh-oh.East.Sun.COM by sunpix.East.Sun.COM (4.1/SMI-4.1)
	id AA04898; Tue, 22 Sep 92 09:40:41 EDT
Date: Tue, 22 Sep 92 09:40:41 EDT
From: Tony.Bennett@East.Sun.COM (Tony E. Bennett)
Message-Id: <9209221340.AA04898@sunpix.East.Sun.COM>
Received: by uh-oh.East.Sun.COM (5.0/SMI-SVR4)
	id AA11161; Tue, 22 Sep 92 09:40:38 EDT
To: help-lucid-emacs@lucid.com
Subject: trying to write screen hook to assert mouse is in selected screen
Mailed-From: GNU Emacs or Epoch (19.3.13 Lucid)
Content-Length: 449

What I want it to say is:

    if mouse-not-in-selected-screen
        move mouse to selected screen.

It's easy to do the move; but I don't know how to answer the question.
Following does the move:

(defun my-screen-hook ()
  (interactive)
  (let* ((scrn (selected-screen))
        (mpos (read-mouse-position scrn))
        (x (car mpos))
        (y (cdr mpos)))
    (set-mouse-position (selected-screen) x y)))

Any suggestions?

Thanks.

--tony

From help-lucid-emacs-request@lucid.com  Tue Sep 22 07:58:57 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA06891; Tue, 22 Sep 92 07:58:57 PDT
Received: by heavens-gate.lucid.com id AA01516g; Tue, 22 Sep 92 07:58:34 PDT
Received: from sherman.pas.rochester.edu by heavens-gate.lucid.com id AA01512g; Tue, 22 Sep 92 07:58:18 PDT
Received: by sherman.pas.rochester.edu (4.1/1.16) id AA17664; Tue, 22 Sep 92 10:57:23 EDT
Date: Tue, 22 Sep 92 10:57:23 EDT
From: kevin mcfadden <kevin@sherman.pas.rochester.edu>
Message-Id: <9209221457.AA17664@sherman.pas.rochester.edu>
To: help-lucid-emacs@lucid.com
Subject: .emacs file for lemacs

Hi, I was just wondering if I could be sent someone's .emacs
file that contains menu creation for lemacs.

Thanks a lot,

Kevin
kevin@sherman.pas.rochester.edu

From help-lucid-emacs-request@lucid.com  Tue Sep 22 09:11:59 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA07135; Tue, 22 Sep 92 09:11:59 PDT
Received: by heavens-gate.lucid.com id AA01671g; Tue, 22 Sep 92 09:11:27 PDT
Received: from Sun.COM by heavens-gate.lucid.com id AA01664g; Tue, 22 Sep 92 09:10:55 PDT
Received: from snail.Sun.COM (snail.Corp.Sun.COM) by Sun.COM (4.1/SMI-4.1)
	id AA00195; Tue, 22 Sep 92 09:11:37 PDT
Received: from East.Sun.COM by snail.Sun.COM (4.1/SMI-4.1)
	id AA04905; Tue, 22 Sep 92 09:11:36 PDT
Received: from sunpix.East.Sun.COM (string-beans.East.Sun.COM) by East.Sun.COM (4.1/SMI-4.1)
	id AA13750; Tue, 22 Sep 92 12:11:35 EDT
Received: from uh-oh.East.Sun.COM by sunpix.East.Sun.COM (4.1/SMI-4.1)
	id AA06443; Tue, 22 Sep 92 12:11:34 EDT
Date: Tue, 22 Sep 92 12:11:34 EDT
From: Tony.Bennett@East.Sun.COM (Tony E. Bennett)
Message-Id: <9209221611.AA06443@sunpix.East.Sun.COM>
Received: by uh-oh.East.Sun.COM (5.0/SMI-SVR4)
	id AA12537; Tue, 22 Sep 92 12:11:30 EDT
To: help-lucid-emacs@lucid.com
Subject: is it ok to run emacs v18 elc files under lucid?
Mailed-From: GNU Emacs or Epoch (19.3.13 Lucid)
Content-Length: 315

I saw a mention the other day that said this was a problem, but
I haven't had any problem w/ it.

If there is a problem, is there a distinction between v18 vanilla
byte compile and the jwz byte compiler?

Or to put it another way: is there any way to have the same .elc
files for both emacs 18 and lemacs?

--tony

From help-lucid-emacs-request@lucid.com  Tue Sep 22 09:15:19 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA07152; Tue, 22 Sep 92 09:15:19 PDT
Received: by heavens-gate.lucid.com id AA01684g; Tue, 22 Sep 92 09:14:46 PDT
Received: from mwunix.mitre.org by heavens-gate.lucid.com id AA01677g; Tue, 22 Sep 92 09:13:24 PDT
Return-Path: <lamour@maestro.mitre.org>
Received: from maestro.mitre.org by mwunix.mitre.org (5.61/SMI-2.2)
	id AA28860; Tue, 22 Sep 92 12:11:40 -0400
Received: from gong.mitre.org by maestro.mitre.org (4.1/SMI-4.1)
	id AA18658; Tue, 22 Sep 92 12:14:02 EDT
Date: Tue, 22 Sep 92 12:14:02 EDT
From: lamour@maestro.mitre.org (Michael Lamoureux)
Message-Id: <9209221614.AA18658@maestro.mitre.org>
Received: by gong.mitre.org (4.1/SMI-4.1)
	id AA01572; Tue, 22 Sep 92 12:14:02 EDT
To: help-lucid-emacs@lucid.com
Subject: Re: .emacs file for lemacs
In-Reply-To: <9209221457.AA17664@sherman.pas.rochester.edu>
References: <9209221457.AA17664@sherman.pas.rochester.edu>

>>>>> On Tue, 22 Sep 92 10:57:23 EDT, kevin mcfadden <kevin@sherman.pas.rochester.edu> said:

kevin> Hi, I was just wondering if I could be sent someone's .emacs
kevin> file that contains menu creation for lemacs.

	Well, I was planning on posting this soon anyway.  Note:  I
don't necessarily have everything in here working yet.  This has
migrated from 19.1 to 19.2 and I'm about 90% of the way through the
19.3 additions and changes.  Feel free to send me tips, or
enhancements, flames, etc.

Thanks,
Michael
lamour@mitre.org

PS>  If anyone finds this useful, I'd like to know that too.   ;-)

;;  Included below:
;;    font-lock Perl mode (mostly)
;;    Sun type4 keyboard bindings
;;    slightly customized menus
;;    reportmail hooks and other random things
;;
;; Dot.emacs for Michael Lamoureux
;;     This file contains ideas stolen from a great many sources
;;     latest hack added on 9/21/92

;; [many lines deleted here -mjl]

;; &&lucid ========== Lucid emacs 19 stuff ===========================
(if (string-match "Lucid" emacs-version)
    (progn
;; emacs-19 key bindings for Sun type4 keyboard
;;
;;  Can use "meta", "control", and "shift" modifiers
     ;; Left keypad
     (define-key global-map [(f11)] 'isearch-exit)            ;; Stop
     (define-key global-map [(f12)] 'isearch-repeat-forward)  ;; Again
     (define-key global-map [(control f12)] 'repeat-complex-command)  ;; Again
     (define-key global-map [(f13)] 'find-emacs-new-screen)   ;; Props
     (define-key global-map [(control f13)] 'find-Xdefs-new-screen) ;; Props
     (define-key global-map [(f14)] 'undo)                    ;; Undo
     (define-key global-map [(f16)] 'kill-ring-save)          ;; Copy
     (define-key global-map [(f18)] 'yank)                    ;; Paste
     (define-key global-map [(control f18)] 'yank-pop)        ;; Paste
     (define-key global-map [(f19)] 'isearch-forward)         ;; Find
     (define-key global-map [(control f19)] 'query-replace)   ;; Find
     (define-key global-map [(f20)] 'kill-region)             ;; Cut

     ;; Function keys
     ;; F1 seems to be stolen, and F11 & F12 don't return X keysyms
     (define-key global-map [(f2)] 'x-new-screen)
     (define-key global-map [(control f2)] 'delete-screen)
     (define-key global-map [(f3)] 'compile)
     (define-key global-map [(f4)] 'next-error)
     (define-key global-map [(f5)] 'find-tag)
     (define-key global-map [(control f5)] 'find-next-tag)
    ;; (define-key global-map [(f6)] 'pop-file)
     (define-key global-map [(f6)] 'call-hyperB)
     (define-key global-map [(f7)] 'fill-region)
     (define-key global-map [(control f7)] 'eval-region)
     (define-key global-map [(f8)] 'ispell-region)
     (define-key global-map [(control f8)] 'ispell-buffer)
     (define-key global-map [(f9)] 'vm)
     (define-key global-map [(control f9)] 'gnus)
     (define-key global-map [(f10)] 'manual-entry)
     (define-key global-map [(control f10)] 'vkill)

      ;; Right keypad
     (define-key global-map [(f22)] 'print-buffer)                ;; PrSc
     (define-key global-map [(f23)] 'keyboard-quit)               ;; Break
     (define-key global-map [(f27)] 'beginning-of-line)           ;; Home
     (define-key global-map [(control f27)] 'beginning-of-buffer) ;; Home
     (define-key global-map [(f29)] 'scroll-down)                 ;; PgUp
     (define-key global-map [(control f29)] 'scroll-other-window-down) ;; PgUp
     (define-key global-map [(control left)] 'backward-word)      ;; <
     (define-key global-map [(f31)] 'move-to-window-line)         ;; []
     (define-key global-map [(control right)] 'forward-word)      ;; >
     (define-key global-map [(f35)] 'scroll-up)                   ;; PgDn
     (define-key global-map [(control f35)] 'scroll-other-window) ;; PgDn
     (define-key global-map [(r13)] 'end-of-line)                 ;; End
     (define-key global-map [(control r13)] 'end-of-buffer)       ;; End

     ;; A fix for the default bindings
     (global-set-key   'up        'previous-line)
     (global-set-key   'down      'next-line)
     (global-set-key   'left      'backward-char)
     (global-set-key   'right     'forward-char)

     ;; blink-paren is a CPU hog...be careful not to accidently leave
     ;; the cursor in a "blinking" position!!!  (a tough thing to do
     ;; in Lisp code  ;-)
     (load "blink-paren" nil t)

;; for function keys
;;   haven't bothered to figure this one out yet...  I was hoping that
;;   it was just a negative argument to scroll-other-window, but I
;;   couldn't find anything in the documentation...
;(defun scroll-other-window-down ()
;  (interactive)
;  (scroll-other-window (- 0 [number of lines in other-window])))

(defun find-emacs-new-screen () ;; for props key
  (interactive)
  (find-file-new-screen "~/.emacs"))
(defun find-Xdefs-new-screen () 
  (interactive)
  (find-file-new-screen "~/.Xdefaults"))

;;  There have to be better sounds than these
;; (load-default-sounds)
     (let ((default-directory exec-directory))
       (load-sound-file "sounds/bark.au" 'undefined-key)
       (load-sound-file "sounds/drip.au" 'undefined-click)  ;; never get this
       (load-sound-file "sounds/whip.au" 'command-error 50)
       (load-sound-file "sounds/gong.au" 'auto-save-error)  ;; non-standard
       (load-sound-file "sounds/whip.au" 'no-completion 50)
       (load-sound-file "sounds/cuckoo.au" 'y-or-n-p)
       (load-sound-file "sounds/cuckoo.au" 'yes-or-no-p))

;; Menubar def
;;     for the record, I don't have ispell working in Lucid emacs
     (setq default-menubar
	   '(("File"	["New Screen"		x-new-screen   	t]
	      ["Open File..."		find-file		t]
	      ("Open Special"
	       ["Dot Emacs"             (find-file-new-screen "~/.emacs") t]
	       ["Dot Alias"             (find-file-new-screen "~/.alias") t]
	       ["Dot Login"             (find-file-new-screen "~/.zlogin") t]
	       ["Dot Cshrc"             (find-file-new-screen "~/.zshrc") t]
	       ["Dot Mailrc"            (find-file-new-screen "~/.mailrc") t]
	       ["Dot Xdefaults"        (find-file-new-screen "~/.Xdefaults") t]
	       ["Dot Openwin-init"  (find-file-new-screen "~/.openwin-init") t]
	       ["Dot Openwin-menu"  (find-file-new-screen "~/.openwin-menu") t]
	       ["Digest"   (find-file-new-screen "~/digest/aliases") t]
	       )
	      ("Dired Special"
	       ["Lemacs Lisp"  (dired "/usr/local/pub/gnu/lemacs-19.3/lisp") t]
	       ["Local Lisp"		(dired "/usr/local/lib/elisp") t]
	       ["Lemacs Source"	(dired "/usr/local/pub/gnu/lemacs-19.3/src") t]
	       ["Perl"        (dired "~/scripts/perl") t]
	       ["Admin"       (dired "/usr/local/adm") t]
	       )
	      ["Save Buffer"		save-buffer		t]
	      ["Save Buffer As..."	write-file		t]
	      ["Revert Buffer"	revert-buffer		t]
	      "-----"
	      ["Print Buffer"		lpr-buffer		t]
	      "-----"
	      ["Delete Screen"	delete-screen		t]
	      ["Kill Buffer..."	kill-buffer		t]
	      ["Exit Emacs"		save-buffers-kill-emacs	t]
	      )
	     ("Edit"	["Undo"	       	advertised-undo	   t]
	      ["Cut"	       	x-kill-primary-selection   t]
	      ["Copy"	       	x-copy-primary-selection   t]
	      ["Paste"		x-yank-clipboard-selection t]
	      ["Clear"		x-delete-primary-selection t]
	      )
	     ("Buffers"	"")
	     ("Applications" 
	      ["Read Mail"		vm			t]
	      ["Read News"		gnus			t]
	      ["Info"			info			t]
	      ["Compose Mail"		mail			t]
	      ["Compile"		compile			t]
	      ["Kill Processes"         vkill                   t]
	      )
	     ("Spelling"
	      ["Spell Buffer"		ispell-buffer		t]
	      ["Spell Word"		ispell-word		t]
	      ["Spell Region"		ispell-region		t]
	      )
	     ("Help"	["Info"			info			t]
	      ["Describe Mode"	describe-mode		t]
	      ["Command Apropos..."	command-apropos		t]
	      ["List Keybindings"	describe-bindings	t]
	      ["Describe Key..."	describe-key		t]
	      ["Describe Function..."	describe-function	t]
	      ["Describe Variable..."	describe-variable	t]
	      "-----"
	      ["Unix Manual..."	manual-entry		t]
	      ["Emacs Tutorial"	help-with-tutorial	t]
	      ["Emacs News"		view-emacs-news		t]
	      )
	     ))
    ;; (set-screen-menubar default-menubar)  ;; Lucid 19.2

    ;; Note that I haven't figured out how to make the default-menubar
    ;; show up on all of the screens yet in 19.3  I've tried current-menubar,
    ;; menubar, buffer-menubar, etc...  I guess I just need to put
    ;; this in my load hooks for the modes I use.
     (set-buffer-menubar (copy-sequence default-menubar))  ;; Lucid 19.3

;; Mail from/subjects in modeline/minibuffer
     (load-library "reportmail")
     (setq display-time-my-addresses
	   '("Michael J. Lamoureux" "lamour" "Michael Lamoureux"))
     (setq display-time-junk-mail-checklist
	   '(("From" "lamour" "Michael Lamoureux" "Michael J. Lamoureux"
	             "daemon" "Mail Delivery Subsystem")
	     ("To" "awizard" "a-wizard" "a.wizard")))
     (setq display-time-mail-ring-bell t)
     (display-time)

;; info-dg mode
     (load "info-dg" nil t)

;; Jamies gnus/vm stuff
     (load "gnus-lucid" nil t)	;; move these to hooks
     (load "vm-lucid" nil t)

;; delete zmacs regions
     (load "pending-del" nil t)       ;; worked a lot better in 19.2

;; define font-lock faces...
     (make-face 'font-lock-comment-face)
     (make-face 'font-lock-string-face)
     (make-face 'font-lock-doc-string-face)
     (make-face 'font-lock-function-name-face)
     (make-face 'font-lock-keyword-face)

     ;; I'm using an antiquewhite3 background (for those who
     ;; are baffled by these choices
     (set-face-foreground 'font-lock-comment-face "red3")
     (set-face-foreground 'font-lock-string-face "blue3")
     (set-face-foreground 'font-lock-doc-string-face "white")
     (set-face-foreground 'font-lock-function-name-face "yellow")
     (set-face-foreground 'font-lock-keyword-face "purple")

;; start font-lock
;;   (this has to be done here so the redef of dummy-font-lock-mode-hook
;;    below will actually take...there should be a better way.)
(font-lock-mode 1)

;; font-lock Perl mode (I ported my Perl modes from Lightbrite and
;;                      lhilit to use font-lock)
;;    still working out some problems with this...
;;    1) the expression for "sub" doesn't work...I haven't looked at it.
;;    2) font lock crashes on one of my perl scripts with this def
;;                         ...also haven't looked at it yet.
;;    3) the last expression will never highlight in font-lock...don't care.
(defvar perl-font-lock-keywords
  (list
   "[ \n\t{]*\\(if\\|until\\|while\\|elsif\\|else\\|unless\\|for\\|foreach\\|continue\\|exit\\|die\\|last\\|goto\\|next\\|redo\\|return\\|exec\\)[ \n\t;(]"
   "\\(#endif\\|#else\\|#ifdef\\|#ifndef\\|#if\\|#include\\|#define\\|#undef\\)"
   '("^[ \n\t]*sub[ \t]+\\([^ \t{]+\\)\\{" . font-lock-function-name-face)
   '("[ \n\t{]*\\(eval\\)[ \n\t(;]" . font-lock-function-name-face)
   '("\\(--- .* ---\\|=== .* ===\\)" . font-lock-doc-string-face)))

;; add perl mode to font-lock hook
(defun dummy-font-lock-mode-hook ()
  (cond ((memq major-mode '(lisp-mode emacs-lisp-mode))
	 (set (make-local-variable 'font-lock-keywords)
	      lisp-font-lock-keywords))
	((memq major-mode '(c-mode c++-mode))
	 (set (make-local-variable 'font-lock-keywords)
	      c-font-lock-keywords))
	((eq major-mode 'perl-mode)
	 (set (make-local-variable 'font-lock-keywords)
	      perl-font-lock-keywords))
	))

;; font-lock mode hooks
     (setq emacs-lisp-mode-hook '(lambda () (font-lock-mode 1)))
     (setq c-mode-hook '(lambda () (font-lock-mode 1)))
     (setq perl-mode-hook '(lambda () (font-lock-mode 1)))

(setq font-lock-mode-hook 'dummy-font-lock-mode-hook)

     (play-sound 'auto-save-error)  ;; gong (so I know everything's loaded)
    )
)

From help-lucid-emacs-request@lucid.com  Tue Sep 22 11:27:46 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA07628; Tue, 22 Sep 92 11:27:46 PDT
Received: by heavens-gate.lucid.com id AA02116g; Tue, 22 Sep 92 11:27:10 PDT
Received: from ingr.ingr.com by heavens-gate.lucid.com id AA02106g; Tue, 22 Sep 92 11:25:31 PDT
Received: from matis.UUCP by ingr.ingr.com (5.65c/1.920611)
	id AA08292; Tue, 22 Sep 1992 13:25:36 -0500
Received: from simpson.ingr.com by turtles (4.1/SMI-4.1)
	id AA12627; Tue, 22 Sep 92 19:18:50 IST
Received: by simpson.ingr.com (4.1/SMI-4.1)
	id AA16303; Tue, 22 Sep 92 19:17:58 IST
From: matis!amir@lucid.com (Amir J Katz)
Message-Id: <9209221717.AA16303@simpson.ingr.com>
Subject: 19.3 hangs when creating new screens?
To: help-lucid-emacs@lucid.com (Lucid Emacs help M.L.)
Date: Tue, 22 Sep 92 19:17:56 EET
Cc: bug-lucid-emacs@lucid.com (Lucid Emacs Bug M.L.),
        jwz@lucid.com (Jamie Zawinski)
Organization: SEE Technologies Ltd.
Reply-To: matis!amir@lucid.com
X-Reply-To: amir@matis.ingr.COM
X-Mailer: ELM [version 2.3 PL11]

[This is a repost - I have not received anything]

Guys,
I've built Lucid Emacs 19.3, and the following functions (suggested recently
by someone on the list) hang lemacs. A new screen is opened, but then lemacs
goes to sleep and never comes back. Any idea? Thanks in advance. 
BTW, sometimes even 'C-x 5' (x-new-screen) hangs lemacs.

My configuration is:
  SparcStation 1+ w/SunOS 4.1.3
  gcc 2.2.2
  MIT X11R5, patch 17

---------------------------------------
(defun x-find-file (filename)
  "Does find file in new X Window"
  (interactive "Ffind file new screen: ")
  (select-screen (x-create-screen nil))
  (switch-to-buffer (find-file-noselect filename)))

(defun y-find-file (filename)
  "Does find file in new X Window"
  (interactive)
  (select-screen (x-create-screen nil))
  (switch-to-buffer (find-file-noselect filename)))

(defun find-dot-emacs ()
  (interactive)
  (y-find-file "~/.emacs")
  )

;; add new item to existing menu
(add-menu-item '("File")  "Find File New Screen"  'x-find-file t)
;; add a new menu
(add-menu-item '("--Dot Files--") ".emacs"        'find-dot-emacs t)

---------------------------------------

-- 
/* ----------------------------------------------------------- */
/*  Amir J. Katz             |   amir@matis.ingr.COM           */
/*  System Specialist        |   Voice:  +972 52-584684        */
/*  SEE Technologies Ltd.    |   Fax:    +972 52-543917        */
/* ............ Solaris 2.0 - The Final Frontier ? ........... */


From help-lucid-emacs-request@lucid.com  Tue Sep 22 16:26:06 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA08609; Tue, 22 Sep 92 16:26:06 PDT
Received: by heavens-gate.lucid.com id AA03015g; Tue, 22 Sep 92 16:25:41 PDT
Received: from bond.crim.ca by heavens-gate.lucid.com id AA03011g; Tue, 22 Sep 92 16:22:49 PDT
Received: from fatman.crim.ca by bond.crim.ca (4.1/SMI-4.1)
	id AA14020; Tue, 22 Sep 92 19:23:31 EDT
Received: by fatman.crim.ca (4.1/SMI-4.1)
	id AA16467; Tue, 22 Sep 92 19:22:13 EDT
Date: Tue, 22 Sep 92 19:22:13 EDT
From: paquette%fatman.crim.ca@lucid.com (Marc Paquette)
Message-Id: <9209222322.AA16467@fatman.crim.ca>
To: danny@amil.co.il
Cc: help-lucid-emacs@lucid.com
In-Reply-To: Danny Bar-Dov's message of Tue, 22 Sep 92 08:25:18 IST <9209220625.AA17521@amil.co.il>
Subject: deleting selection


> Some of the users here would like to be able to delete
> the currently selected text (active region).

If your running Lucid V19.3, it's already in there.  Just load
pending-del.el in your .emacs:

(load "pending-del")

> It would be nice to change the behavior of the Delete/Backspace
> so that regularly it will delete one character backword but when
> a region is active it will delete it all.

The aforementioned package does that.

Marc Paquette              |Centre de recherche informatique de Montreal (CRIM)
Conseiller Technique, UN*X | 3744 rue Jean-Brillant, bureau 500
paquette@crim.ca           | Montreal (Quebec) Canada H3T 1P1
Tel : (514) 340-5758       | Fax   : (514) 340-5777


From help-lucid-emacs-request@lucid.com  Wed Sep 23 07:20:33 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA11127; Wed, 23 Sep 92 07:20:33 PDT
Received: by heavens-gate.lucid.com id AA04282g; Wed, 23 Sep 92 07:19:52 PDT
Received: from hydra.gatech.edu (hydra-rich.gatech.edu) by heavens-gate.lucid.com id AA04278g; Wed, 23 Sep 92 07:19:44 PDT
Received: from prism (sundial.gatech.edu) by hydra.gatech.edu (5.65c/3.1)
	id AA00013; Wed, 23 Sep 1992 10:20:45 -0400
Received: by prism.gatech.edu (4.1/1.0)
	id AA05855; Wed, 23 Sep 92 10:20:26 EDT
Date: Wed, 23 Sep 92 10:20:26 EDT
From: gt1797a@prism.gatech.edu (Ryan Mulderig)
Message-Id: <9209231420.AA05855@prism>
Cc: help-lucid-emacs@lucid.com
Subject: PLEASE TAKE ME OFF THIS LIST!!!!!
References: <Buy1u3.LHA@cs.columbia.edu>
	<4430.717110927@JUNIN.MT.CS.CMU.EDU>


I have posted to request several times and have never gotten an answer
- please take me off this list!!!!!!!!

--
For one throb of the artery, / While on the old grey stone I sat
Under the old wind-broken tree, / I knew the that One is animate
Mankind is inanimate phantasy
 - WB Yeats

From help-lucid-emacs-request@lucid.com  Wed Sep 23 08:18:44 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA11335; Wed, 23 Sep 92 08:18:44 PDT
Received: by heavens-gate.lucid.com id AA04439g; Wed, 23 Sep 92 08:18:18 PDT
Received: from watergate.lucid ([192.31.212.117]) by heavens-gate.lucid.com id AA04435g; Wed, 23 Sep 92 08:18:11 PDT
Received: by watergate.lucid (4.1/SMI-4.1)
	id AA13742; Wed, 23 Sep 92 08:18:58 PDT
Date: Wed, 23 Sep 92 08:18:58 PDT
From: eb%watergate@lucid.com (Eric Benson)
Message-Id: <9209231518.AA13742@watergate.lucid>
To: gt1797a@prism.gatech.edu (Ryan Mulderig)
Cc: help-lucid-emacs@lucid.com
Subject: Re: PLEASE TAKE ME OFF THIS LIST!!!!!
In-Reply-To: Ryan Mulderig's message of Wed 23-Sep-92 10:20:26 EDT <9209231420.AA05855@prism>
References: <4430.717110927@JUNIN.MT.CS.CMU.EDU>
	<9209231420.AA05855@prism>
	<Buy1u3.LHA@cs.columbia.edu>
Reply-To: eb@lucid.com

Sorry, Ryan.  Jamie is the only recipient of "request" mail, and he's
on vacation.  That accounts for the lack of answers to all your
questions.  He'll be back at the end of next week.

From help-lucid-emacs-request@lucid.com  Wed Sep 23 10:47:05 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA11856; Wed, 23 Sep 92 10:47:05 PDT
Received: by heavens-gate.lucid.com id AA04852g; Wed, 23 Sep 92 10:46:36 PDT
Received: from watergate.lucid ([192.31.212.117]) by heavens-gate.lucid.com id AA04848g; Wed, 23 Sep 92 10:46:20 PDT
Received: by watergate.lucid (4.1/SMI-4.1)
	id AA13810; Wed, 23 Sep 92 10:47:08 PDT
Date: Wed, 23 Sep 92 10:47:08 PDT
From: eb%watergate@lucid.com (Eric Benson)
Message-Id: <9209231747.AA13810@watergate.lucid>
To: Tony.Bennett@East.Sun.COM (Tony E. Bennett)
Cc: help-lucid-emacs@lucid.com
Subject: Re: is it ok to run emacs v18 elc files under lucid?
In-Reply-To: Tony E. Bennett's message of Tue 22-Sep-92 12:11:34 EDT <9209221611.AA06443@sunpix.East.Sun.COM>
References: <9209221611.AA06443@sunpix.East.Sun.COM>
Reply-To: eb@lucid.com

There's no problem with loading .elc files compiled by Emacs 18 into
lemacs.  To go the other way around, you must do something like this:

(defun bc18 (file)
  (interactive "fByte compile file: ")
  (let ((byte-compile-emacs18-compatibility t)
	(byte-compile-generate-emacs19-bytecodes nil))
    (byte-compile-file (expand-file-name file))))

From help-lucid-emacs-request@lucid.com  Wed Sep 23 10:52:53 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA11865; Wed, 23 Sep 92 10:52:53 PDT
Received: by heavens-gate.lucid.com id AA04881g; Wed, 23 Sep 92 10:52:25 PDT
Received: from moebius.loria.fr by heavens-gate.lucid.com id AA04871g; Wed, 23 Sep 92 10:51:50 PDT
Received: by moebius.loria.fr id AA10638
  (5.65c+/IDA-1.4.3 for help-lucid-emacs@lucid.com); Wed, 23 Sep 92 19:52:00 +0200
Date: Wed, 23 Sep 92 19:52:00 +0200
From: Guido Bosch <Guido.Bosch%loria.fr@lucid.com>
Message-Id: <9209231752.AA10638@moebius.loria.fr>
To: help-lucid-emacs@lucid.com
Subject: What happened to default.el??
Reply-To: Guido BOSCH <bosch%loria.fr@lucid.com>

Hi,

It seems that Lucid Emacs 19.3 dosn't consider any longer the
default.el library file, though the info node "Init File(emacs)" keeps
on claiming that:

 >    At some sites, there is a "default init file", which is the library
 > named `default.el', found via the standard search path for libraries. 
 > The Emacs distribution contains no such library; your site may create
 > one for local customizations.  If this library exists, it is loaded
 > whenever you start Emacs.  But your init file, if any, is loaded
 > first; if it sets `inhibit-default-init' non-`nil', then `default' is
 > not loaded.

This is a (not documented?) difference in respect with lemacs 19.2.

How can I do site global installations that don't require
dumping a new lemacs after each modification?


From help-lucid-emacs-request@lucid.com  Wed Sep 23 20:15:12 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA13357; Wed, 23 Sep 92 20:15:12 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA06370g; Wed, 23 Sep 92 20:14:29 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA06541; Wed, 23 Sep 92 23:15:04 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA06537; Wed, 23 Sep 92 23:15:02 -0400
Path: uunet!mcsun!uknet!edcastle!edcogsci!cogsci!rjc
From: rjc@cogsci.ed.ac.uk (Richard Caley)
Newsgroups: alt.lucid-emacs.help
Subject: find-menu-item
Message-Id: <RJC.92Sep23181626@daiches.cogsci.ed.ac.uk>
Date: 23 Sep 92 17:16:26 GMT
Distribution: alt
Organization: Human Communication Research Center
Lines: 17
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


This fucntion isn't documented, but it seems to be incredably useful.
In fact I can't find any other reasonable way to change the status of
menu items by name. This is just a vote that it should be documented
and preserved in future versions. 

	(if (setq item (find-menu-item screen
			      (list "Others" (buffer-name buffer))
			      ))	
		  (aset (car item) 2 nil)
		)

Or is there a better way?

--
rjc@cogsci.ed.ac.uk			_O_
					 |<

From help-lucid-emacs-request@lucid.com  Wed Sep 23 20:16:17 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA13362; Wed, 23 Sep 92 20:16:17 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA06376g; Wed, 23 Sep 92 20:15:32 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA06663; Wed, 23 Sep 92 23:16:17 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA06659; Wed, 23 Sep 92 23:16:15 -0400
Path: uunet!mcsun!uknet!edcastle!edcogsci!cogsci!rjc
From: rjc@cogsci.ed.ac.uk (Richard Caley)
Newsgroups: alt.lucid-emacs.help
Subject: gnuserv
Message-Id: <RJC.92Sep23191507@daiches.cogsci.ed.ac.uk>
Date: 23 Sep 92 18:15:07 GMT
Distribution: alt
Organization: Human Communication Research Center
Lines: 451
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


Ok, here is an attempt at adapting gnuserv to lemacs. It creates a
screen for each client and puts a menu of the buffers being edited for
this client onto the menubar.

--
rjc@cogsci.ed.ac.uk			_O_
					 |<

--- 8< --- 8< --- 8< --- CUT HERE --- 8< --- 8< --- 8< ---
; Lisp Interface code between GNU Emacs and gnuserv.
;
; This file is part of GNU Emacs.
;
; Copying is permitted under those conditions described by the GNU
; General Public License.
;
; Copyright (C) 1989 Free Software Foundation, Inc.
;
; Author: Andy Norman (ange@hplb.hpl.hp.com) based on
;         'lisp/server.el' from the 18.52 GNU Emacs distribution.
; Lucid adaptations by Richard Caley (rjc@cogsci.ed.ac.uk).
;
; Please mail bugs and suggestions to the author at the above address.


(defconst gnuserv-rcs-header-id "$Header: /home/user1/rjc/lib/emacs/rjc-lisp/RCS/gnuserv-lucid.el,v 1.1 1992/09/23 17:26:16 rjc Exp $")

(provide 'gnuserv)

(defvar server-program "gnuserv"
  "*The program to use as the edit server")

(defvar server-process nil 
  "the current server process")

(defvar server-string ""
  "the last input string from the server")

(defvar current-client nil
  "the client we are currently talking to")

(defvar server-clients nil
  "List of current server clients.
Each element is (CLIENTID SCREEN BUFFER...) where CLIENTID is an integer
that can be given to the server process to identify a client.
When a buffer is killed, it is removed from this list.")

(defvar server-buffer-clients nil
  "List of clientids for clients requesting editing of current buffer.")

(make-variable-buffer-local 'server-buffer-clients)
(setq-default server-buffer-clients nil)
(or (assq 'server-buffer-clients minor-mode-alist)
    (setq minor-mode-alist (cons '(server-buffer-clients " Server") minor-mode-alist)))

(defun server-log (string)
  "If a *server* buffer exists, write STRING to it for logging purposes."
  (if (get-buffer "*server*")
      (save-excursion
	(set-buffer "*server*")
	(goto-char (point-max))
	(insert string)
	(or (bolp) (newline)))))


(defun server-sentinel (proc msg)
  (cond ((eq (process-status proc) 'exit)
	 (server-log (message "Server subprocess exited")))
	((eq (process-status proc) 'signal)
	 (server-log (message "Server subprocess killed")))))


(defun server-process-display-error (string)
  "When an error has been reported from the server, display the error in a
pop-up window."
  (let ((cur (selected-window))
	(pop-up-windows t))
    (pop-to-buffer (get-buffer-create "*server*"))
    (set-window-start (selected-window) (point))
    (server-log string)
    (select-window cur)))
    

(defun server-process-filter (proc string)
  "Process incoming requests from the server for GNU Emacs to do some actions."
  (setq server-string (concat server-string string))
  (if (string-match "\n$" server-string) ;wait till request ends with a newline
      (if (string-match "^[0-9]+" server-string) ;client request id
	(progn
	  (server-log server-string)
	  (let ((header (read-from-string server-string)))
	    (setq current-client (car header))
	    (condition-case oops
		(eval (car (read-from-string server-string (cdr header))))
	      (error (setq server-string "")
		     (server-write-to-client current-client oops)
		     (setq current-client nil)
		     (signal (car oops) (cdr oops)))
	      (quit (setq server-string "")
		    (server-write-to-client current-client oops)
		    (setq current-client nil)
		    (signal 'quit nil)))
	    (setq server-string "")))
	(progn				;error string from server
	  (server-process-display-error server-string)
	  (setq server-string "")))))


(defun server-release-outstanding-buffers ()
  "Release all buffers that have clients waiting for them to be finished."
  (interactive)
  (while server-clients
    (let ((buffer (nth 1 (car server-clients)))) ;need to do this for all buffers
      (server-buffer-done buffer))))	; destructively modifies server-clients


(defun server-start (&optional leave-dead)
  "Allow this Emacs process to be a server for client processes.
This starts a server communications subprocess through which
client \"editors\" can send editing commands to this Emacs job.

Prefix arg means just kill any existing server communications subprocess."
  (interactive "P")
  ;; kill it dead!
  (if server-process
      (progn
	(server-release-outstanding-buffers)
	(set-process-sentinel server-process nil)
	(condition-case ()
	    (delete-process server-process)
	  (error nil))))
  ;; If we already had a server, clear out associated status.
  (if leave-dead
      nil
    (if server-process
	(server-log (message "Restarting server")))
    (setq server-string "")
    (setq current-client nil)
    (let ((process-connection-type t))
      (setq server-process (start-process "server" nil server-program)))
    (set-process-sentinel server-process 'server-sentinel)
    (set-process-filter server-process 'server-process-filter)
    (process-kill-without-query server-process)))


(defun server-write-to-client (client form)
  "Write the given form to the given client via the server process."
  (if (and client
	   (eq (process-status server-process) 'run))
      (let ((s (format "%s:%s\n" client form)))
	(send-string server-process s)
	(server-log s))))


(defun server-eval (form)
  "Evaluate form and return result to client."
  (server-write-to-client current-client (eval form))
  (setq current-client nil))


(defun server-eval-quickly (form)
  "Let client know that we've received the request, but eval the form
afterwards in order to not keep the client waiting."
  (server-write-to-client current-client nil)
  (setq current-client nil)
  (eval form))


(defun server-make-window-visible ()
  "Try to make this window even more visible."
  (if (and (boundp 'window-system)
	   (boundp 'window-system-version)
	   (eq window-system 'x)
	   (eq window-system-version 11)
	   (fboundp 'x-remap-window))
      (progn
	(x-remap-window)
	(accept-process-output))))	; give window chance to re-display text

(defun server-make-screen ()

  "Make a new screen for server editing."

  (let ((screen (x-create-screen '())))
    (select-screen screen)
    )
  )

(defun server-find-file (file)
  "Edit file FILENAME.
Switch to a buffer visiting file FILENAME,
creating one if none already exists."
  (let ((obuf (get-file-buffer file)))
    (if (and obuf (set-buffer obuf))
	(if (file-exists-p file)
	    (if (or (not (verify-visited-file-modtime obuf))
		    (buffer-modified-p obuf))
		(revert-buffer t nil))
	  (if (y-or-n-p
	       (concat "File no longer exists: "
		       file
		       ", write buffer to file? "))
	      (write-file file)))
      (set-buffer (find-file-noselect file))))
  (switch-to-buffer (current-buffer)))


(defun server-edit-files-quickly (l)
  "For each (lineno . file) pair in the given list, edit the file and goto the
given line number. Note that unlike server-edit-files, no information is saved
about clients waiting for this buffer to be killed."
  (server-write-to-client current-client nil)
  (setq current-client nil)
  (if (fboundp 'x-create-screen)
      (server-make-screen)
    (server-make-window-visible)
    )
  (while l
    (let ((line (car (car l)))
	  (path (cdr (car l))))
      (server-find-file path)
      (goto-line line))
    (setq l (cdr l))))

(defun server-do-display ()

  "Put the current client's first buffer onto the current screen."

  (let* ((client (assq current-client server-clients))
	 (screen (car (cdr client)))
	 (buffers (cdr (cdr client)))
	 )

    (switch-to-buffer (car buffers))

    (set-screen-menubar (cons
			 [ "Done" server-edit t] 
			 (cons
			  [ "Save" server-save-edit t]
			  (cons
			   (cons "Others"
				 (mapcar '(lambda (b)
					    (vector (buffer-name b)
						    (list 'switch-to-buffer b)
						    t)
					    ) buffers))
			   default-menubar))))
    )
  )


(defun server-edit-files (l &optional make-screen-fn)
  "For each (lineno . file) pair in the given list, edit the given file for the
client and save enough information such that server-kill-buffer can let the client
know when the buffer has been finished with."
  (if (fboundp 'x-create-screen)
      (apply (or make-screen-fn 'server-make-screen) nil)
    (server-make-window-visible)
    )
  (while l
    (let ((line (car (car l)))
	  (path (cdr (car l))))
      (server-find-file path)
      (let ((old-clients (cdr (assq current-client server-clients)))
	    (buffer (current-buffer)))
	(goto-line line)
	(setq server-buffer-clients
	      (cons current-client server-buffer-clients))
	(if old-clients			;client already waiting for buffers?
	    (nconc old-clients (list buffer)) ;yes -- append this one as well
	  (setq server-clients		;nope -- make a new record
		(cons (list current-client (selected-screen) buffer)
		      server-clients)))))
      (setq l (cdr l)))
  (server-do-display)
  (message (substitute-command-keys
	    "When done with a buffer, type \\[server-edit].")))


(defun server-get-buffer (buffer)
  "One arg, a string or a buffer. Return either a buffer object or
throw an error if the buffer named was not a buffer."
  (if (null buffer)
      (current-buffer)
    (let ((buf (get-buffer buffer)))
      (if (null buf)
	  (if (stringp buffer)
	      (error "No buffer named %s" buffer)
	    (error "Invalid buffer argument"))
	buf))))


(defun server-kill-buffer (buffer)
  "One arg, a string or a buffer.  Get rid of the specified buffer.
NOTE: This function has been enhanced to allow for remote editing
in the following way:

If the buffer is waited upon by one or more clients, and a client is
not waiting for other buffers to be killed, then the client is told
that the buffer has been killed."
  (interactive "bKill buffer ")
  (setq buffer (server-get-buffer buffer))
  (if (buffer-name buffer)
      (save-excursion
	(set-buffer buffer)
	(let ((old-clients server-clients))
	  (server-real-kill-buffer buffer) ;try to kill it
	  (if (buffer-name buffer)	;succeeded in killing?
	      nil			;nope
	    (while old-clients
	      (let ((client (car old-clients)))
		(delq buffer client)
		(if (cdr (cdr client))	;pending buffers?
		    nil			;yep
		  (server-write-to-client (car client) nil) ;nope, tell client
		  (delete-screen (car (cdr client)))
		  (setq server-clients (delq client server-clients))))
	      (setq old-clients (cdr old-clients))))))))


(defun server-kill-all-local-variables ()
  "Eliminate all the buffer-local variable values of the current buffer.
This buffer will then see the default values of all variables.
NOTE: This function has been modified to ignore the variable 
server-buffer-clients."
  (let ((clients server-buffer-clients))
    (server-real-kill-all-local-variables)
    (if clients
	(setq server-buffer-clients clients))))


(or (fboundp 'server-real-kill-buffer)
  (fset 'server-real-kill-buffer (symbol-function 'kill-buffer)))

(fset 'kill-buffer 'server-kill-buffer)

(or (fboundp 'server-real-kill-all-local-variables)
    (fset 'server-real-kill-all-local-variables
	  (symbol-function 'kill-all-local-variables)))

(fset 'kill-all-local-variables 'server-kill-all-local-variables)


(defun server-buffer-done (buffer)
  "Mark BUFFER as \"done\" for its client(s).
Buries the buffer, and returns another server buffer
as a suggestion for what to select next."
  (let ((next-buffer nil)
	(old-clients server-clients))
    (while old-clients
      (let ((client (car old-clients))
	    item)

	(if (memq buffer client)
	    (progn
	      (delq buffer client )
	      (or next-buffer 
		  (not (eq (selected-screen) (car (cdr client))))
		  (not (cdr (cdr client)))
		  (setq next-buffer (car (cdr (cdr client))))
		  )

	      (if (setq item (find-menu-item (screen-menubar (car (cdr client)))
			      (list "Others" (buffer-name buffer))
			      ))
		  (aset (car item) 2 nil)
		)

	      ;; If client now has no pending buffers,
	      ;; tell it that it is done, and forget it entirely.
	      (if (cdr (cdr client))
		  nil
		(server-write-to-client (car client) nil)
		(delete-screen (car (cdr client)))
		(setq server-clients (delq client server-clients))))
	  )
	)
      (setq old-clients (cdr old-clients)))
    (if (buffer-name buffer)
	(save-excursion
	  (set-buffer buffer)
	  (setq server-buffer-clients nil)))
    (bury-buffer buffer)
    next-buffer))


(defun mh-draft-p (buffer)
  "Return non-nil if this BUFFER is an mh <draft> file.
Since MH deletes draft *BEFORE* it is edited, the server treats them specially."
 ;; This may not be appropriately robust for all cases.
  (string= (buffer-name buffer) "draft"))


(defun server-done ()
  "Offer to save current buffer, mark it as \"done\" for clients,
bury it, and return a suggested buffer to select next."
  (let ((buffer (current-buffer)))
    (if server-buffer-clients
	(progn
 	  (if (mh-draft-p buffer)
 	      (progn (save-buffer)
		     (write-region (point-min) (point-max)
				   (concat buffer-file-name "~"))
		     (kill-buffer buffer))
	    (if (and (buffer-modified-p)
		     (y-or-n-p (concat "Save file " buffer-file-name "? ")))
		(save-buffer buffer)))
	  (server-buffer-done buffer)))))


(defun server-edit (&optional arg)
  "Switch to next server editing buffer; say \"Done\" for current buffer.
If a server buffer is current, it is marked \"done\" and optionally saved.
MH <draft> files are always saved and backed up, no questions asked.
When all of a client's buffers are marked as \"done\", the client is notified.

If invoked with a prefix argument, or if there is no server process running, 
starts server process and that is all.  Invoked by \\[server-edit]."
  (interactive "P")
  (if (or arg
	  (not server-process)
	  (memq (process-status server-process) '(signal exit)))
      (server-start nil)
    (server-switch-buffer (server-done))))

(defun server-save-edit (&optional arg)
  "Save buffer, then act like server-edit"

  (interactive "P")
  (save-buffer)
  (server-edit nil)
  )

(defun server-switch-buffer (next-buffer)
  "Switch to another buffer, preferably one that has a client.
Arg NEXT-BUFFER is a suggestion; if it is a live buffer, use it."
  (if next-buffer
      (if (and (bufferp next-buffer)
	       (buffer-name next-buffer))
	  (switch-to-buffer next-buffer)
	;; If NEXT-BUFFER is a dead buffer,
	;; remove the server records for it
	;; and try the next surviving server buffer.
	(server-switch-buffer
	 (server-buffer-done next-buffer)))
    )
  )
(global-set-key "\C-x#" 'server-edit)

 --- 8< --- 8< --- 8< --- CUT HERE --- 8< --- 8< --- 8< --- 

From help-lucid-emacs-request@lucid.com  Thu Sep 24 03:11:58 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA14696; Thu, 24 Sep 92 03:11:58 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA06765g; Thu, 24 Sep 92 03:11:28 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA29971; Thu, 24 Sep 92 06:12:10 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA29964; Thu, 24 Sep 92 06:12:07 -0400
Path: uunet!spool.mu.edu!agate!doc.ic.ac.uk!uknet!mcsun!sunic!dkuug!daimi!lynbech
From: lynbech%daimi.aau.dk@lucid.com (Christian Lynbech)
Newsgroups: alt.lucid-emacs.help
Subject: Re: What happened to default.el??
Message-Id: <1992Sep24.093033.10985@daimi.aau.dk>
Date: 24 Sep 92 09:30:33 GMT
References: <9209231752.AA10638@moebius.loria.fr>
Organization: DAIMI: Computer Science Department, Aarhus University, Denmark
Lines: 47
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Guido.Bosch%loria.fr@lucid.com (Guido Bosch) writes:

>Hi,

>It seems that Lucid Emacs 19.3 dosn't consider any longer the
>default.el library file, though the info node "Init File(emacs)" keeps
>on claiming that:

> >    At some sites, there is a "default init file", which is the library
> > named `default.el', found via the standard search path for libraries. 
> > The Emacs distribution contains no such library; your site may create
> > one for local customizations.  If this library exists, it is loaded
> > whenever you start Emacs.  But your init file, if any, is loaded
> > first; if it sets `inhibit-default-init' non-`nil', then `default' is
> > not loaded.

>This is a (not documented?) difference in respect with lemacs 19.2.

>How can I do site global installations that don't require
>dumping a new lemacs after each modification?

It works for me.

Are you sure you start lemacs up in the standard way. For
instance if you use the -q option, the default file is NOT loaded. I
had this problem when trying to use separate .emacs files for V18 and
V19. The solution to that problem was to have a small .emacs that
determines the version and then load an apropriate (bytecompiled)
startup file.

Check out startup.el for the exact startup-procedure. This is here the
code for loading the startup files is found.



------------------------------------------------------------------------------
Christian Lynbech

DAIMI						office: R0.32   phone: 5034
University of Aarhus,DK-Denmark                 email: lynbech@daimi.aau.dk
------------------------------------------------------------------------------
			  EMACS, The One True Editor                       


Hit the philistines three times over the head with the Elisp reference manual.

                                        - petonic@hal.com (Michael A. Petonic)

From help-lucid-emacs-request@lucid.com  Thu Sep 24 08:33:53 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA15420; Thu, 24 Sep 92 08:33:53 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA07171g; Thu, 24 Sep 92 08:31:48 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA16154; Thu, 24 Sep 92 11:32:32 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA16145; Thu, 24 Sep 92 11:32:26 -0400
Path: uunet!nestroy.wu-wien.ac.at!dec4.wu-wien.ac.at!neumann
From: neumann%dec4.wu-wien.ac.at@lucid.com (Gustaf Neumann)
Newsgroups: alt.lucid-emacs.help,alt.lucid-emacs.bug
Subject: starting lemacs from a window manager
Date: Thu, 24 Sep 92 17:29:11 MET
Organization: WU-Wien
Lines: 41
Distribution: world
Message-Id: <7173485518-317828@dec4.wu-wien.ac.at>
Nntp-Posting-Host: dec4.wu-wien.ac.at
Xref: uunet alt.lucid-emacs.help:487 alt.lucid-emacs.bug:211
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Just in case, someone is trying to start lemacs from the 
window manager, and wonders, why it does not work: here comes
a solution.

lemacs needs the TERM variable to be set to start correctly!
i had the phenomenon that emacs worked perfectly when called
from a shell, but strangely, it did not come up, when i tried to start
it from vtwm (or twm, mwm, tvtwm).

the relevant code in dispnew.c reads as follows [#ifdef VMS removed for
simplicity]:

  terminal_type = (char *) getenv ("TERM");

  if (!terminal_type
#ifdef HAVE_X_WINDOWS
      && (inhibit_window_system || !egetenv ("DISPLAY"))
#endif
      )
    {
      fprintf (stderr, "Please set the environment variable TERM; see tset(1).\n");
      exit (1);
    }
  term_init (terminal_type);

lemacs is compiled with HAVE_X_WINDOWS, the DISPLAY variable is
set in the window-managers environment (TERM is NOT set). so, lemacs 
does not complain.

term_init is called with a null string as argument and dumps core
on a tgetent with the null string. 

the simplest "fix" is to set the TERM variable from xdm.
-gustaf
PS: DECstation 5000/200, ultrix 4.2, lemacs 19.3, gcc 2.2.2, X11R5
--
Gustaf Neumann          neumann@dec4.wu-wien.ac.at, neumann@awiwuw11.bitnet
Vienna University of Economics and Business Administration 
Augasse 2-6,  A-1090 Vienna, Austria		
Tel: +43 (222) 31-336 x4533  	Fax: 347-555


From help-lucid-emacs-request@lucid.com  Thu Sep 24 12:31:54 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA16377; Thu, 24 Sep 92 12:31:54 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA07791g; Thu, 24 Sep 92 12:31:22 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA01124; Thu, 24 Sep 92 15:32:05 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA01120; Thu, 24 Sep 92 15:32:03 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!boulder!news!grunwald
From: grunwald@mumble.cs.colorado.edu (Dirk Grunwald)
Subject: font-lock.el
Message-Id: <GRUNWALD.92Sep24131225@mumble.cs.colorado.edu>
Nntp-Posting-Host: mumble.cs.colorado.edu
Reply-To: grunwald@foobar.cs.colorado.edu
Organization: University of Colorado at Boulder
Date: 24 Sep 92 13:12:25
Lines: 18
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


Here's my font-lock pattern for TeX mode - looks pretty nice & is
actually quite useful.

(setq tex-font-lock-keywords
  (list
   '("\\(\\\\\\w+\\)" 1 font-lock-keyword-face t)
   '("{\\\\em\\([^}]+\\)}" 1 font-lock-comment-face t)
   '("{\\\\bf\\([^}]+\\)}" 1 font-lock-keyword-face t)
   '("^[ \t\n]*\\\\def[\\\\@]\\(\\w+\\)" 1 font-lock-function-name-face t)
   '("\\\\\\(begin\\|end\\){\\([a-zA-Z0-9]+\\)}" 2 font-lock-function-name-face t)
   '("\\$\\([^$]*\\)\\$" 1 font-lock-string-face t)
   )
  )

There needs to be an easier to way extend font-lock-mode -- right now,
I just modify a copy of the original. Perhaps an alist of mode names
and their font-locks keywords lists.

From help-lucid-emacs-request@lucid.com  Thu Sep 24 14:59:05 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA17001; Thu, 24 Sep 92 14:59:05 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA08326g; Thu, 24 Sep 92 14:58:39 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA11232; Thu, 24 Sep 92 17:59:25 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA11227; Thu, 24 Sep 92 17:59:22 -0400
Path: uunet!munnari.oz.au!spool.mu.edu!agate!doc.ic.ac.uk!uknet!mcsun!sunic!dkuug!daimi!lynbech
From: lynbech%daimi.aau.dk@lucid.com (Christian Lynbech)
Newsgroups: alt.lucid-emacs.help
Subject: Re: What happened to default.el??
Message-Id: <1992Sep24.093033.10985@daimi.aau.dk>
Date: 24 Sep 92 09:30:33 GMT
References: <9209231752.AA10638@moebius.loria.fr>
Organization: DAIMI: Computer Science Department, Aarhus University, Denmark
Lines: 47
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Guido.Bosch%loria.fr@lucid.com (Guido Bosch) writes:

>Hi,

>It seems that Lucid Emacs 19.3 dosn't consider any longer the
>default.el library file, though the info node "Init File(emacs)" keeps
>on claiming that:

> >    At some sites, there is a "default init file", which is the library
> > named `default.el', found via the standard search path for libraries. 
> > The Emacs distribution contains no such library; your site may create
> > one for local customizations.  If this library exists, it is loaded
> > whenever you start Emacs.  But your init file, if any, is loaded
> > first; if it sets `inhibit-default-init' non-`nil', then `default' is
> > not loaded.

>This is a (not documented?) difference in respect with lemacs 19.2.

>How can I do site global installations that don't require
>dumping a new lemacs after each modification?

It works for me.

Are you sure you start lemacs up in the standard way. For
instance if you use the -q option, the default file is NOT loaded. I
had this problem when trying to use separate .emacs files for V18 and
V19. The solution to that problem was to have a small .emacs that
determines the version and then load an apropriate (bytecompiled)
startup file.

Check out startup.el for the exact startup-procedure. This is here the
code for loading the startup files is found.



------------------------------------------------------------------------------
Christian Lynbech

DAIMI						office: R0.32   phone: 5034
University of Aarhus,DK-Denmark                 email: lynbech@daimi.aau.dk
------------------------------------------------------------------------------
			  EMACS, The One True Editor                       


Hit the philistines three times over the head with the Elisp reference manual.

                                        - petonic@hal.com (Michael A. Petonic)

From help-lucid-emacs-request@lucid.com  Thu Sep 24 16:52:42 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA17265; Thu, 24 Sep 92 16:52:42 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA08781g; Thu, 24 Sep 92 16:52:14 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA15694; Thu, 24 Sep 92 19:53:01 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA15690; Thu, 24 Sep 92 19:52:55 -0400
Newsgroups: alt.lucid-emacs.help,alt.lucid-emacs.bug
Path: uunet!utcsri!torn!cunews!nrcnet0!bnrgate!bcars6a8!bcars68a!jsparkes
From: jsparkes%bcars68a.bnr.ca@lucid.com (Jeff Sparkes)
Subject: pending-del and the minibuffer
Message-Id: <1992Sep24.231042.27134@bcars6a8.bnr.ca>
Nntp-Posting-Host: bcars68a
Organization: Bell-Northern Research Ltd., Ottawa
References: <7173485518-317828@dec4.wu-wien.ac.at>
Date: Thu, 24 Sep 1992 23:10:42 GMT
Lines: 13
Xref: uunet alt.lucid-emacs.help:490 alt.lucid-emacs.bug:214
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


Do this:
	load pending-del
	highlight a region
	try to do M-x ununderline-region

Bad craziness.  Apparently it's trying to do delete-active-region in
the minibuffer, which there isn't a region.
--
--
Jeff Sparkes jsparkes@bnr.ca	Bell-Northern Research, Ottawa (613)765-2503
"For better gas mileage, do not drive with the parking brake on."
  - paraphrased from the owners manual of my Integra.

From help-lucid-emacs-request@lucid.com  Fri Sep 25 12:26:06 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA20697; Fri, 25 Sep 92 12:26:06 PDT
Received: by heavens-gate.lucid.com id AA10897g; Fri, 25 Sep 92 12:24:24 PDT
Received: from motgate.mot.com by heavens-gate.lucid.com id AA10890g; Fri, 25 Sep 92 12:23:45 PDT
Received: from pts1.pts.mot.com ([145.4.3.2]) by pobox.mot.com (4.1/SMI-4.0)
	id AA10958; Fri, 25 Sep 92 14:24:48 CDT
Received: from pts4.pts.mot.com by pts1.pts.mot.com (4.1/SMI-4.1)
	id AA03876; Fri, 25 Sep 92 15:26:04 EDT
Received: from msn25.motorola by pts4.pts.mot.com (4.1/SMI-4.1)
	id AA12654; Fri, 25 Sep 92 15:24:50 EDT
Date: Fri, 25 Sep 92 15:24:50 EDT
From: ex594bw@pts.mot.com ( BOB WEINER)
Message-Id: <9209251924.AA12654@pts4.pts.mot.com>
Received: by msn25.motorola (4.1/SMI-4.1)
	id AA15421; Fri, 25 Sep 92 15:24:25 EDT
To: help-lucid-emacs@lucid.com
Subject: Is there any way to bind depress & release functions for keyboard keys?
Reply-To: bob_weiner@pts.mot.com

I'm interested in looking at chord key presses as a possible input medium.
Is there a way to bind a function to both, say the 'a' key down transition
and the 'a' up transition?

From that I should be able to figure out how to register chord presses.

If not, I think this would be a useful capability.

Bob

From help-lucid-emacs-request@lucid.com  Sun Sep 27 12:22:27 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA26424; Sun, 27 Sep 92 12:22:27 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA13713g; Sun, 27 Sep 92 12:19:48 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA02926; Sun, 27 Sep 92 15:20:39 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA02921; Sun, 27 Sep 92 15:20:36 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!caen!sol.ctr.columbia.edu!sol.ctr.columbia.edu!iansmith
From: iansmith@haring.cc.gatech.edu (Ian Smith)
Subject: help/bugs
Organization: The Multimedia Computing Group
Message-Id: <IANSMITH.92Sep27150926@haring.cc.gatech.edu>
Reply-To: Ian Smith <iansmith@cc.gatech.edu>
Distribution: alt
Date: Sun, 27 Sep 1992 20:09:26 GMT
X-Posted-From: haring.cc.gatech.edu
Nntp-Posting-Host: sol.ctr.columbia.edu
Lines: 23
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I have found the following problems with lucid emacs 19.3 on sparcs
(sunos 4.1.2)...

1) The hook temp-buffer-show-hook (called from with-output-to-temp-buffer)
is not present... some digging in the source found something else called
temp-buffer-show-function which seems to behave similarly.  Is this
just a documentation bug? 

2) lemacs doesn't seem to be well behaved with the audio control panel
(x_gaintool) on suns.  The volume does not seem to be controllable by
any means I have found.

3) The new isearch minor mode doesn't seem to work right if you
are using completion and always-complete.  

Has anyone gotten around any of these?
ian
--
    "Love is a snowmobile racing across the tundra and then suddenly it
     flips over, pinning you underneath. At night, the ice weasels come."
      	      	    	    	    -- Nietzsche
iansmith@cc.gatech.edu


From help-lucid-emacs-request@lucid.com  Mon Sep 28 05:54:27 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA28865; Mon, 28 Sep 92 05:54:27 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA14621g; Mon, 28 Sep 92 05:53:38 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA28888; Mon, 28 Sep 92 08:54:30 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA28878; Mon, 28 Sep 92 08:54:28 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!mcsun!sunic!dkuug!daimi!lynbech
From: lynbech%daimi.aau.dk@lucid.com (Christian Lynbech)
Subject: TTY version of Lucid Emacs, any news ?
Message-Id: <1992Sep28.123013.27540@daimi.aau.dk>
Organization: DAIMI: Computer Science Department, Aarhus University, Denmark
Date: Mon, 28 Sep 92 12:30:13 GMT
Lines: 19
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Is there any answers blowing in the wind on the availability of a TTY
version of lucid? 



------------------------------------------------------------------------------
Christian Lynbech

DAIMI						office: R0.32   phone: 5034
University of Aarhus,DK-Denmark                 email: lynbech@daimi.aau.dk
------------------------------------------------------------------------------
			  EMACS, The One True Editor                       


Hit the philistines three times over the head with the Elisp reference manual.

                                        - petonic@hal.com (Michael A. Petonic)



From help-lucid-emacs-request@lucid.com  Mon Sep 28 10:18:25 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA29769; Mon, 28 Sep 92 10:18:25 PDT
Received: by heavens-gate.lucid.com id AA15091g; Mon, 28 Sep 92 10:17:53 PDT
Received: from scylla.lucid (scylla.lucid.com) by heavens-gate.lucid.com id AA15087g; Mon, 28 Sep 92 10:17:43 PDT
Received: by scylla.lucid (4.1/SMI-4.1)
	id AA03798; Mon, 28 Sep 92 10:19:05 PDT
Date: Mon, 28 Sep 92 10:19:05 PDT
From: devin%scylla@lucid.com (Matthieu Devin)
Message-Id: <9209281719.AA03798@scylla.lucid>
To: danny@amil.co.il (Danny Bar-Dov)
Cc: help-lucid-emacs@lucid.com
Subject: Re: deleting selection
In-Reply-To: Danny Bar-Dov's message of Tue 22-Sep-92 08:25:18 IST <9209220625.AA17521@amil.co.il>
References: <9209220625.AA17521@amil.co.il>

> Some of the users here would like to be able to delete
> the currently selected text (active region).
Look at the pending-del package in lisp/packages it implements pending-delete
selection. 

From help-lucid-emacs-request@lucid.com  Mon Sep 28 14:09:13 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA00488; Mon, 28 Sep 92 14:09:13 PDT
Received: by heavens-gate.lucid.com id AA15791g; Mon, 28 Sep 92 14:08:27 PDT
Received: from rrzs1.rz.uni-regensburg.de by heavens-gate.lucid.com id AA15784g; Mon, 28 Sep 92 14:07:41 PDT
Received: from rrzc1.rz.uni-regensburg.de (rrzc2.rz.uni-regensburg.de) by rrzs1.rz.uni-regensburg.de (4.1/URRZ-relay (1.2))
	id AA22734; Mon, 28 Sep 92 22:08:22 +0100
Received: by rrzc1.rz.uni-regensburg.de (4.1/URRZ-sub (1.3))
	id AA11272; Mon, 28 Sep 92 22:08:12 +0100
Date: Mon, 28 Sep 92 22:08:12 +0100
From: Harald Backert <harald.backert%rrzc1.rz.uni-regensburg.de@lucid.com>
Message-Id: <9209282108.AA11272@rrzc1.rz.uni-regensburg.de>
To: lynbech%daimi.aau.dk@lucid.com
Cc: help-lucid-emacs@lucid.com
In-Reply-To: Christian Lynbech's message of Mon, 28 Sep 92 12:30:13 GMT <1992Sep28.123013.27540@daimi.aau.dk>
Subject: TTY version of Lucid Emacs, any news ?


>Is there any answers blowing in the wind on the availability of a TTY
>version of lucid?

Yes, I'd like to have this version of Lucid-Emacs too.
Having to versions of Emacs (GNU-Emacs V18.5x) (with its lisp files, doc file
etc.) and Lucid Emacs (with its own lisp files, doc files etc.) is not what
I would call `user friendly' nor 'disk space friendly'.

I _really_ like Lucid Emacs, but it really lacks to ability to use
standard terminals.

Harald
----------------------
email: c5039@rrzc2.rz.uni-regensburg.de

From help-lucid-emacs-request@lucid.com  Tue Sep 29 02:31:32 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA02693; Tue, 29 Sep 92 02:31:32 PDT
Received: by heavens-gate.lucid.com id AA17013g; Tue, 29 Sep 92 02:29:53 PDT
Received: from corton.inria.fr by heavens-gate.lucid.com id AA17009g; Tue, 29 Sep 92 02:29:24 PDT
Received: from esemetz.ese-metz.fr by corton.inria.fr (5.65c8d/92.02.29)
	via Fnet-EUnet id AA00698; Tue, 29 Sep 1992 10:29:40 +0100 (MET)
Received: from tintin.ese-metz.fr by esemetz.ese-metz.fr, Tue, 29 Sep 92 08:56:14 GMT
Received: by tintin.ese-metz.fr, Tue, 29 Sep 92 09:56:21 +0100
Date: Tue, 29 Sep 92 09:56:21 +0100
From: popineau%ese-metz.fr@lucid.com
Message-Id: <9209290856.AA00444@tintin.ese-metz.fr>
To: help-lucid-emacs@lucid.com
Subject: X mouse selection


I  have a problem with  the select/paste  operation under Lemacs 19.3.
When I set-mark with button1, I move the  mouse with button1 down over
the text I want to be selected, I release button1 and I move the mouse
up to  another point where I click  button2. And  the text inserted is
all the  text between the first point  where I began the selection and
the point where I wanted the text to be inserted.

Is it a bug ? Lemacs 19.2 didn't work this way.

Any idea ?

Thanks in advance,

F. Popineau

From help-lucid-emacs-request@lucid.com  Wed Sep 30 01:11:05 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA06968; Wed, 30 Sep 92 01:11:05 PDT
Received: by heavens-gate.lucid.com id AA19971g; Wed, 30 Sep 92 01:07:32 PDT
Received: from corton.inria.fr by heavens-gate.lucid.com id AA19967g; Wed, 30 Sep 92 01:07:15 PDT
Received: from esemetz.ese-metz.fr by corton.inria.fr (5.65c8d/92.02.29)
	via Fnet-EUnet id AA27826; Wed, 30 Sep 1992 09:07:47 +0100 (MET)
Received: from tintin.ese-metz.fr by esemetz.ese-metz.fr, Wed, 30 Sep 92 08:08:18 GMT
Received: by tintin.ese-metz.fr, Wed, 30 Sep 92 09:08:27 +0100
Date: Wed, 30 Sep 92 09:08:27 +0100
From: popineau%ese-metz.fr@lucid.com
Message-Id: <9209300808.AA00779@tintin.ese-metz.fr>
To: help-lucid-emacs@lucid.com
Subject: ange-ftp & lemacs-19.3


I can't manage to make  ange-ftp working. It  never answers when I ask
for a file. Is it a bug ? Any patch ?

I'm using lemacs-19.3, SS1, SunOs 4.1.2, X11R5p17, tvtwm.

Thanks in advance,

F. Popineau

From help-lucid-emacs-request@lucid.com  Wed Sep 30 07:57:27 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA08032; Wed, 30 Sep 92 07:57:27 PDT
Received: by heavens-gate.lucid.com id AA20411g; Wed, 30 Sep 92 07:56:47 PDT
Received: from uu3.psi.com by heavens-gate.lucid.com id AA20407g; Wed, 30 Sep 92 07:56:34 PDT
Received: from bacon.UUCP by uu3.psi.com (5.65b/4.0.071791-PSI/PSINet)
	id AA10546; Wed, 30 Sep 92 10:57:31 -0400
Received: from yen.moore by bacon.IMSI.COM (4.1/SMI-4.1)
	id AA04080; Wed, 30 Sep 92 10:24:45 EDT
Date: Wed, 30 Sep 92 10:24:45 EDT
From: chris@imsi.com (Chris Payne)
Message-Id: <9209301424.AA04080@IMSI.COM>
Received: by yen.moore (4.1/SMI-4.1)
	id AA23308; Wed, 30 Sep 92 10:24:38 EDT
To: help-lucid-emacs@lucid.com
Subject: fresh xemacs dies in _start

Sparc2 4.1.2	; gcc 2.2.2	; lemacs-19.3

When I build lemacs from scratch, I end up with an xemacs which dies
in _start.  I have rebuilt all of the .elc's using 19.2.  No luck.

So I tried loading the elisp changes I wanted into the prebuilt sparc
executable and dumping that.  That xemacs fails in '_yp_dobind_soft'.
I dumped by calling (dump-emacs "xemacs-pre" "lemacs-prebuilt").

Any pointers, please?

Here's what gdb has to say about xemacs:

  Program received signal 11, Segmentation fault
  0x2290 in _start ()
  (gdb) where
  #0  0x2290 in _start ()
  (gdb)

and dbx:

  (dbx) run
  Running: xemacs 
  signal SEGV (no mapping at the fault address) in xemacs at 0x2290
  xemacs: ld      [%l4 + 40], %o0
  (dbx) where
  xemacs() at 0x2290
  (dbx) 

Regarding xemacs-pre:

  Program received signal 11, Segmentation fault
  0xe61c8 in _yp_dobind_soft ()
  (gdb) where
  #0  0xe61c8 in _yp_dobind_soft ()
  #1  0xe60d4 in _yp_dobind ()
  #2  0xe7f9c in yp_match ()
  #3  0xd8034 in getpwent ()
  #4  0xd7b94 in getpwent ()
  #5  0xd7304 in getpwuid ()
  #6  0x57868 in init_editfns () at editfns.c:47
  #7  0x32b4c in main () at emacs.c:420

and dbx:

  signal SEGV (no mapping at the fault address) in _yp_dobind_soft at 0xe61c8
  _yp_dobind_soft+0xec:   lduh    [%l0], %l0
  (dbx) where
  _yp_dobind_soft() at 0xe61c8
  _yp_dobind() at 0xe60cc
  yp_match() at 0xe7f94
  getpwent() at 0xd802c
  getpwent() at 0xd7b8c
  getpwuid() at 0xd72fc
  init_editfns(), line 47 in "editfns.c"
  main(), line 420 in "emacs.c"
  (dbx)

/c (chris@imsi.com, chris payne)

From help-lucid-emacs-request@lucid.com  Mon Oct  5 05:42:52 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA25613; Mon, 5 Oct 92 05:42:52 PDT
Received: by heavens-gate.lucid.com id AA01924g; Mon, 5 Oct 92 05:38:39 PDT
Received: from Relay.Prime.COM by heavens-gate.lucid.com id AA01920g; Mon, 5 Oct 92 05:38:26 PDT
Received: from APOLLO.Prime.COM by Relay.Prime.COM; 05 Oct 92 08:44:34 EST
Received: from CIS.Prime.COM [130.21.130.10] by APOLLO.CIS.Prime.COM ; 05 Oct 92 13:40:32 N
Received: from mira.CIS.Prime.COM by CIS.Prime.COM (4.1/SMI-4.1.1/CIS)
	id AA09904; Mon, 5 Oct 92 13:37:08 BST
Date: Mon, 5 Oct 92 13:37:08 BST
From: David Hughes <djh@CIS.Prime.COM>
Message-Id: <9210051237.AA09904@CIS.Prime.COM>
Received: by mira.CIS.Prime.COM (4.1/SMI-4.1)
	id AA00282; Mon, 5 Oct 92 13:36:57 BST
To: help-lucid-emacs@lucid.com, shivers@cs.cmu.edu
Subject: Multiple Shells for Lucid Emacs

Hi Olin and lemacs users,

     I thought share with you the following modification to the shell defun
distributed with lemacs 19.3. It allows you to start up more than one shell
without affecting existing functionality. If people like it enough, maybe we
should include it as part of distributed Lucid Emacs? Please let me know.

M-x shell

works as before (ie starts up "*shell*" if does not already exist or pops you
straight into "*shell* if it does)

M-x start-new-shell creates "*shell<2>*", "*shell<3>*" etc

Finally, this version of shell accepts prefix args; negative args create new
shells and positive args selects shells providing they exist. For example,

C-u - M-x shell  is like M-x start-new-shell

C-u 3 M-x shell  selects "*shell<3>*" if it exists.

--
Regards, David
===============================================================================
;;; multi-shell.el
;;; Tweak to the comint shell program to allow Multi Shells
;;; David Hughes 5th October 1992

(defun start-new-shell ()
  (interactive)
  (shell -1))

(defun shell (&optional shell-number)
  "Run an inferior shell, with I/O through buffer *shell*.
If buffer exists but shell process is not running, make new shell.
Program used comes from variable explicit-shell-file-name,
 or (if that is nil) from the ESHELL environment variable,
 or else from SHELL if there is no ESHELL.
If a file ~/.emacs_SHELLNAME exists, it is given as initial input.
It is particularly useful to have this file set the environment
variable 'PAGER' to the value 'cat'.
 (Note that this may lose due to a timing error if the shell
  discards input when it starts up.)
The buffer is put in shell-mode, giving commands for sending input
and controlling the subjobs of the shell.  See shell-mode.
See also variable shell-prompt-pattern.

The shell file name (sans directories) is used to make a symbol name
such as `explicit-csh-arguments'.  If that symbol is a variable,
its value is used as a list of arguments when invoking the shell.
Otherwise, one argument `-i' is passed to the shell.

A negative argument causes further shell windows (*shell<2>*,
*shell<3>*, etc.) to be created.  A positive argument causes the shell
window with that number to be selected, instead of *shell* (which is
number 1).  Shells with numbers > 1 must be created explicitly; shell
1 is created automatically if it is selected but does not already
exist.

\(Type \\[describe-mode] in the shell buffer for a list of commands.)"

  (interactive "p")
  (let* ((shell-name
         (cond ((or (null shell-number) (= shell-number 1)) "shell")
          ;; negative arg means find a new shell number
          ((< shell-number 1)
           (setq shell-number 2)
           (while (get-buffer (concat "*shell<" (int-to-string shell-number) ">*"))
             (setq shell-number (1+ shell-number)))
           (concat "shell<" (int-to-string shell-number) ">"))
          ;; if user is trying to select a shell > 1, check it exists
          ((> shell-number 1)
           (if (get-buffer (concat "*shell<" (int-to-string shell-number) ">*"))
               (concat "shell<" (int-to-string shell-number) ">")
             (error (format "%s does not exist" (concat "*shell<" (int-to-string shell-number) ">*")))))))
         (shell-buffer-name (concat "*" shell-name "*")))

  (cond ((not (comint-check-proc shell-buffer-name))
	 (let* ((prog (or explicit-shell-file-name
			  (getenv "ESHELL")
			  (getenv "SHELL")
			  "/bin/sh"))		     
		(name (file-name-nondirectory prog))
		(startfile (concat "~/.emacs_" name))
		(xargs-name (intern-soft (concat "explicit-" name "-arguments"))))
	   (set-buffer (apply 'make-comint shell-name prog
			      (if (file-exists-p startfile) startfile)
			      (if (and xargs-name (boundp xargs-name))
				  (symbol-value xargs-name)
				  '("-i"))))
	   (shell-mode))))

  (switch-to-buffer shell-buffer-name)))

From help-lucid-emacs-request@lucid.com  Mon Oct  5 06:09:04 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA25672; Mon, 5 Oct 92 06:09:04 PDT
Received: by heavens-gate.lucid.com id AA01964g; Mon, 5 Oct 92 06:06:42 PDT
Received: from Relay.Prime.COM by heavens-gate.lucid.com id AA01960g; Mon, 5 Oct 92 06:06:27 PDT
Received: from APOLLO.Prime.COM by Relay.Prime.COM; 05 Oct 92 09:13:02 EST
Received: from CIS.Prime.COM [130.21.130.10] by APOLLO.CIS.Prime.COM ; 05 Oct 92 14:08:44 N
Received: from mira.CIS.Prime.COM by CIS.Prime.COM (4.1/SMI-4.1.1/CIS)
	id AA10292; Mon, 5 Oct 92 14:05:19 BST
Date: Mon, 5 Oct 92 14:05:19 BST
From: David Hughes <djh@CIS.Prime.COM>
Message-Id: <9210051305.AA10292@CIS.Prime.COM>
Received: by mira.CIS.Prime.COM (4.1/SMI-4.1)
	id AA00320; Mon, 5 Oct 92 14:05:08 BST
To: shivers@cs.cmu.edu
Cc: help-lucid-emacs@lucid.com
Subject: Multiple Shells for Lucid Emacs

Olin,

I just realised that there was a amall bug in the program I sent you: If you
typed M-x start-new-shell instead of M-x shell it never creates "*shell*" but
always "*shell<2>*" etc. Here is the file again:

--
Regards, David
===============================================================================
;;; multi-shell.el
;;; Tweak to the comint shell program to allow Multi Shells
;;; David Hughes 5th October 1992

(defun start-new-shell ()
  (interactive)
  (shell -1))

(defun shell (&optional shell-number)
  "Run an inferior shell, with I/O through buffer *shell*.
If buffer exists but shell process is not running, make new shell.
Program used comes from variable explicit-shell-file-name,
 or (if that is nil) from the ESHELL environment variable,
 or else from SHELL if there is no ESHELL.
If a file ~/.emacs_SHELLNAME exists, it is given as initial input.
It is particularly useful to have this file set the environment
variable 'PAGER' to the value 'cat'.
 (Note that this may lose due to a timing error if the shell
  discards input when it starts up.)
The buffer is put in shell-mode, giving commands for sending input
and controlling the subjobs of the shell.  See shell-mode.
See also variable shell-prompt-pattern.

The shell file name (sans directories) is used to make a symbol name
such as `explicit-csh-arguments'.  If that symbol is a variable,
its value is used as a list of arguments when invoking the shell.
Otherwise, one argument `-i' is passed to the shell.

A negative argument causes further shell windows (*shell<2>*,
*shell<3>*, etc.) to be created.  A positive argument causes the shell
window with that number to be selected, instead of *shell* (which is
number 1).  Shells with numbers > 1 must be created explicitly; shell
1 is created automatically if it is selected but does not already
exist.

\(Type \\[describe-mode] in the shell buffer for a list of commands.)"

  (interactive "p")
  (let* ((shell-name
         (cond ((or (null shell-number) (= shell-number 1)) "shell")
          ;; negative arg means find a new shell number
          ((< shell-number 1)
           (if (not (get-buffer "*shell*"))
               "shell"
             (setq shell-number 2)
             (while (get-buffer (concat "*shell<" (int-to-string shell-number) ">*"))
               (setq shell-number (1+ shell-number)))
             (concat "shell<" (int-to-string shell-number) ">")))
          ;; if user is trying to select a shell > 1, check it exists
          ((> shell-number 1)
           (if (get-buffer (concat "*shell<" (int-to-string shell-number) ">*"))
               (concat "shell<" (int-to-string shell-number) ">")
             (error (format "%s does not exist" (concat "*shell<" (int-to-string shell-number) ">*")))))))
         (shell-buffer-name (concat "*" shell-name "*")))

  (cond ((not (comint-check-proc shell-buffer-name))
	 (let* ((prog (or explicit-shell-file-name
			  (getenv "ESHELL")
			  (getenv "SHELL")
			  "/bin/sh"))		     
		(name (file-name-nondirectory prog))
		(startfile (concat "~/.emacs_" name))
		(xargs-name (intern-soft (concat "explicit-" name "-arguments"))))
	   (set-buffer (apply 'make-comint shell-name prog
			      (if (file-exists-p startfile) startfile)
			      (if (and xargs-name (boundp xargs-name))
				  (symbol-value xargs-name)
				  '("-i"))))
	   (shell-mode))))

  (switch-to-buffer shell-buffer-name)))

From help-lucid-emacs-request@lucid.com  Tue Oct  6 08:09:13 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA00492; Tue, 6 Oct 92 08:09:13 PDT
Received: by heavens-gate.lucid.com id AA05711g; Tue, 6 Oct 92 08:02:12 PDT
Received: from linus.mitre.org by heavens-gate.lucid.com id AA05707g; Tue, 6 Oct 92 08:02:04 PDT
Return-Path: <guttman@linus.mitre.org>
Received: from benshemesh.mitre.org by linus.mitre.org (5.61/RCF-4S)
	id AA06398; Tue, 6 Oct 92 11:03:12 -0400
Posted-Date: Tue, 06 Oct 92 11:03:56 -0400
Received: by ben_shemesh (5.61/RCF-4C)
	id AA14563; Tue, 6 Oct 92 11:03:57 -0400
Message-Id: <9210061503.AA14563@ben_shemesh>
To: help-lucid-emacs@lucid.com
Cc: guttman@linus.mitre.org
Subject: 
X-Postal-Address: MITRE, Mail Stop A156 \\ 202 Burlington Rd. \\ Bedford, MA 01730
X-Telephone-Number: 617 271 2654; Fax 617 271 3816
Date: Tue, 06 Oct 92 11:03:56 -0400
From: guttman@linus.mitre.org

I normally use the tags mechanism for a case-insensitive lisp dialect.  The
tags package in etags.el seems to be case sensitive, however.  

Is there a clean way to toggle it to a case-insensitive form, or shall I go to
another tags package instead?  


	Josh

From help-lucid-emacs-request@lucid.com  Wed Oct  7 14:25:58 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA06519; Wed, 7 Oct 92 14:25:58 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA10662g; Wed, 7 Oct 92 14:21:11 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA14994; Wed, 7 Oct 92 17:22:15 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA14990; Wed, 7 Oct 92 17:22:13 -0400
Path: uunet!wupost!darwin.sura.net!Sirius.dfn.de!chx400!sicsun!lprhp3.epfl.ch!knespl
From: knespl%lprhp3.epfl.ch@lucid.com (David Knespl)
Newsgroups: alt.lucid-emacs.help
Subject: background color
Message-Id: <1992Sep29.125803@lprhp3.epfl.ch>
Date: 29 Sep 92 18:58:03 GMT
Reply-To: knespl%lprhp3.epfl.ch@lucid.com (David Knespl)
Organization: Ecole Polytechnique Federale de Lausanne
Lines: 14
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I am the new user of lucid-emacs (and emacs at all). So these are probably FAQs.

1) I'd like to set different background colors for different modes (for example White in tex-mode)
     I have:         Emacs*default.attributeBackground:	DarkGreen
     in my app-defaults but than set-background-color does not work for me and screen is still DarkGreen
     in all modes

2) how to get EDT emulation really to work with EDT keys on Sun 4 keyboard, I have not succeded with
     "edt-emulation-on"

thanx

David Knespl


From help-lucid-emacs-request@lucid.com  Wed Oct  7 14:55:22 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA06600; Wed, 7 Oct 92 14:55:22 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA10715g; Wed, 7 Oct 92 14:29:48 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA15919; Wed, 7 Oct 92 17:28:20 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA15908; Wed, 7 Oct 92 17:26:31 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!rational.com!rational!carney
From: carney%rocky.rational@lucid.com (Mike Carney)
Subject: lhilit
Message-Id: <CARNEY.92Sep29162424@rocky.rational>
Organization: Rational, Santa Clara, CA
Distribution: alt
Date: Wed, 30 Sep 1992 00:24:24 GMT
Lines: 33
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


I was reading throught the source of the lhilit mode, and saw a
reference to a makefile-mode. Does anyone know where I can get that mode?
--

                                |     |                         
    Michael D. Carney           \\_V_//
    email: carney@rational.com  \/=|=\/   
    phone: 408-496-3790          [=v=]     
                               __\___/_____
                              /..[  _____  ]
                             /_  [ [  M /] ]   
                            /../.[ [ M /@] ]            
                           <-->[_[ [M /@/] ]  
                          /../ [.[ [ /@/ ] ] 
     _________________]\ /__/  [_[ [/@/ C] ]
    <_________________=>>0--]  [=\ \@/ C / /                           
                      ]/000o   /__\ \ C / /           
                              /....\ \_/ /                      
                              [___/=\___/ 
                              [...] [...]
    "Remember...No matter     [___/ \___]
     where you go, there      <---> <--->
     you are."                [..]   [..]
                             _[__]   [__]_
                            [____>   <____]
                                      







From help-lucid-emacs-request@lucid.com  Wed Oct  7 14:56:18 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA06611; Wed, 7 Oct 92 14:56:18 PDT
Received: from rodan.UU.NET ([192.48.96.10]) by heavens-gate.lucid.com id AA10719g; Wed, 7 Oct 92 14:30:10 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA16102; Wed, 7 Oct 92 17:27:31 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA16088; Wed, 7 Oct 92 17:27:18 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!mcsun!sunic!psinntp!psinntp!mdl!phil
From: phil@mdl.com (Phil Usatine)
Subject: GNUS under kemacs can't read large newsgroup
Message-Id: <PHIL.92Oct5061000@sol.mdl.com>
Nntp-Posting-Host: sol
Organization: Micro Dynamics, Silver Spring, Maryland
Distribution: alt
Date: Mon, 5 Oct 1992 06:10:00 GMT
Lines: 24
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


Under lemacs, using the version of gnus distributed with
Lucid Emacs 19.2 (June 19) I get the following error when
I try to load a group with lots of articles:
Wrong type argument: syntax-table-p, nil

The gnus version claims to be 3.13, but I am running 3.13
under emacs version 18.57.19 with no difficulties. In looking
at the lisp code, I see that the version bundled with lemacs
has many more source files, and is arranged differently.

Anyone have any ideas?

Thanks in advance,
phil usatine
--
/***********************************************************************/
        Any opinions expressed were my own last time I checked.
Philip B. Usatine		    
Micro Dynamics                              e-mail : phil@mdl.com
8555 16th St. , 7th Floor                   voice: 301 589 6301
Silver Spring, MD 20910                     fax  : 301 589 3414



From help-lucid-emacs-request@lucid.com  Wed Oct  7 14:55:53 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA06607; Wed, 7 Oct 92 14:55:53 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA10707g; Wed, 7 Oct 92 14:27:22 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA15942; Wed, 7 Oct 92 17:27:15 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA15938; Wed, 7 Oct 92 17:26:39 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!ferkel.ucsb.edu!taco!rock!concert!uvaarpa!caen!zaphod.mps.ohio-state.edu!darwin.sura.net!convex!sunova!sunova.ssc.gov!allen
From: allen@golem.ssc.gov (Michael Allen)
Subject: Re: text cursor - how to set its color
In-Reply-To: mcclen@advtech.uswest.com's message of Wed, 30 Sep 1992 16:44:43 GMT
Message-Id: <ALLEN.92Sep30124913@golem.ssc.gov>
Nntp-Posting-Host: golem.ssc.gov
Reply-To: allen@ssc.gov
Organization: SSC Laboratory, Dallas, TX
References: <MCCLEN.92Sep30094443@alder.advtech.uswest.com>
Date: Wed, 30 Sep 1992 18:49:13 GMT
Lines: 18
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <MCCLEN.92Sep30094443@alder.advtech.uswest.com> mcclen@advtech.uswest.com ( Chris McClenaghan) writes:

   Does anyone know how to set the color of the text cursor, either
   from the resource base or interactively via a lisp (both would be
   nice)? 
From .Xdefaults:
Emacs*EmacsScreen.cursorColor: orange
Emacs*EmacsScreen.pointerColor: tomato
--
K'tivah v'Chatima Tova!

===================================================
But those who toiled knew nothing of the dreams of 
        Those Who Planned;                         
And the minds who planned the Tower of Babel       
        Cared nothing for the workers who built it.

	-Metropolis

From kyle@uunet.uu.net  Wed Oct  7 15:01:22 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA06641; Wed, 7 Oct 92 15:01:22 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA10760g; Wed, 7 Oct 92 14:43:16 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA17824; Wed, 7 Oct 92 17:40:43 -0400
Received: from wendy-fate.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA17818; Wed, 7 Oct 92 17:40:39 -0400
Path: uunet!europa.asd.contel.com!darwin.sura.net!zaphod.mps.ohio-state.edu!magnus.acs.ohio-state.edu!usenet.ins.cwru.edu!agate!doc.ic.ac.uk!uknet!axion!muppet!ishtar!davidh
From: davidh@muppet.bt.co.uk (David Hobley)
Newsgroups: alt.lucid-emacs.help
Subject: mark-whole-buffer
Message-Id: <1992Oct7.151425.7764@muppet.bt.co.uk>
Date: 7 Oct 92 15:14:25 GMT
Reply-To: davidh@muppet.bt.co.uk
Followup-To: alt.lucid-emacs.help
Organization: British Telecom Research Laboratories
Lines: 15
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I was just trying to write a function to re-format the whole file.
To test which functions I would need I tried:

C-x h
M-x indent-region

However, when I typed the i of indent-region, the mark was cleared.
In an emacs 18.58 we keep lying around, this worked. Anyone any ideas ?
Am I doing something stupid ?
Cheers,

---
        David Hobley    davidh@muppet.bt.co.uk
Through the darkness of future past / the magician longs to see.
One chants out between two worlds   / 'Fire walk with me.'

From kyle@uunet.uu.net  Wed Oct  7 15:03:53 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA06648; Wed, 7 Oct 92 15:03:53 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA10771g; Wed, 7 Oct 92 14:48:15 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA18210; Wed, 7 Oct 92 17:44:38 -0400
Received: from wendy-fate.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA18204; Wed, 7 Oct 92 17:44:35 -0400
Path: uunet!caen!rphroy!kocrsv01!c23mts
From: c23mts@kocrsv01.delcoelect.com (Mike Scheidler)
Newsgroups: alt.lucid-emacs.help
Subject: Re: EDT emulation, screen color and font-lock-faces?
Message-Id: <1992Oct2.190210.893@kocrsv01.delcoelect.com>
Date: 2 Oct 92 19:02:10 GMT
References: <1992Oct2.172434@lprhp3.epfl.ch>
Reply-To: c23mts@kocrsv01.delcoelect.com
Organization: Delco Electronics Corp.
Lines: 26
Originator: c23mts@kocrsw12
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


In article <1992Oct2.172434@lprhp3.epfl.ch>, knespl@lprhp3.epfl.ch
(David Knespl) writes:
> 
> 3) how to set different font-lock-faces for color and black&white screen if
>    I use the same .emacs file on the two different machines (I have the same
>    $HOME)

There is a function that appears to provide the system info you need:

	x-color-display-p: ()
	  -- a built-in function.
	Return t if the X display used currently supports color.

For examples of how to use it, look in lisp/x11/x-faces.el or
packages/lhilit.el.

Since I haven't used font-lock, I'm not familiar with how it works or how to
customize it, but this should get you (or some other inspired lisp hacker)
started.

-- 
 Mike Scheidler                    INTERNET:  c23mts@kocrsv01.delcoelect.com
 Software Technology               UUCP:      deaes!c23mts
 Delco Electronics Corporation     PHONE:     (317) 451-0642
 Kokomo, IN 46904                  GMNET:     8-322-0642

From help-lucid-emacs-request@lucid.com  Wed Oct  7 15:34:54 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA06724; Wed, 7 Oct 92 15:34:54 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA10880g; Wed, 7 Oct 92 15:25:10 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA15965; Wed, 7 Oct 92 17:28:30 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA15957; Wed, 7 Oct 92 17:26:45 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!mcsun!sunic!dkuug!daimi!lynbech
From: lynbech%daimi.aau.dk@lucid.com (Christian Lynbech)
Subject: Re: fresh xemacs dies in _start
Message-Id: <1992Oct1.081408.10642@daimi.aau.dk>
Organization: DAIMI: Computer Science Department, Aarhus University, Denmark
References: <9209301424.AA04080@IMSI.COM>
Date: Thu, 1 Oct 92 08:14:08 GMT
Lines: 22
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I'm no expert on the inner magic's of loading and linking, but you may want to
ensure yourself that you are using statically linking rather than dynamic. It
says in some of the makefiles, that one should always use static linking when
dumping emacs.

It would be nice though, if dynamic linking was possible. lemacs is, even by
modern standards, very big.


------------------------------------------------------------------------------
Christian Lynbech

DAIMI						office: R0.32   phone: 5034
University of Aarhus,DK-Denmark                 email: lynbech@daimi.aau.dk
------------------------------------------------------------------------------
			  EMACS, The One True Editor                       


Hit the philistines three times over the head with the Elisp reference manual.

                                        - petonic@hal.com (Michael A. Petonic)


From help-lucid-emacs-request@lucid.com  Wed Oct  7 15:37:55 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA06730; Wed, 7 Oct 92 15:37:55 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA10892g; Wed, 7 Oct 92 15:29:27 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA19314; Wed, 7 Oct 92 18:02:30 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA16046; Wed, 7 Oct 92 17:27:04 -0400
Path: uunet!spool.mu.edu!agate!violet.berkeley.edu!ilan343
From: ilan343@violet.berkeley.edu (Geraldo Veiga)
Newsgroups: alt.lucid-emacs.help
Subject: lemacs X SysV3.2 (ISC/386)
Date: 7 Oct 1992 02:42:54 GMT
Organization: University of California, Berkeley
Lines: 10
Message-Id: <1atireINNmea@agate.berkeley.edu>
Nntp-Posting-Host: violet.berkeley.edu
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Does anyone have lemacs running under SysV (ISC/386 in my case).  There
are intel 386 configuration files in the distribution, but I bumped
into a number of small problems,  which makes me suspect that the
current version was not tested under SVR3.2.

It would be great if someone who has built lemacs under ISC could send
me the changed configuration files.

Thanks in advance.  I am running ISC 2.2.1 with X11R4 (X386 1.1b) and
gcc 2.2.2.

From help-lucid-emacs-request@lucid.com  Wed Oct  7 15:51:05 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA06756; Wed, 7 Oct 92 15:51:05 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA10965g; Wed, 7 Oct 92 15:44:58 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA16015; Wed, 7 Oct 92 17:28:26 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA16002; Wed, 7 Oct 92 17:26:55 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!rational.com!rational!carney
From: carney%rocky.rational@lucid.com (Mike Carney)
Subject: font-lock
Message-Id: <CARNEY.92Oct2111332@rocky.rational>
Organization: Rational, Santa Clara, CA
Distribution: alt
Date: Fri, 2 Oct 1992 19:13:32 GMT
Lines: 36
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


I've run into a problem when using the font-lock package, when I try
to do something like a replace-regexp. Instead of doing the
replacement, it simply appends the 'replacement text' to the old text.
If I get out of font-lock-mode and do the same command, it works fine.
Has anyone else had this problem, and if so, have you found a solution?
--

                                |     |                         
    Michael D. Carney           \\_V_//
    email: carney@rational.com  \/=|=\/   
    phone: 408-496-3790          [=v=]     
                               __\___/_____
                              /..[  _____  ]
                             /_  [ [  M /] ]   
                            /../.[ [ M /@] ]            
                           <-->[_[ [M /@/] ]  
                          /../ [.[ [ /@/ ] ] 
     _________________]\ /__/  [_[ [/@/ C] ]
    <_________________=>>0--]  [=\ \@/ C / /                           
                      ]/000o   /__\ \ C / /           
                              /....\ \_/ /                      
                              [___/=\___/ 
                              [...] [...]
    "Remember...No matter     [___/ \___]
     where you go, there      <---> <--->
     you are."                [..]   [..]
         -- Buckaroo         _[__]   [__]_
             Bonzai         [____>   <____]
                                      







From help-lucid-emacs-request@lucid.com  Wed Oct  7 16:01:14 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA06793; Wed, 7 Oct 92 16:01:14 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA11008g; Wed, 7 Oct 92 15:52:59 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA16033; Wed, 7 Oct 92 17:28:51 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA16027; Wed, 7 Oct 92 17:26:58 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!rational.com!rational!carney
From: carney%rocky.rational@lucid.com (Mike Carney)
Subject: font-lock
Message-Id: <CARNEY.92Sep30170007@rocky.rational>
Organization: Rational, Santa Clara, CA
Distribution: alt
Date: Thu, 1 Oct 1992 01:00:07 GMT
Lines: 38
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


I'm having a similar problem to the one I had with lhilit. Namely,
that strings inside comments don't behave like comments, but strings.
This means that if a comment has a single quote in it, the rest of the
file (up to the next quote which is who knows where) will be treated
like a string.

Does anyone out there know a way to disable this?
--

                                |     |                         
    Michael D. Carney           \\_V_//
    email: carney@rational.com  \/=|=\/   
    phone: 408-496-3790          [=v=]     
                               __\___/_____
                              /..[  _____  ]
                             /_  [ [  M /] ]   
                            /../.[ [ M /@] ]            
                           <-->[_[ [M /@/] ]  
                          /../ [.[ [ /@/ ] ] 
     _________________]\ /__/  [_[ [/@/ C] ]
    <_________________=>>0--]  [=\ \@/ C / /                           
                      ]/000o   /__\ \ C / /           
                              /....\ \_/ /                      
                              [___/=\___/ 
                              [...] [...]
    "Remember...No matter     [___/ \___]
     where you go, there      <---> <--->
     you are."                [..]   [..]
         -- Buckaroo         _[__]   [__]_
             Bonzai         [____>   <____]
                                      







From help-lucid-emacs-request@lucid.com  Wed Oct  7 16:12:06 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA06827; Wed, 7 Oct 92 16:12:06 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA11065g; Wed, 7 Oct 92 15:57:37 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA20376; Wed, 7 Oct 92 18:19:13 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA20370; Wed, 7 Oct 92 18:19:11 -0400
Path: uunet!cis.ohio-state.edu!pacific.mps.ohio-state.edu!linac!att!cbnewsc!cbfsb!att-out!pacbell.com!network.ucsd.edu!ucsbcsl!mcl!ucosmo
From: ucosmo@mcl.ucsb.edu (Boris Burtin)
Newsgroups: alt.lucid-emacs.help
Subject: Problems compiling on Sun (malloc redeclaration)
Message-Id: <ucosmo.718490523@mcl>
Date: 7 Oct 92 20:42:03 GMT
Lines: 22
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I'm compiling lucid emacs on a Sun Sparcstation, using gcc, and I get the
following:

-----
make  -f xmakefile  all
gcc -g     -Demacs  -I./lwlib  -c  dispnew.c
In file included from dispnew.c:72:
lisp.h:1213: conflicting types for `malloc'
/usr/local/lib/gcc-lib/sparc-sun-sunos4.1.2/2.1/include/stdlib.h:29: previous declaration of `malloc'
lisp.h:1213: conflicting types for `realloc'
/usr/local/lib/gcc-lib/sparc-sun-sunos4.1.2/2.1/include/stdlib.h:33: previous declaration of `realloc'
lisp.h:1214: conflicting types for `free'
/usr/local/lib/gcc-lib/sparc-sun-sunos4.1.2/2.1/include/stdlib.h:27: previous declaration of `free'
-----

I'm not sure if this is relevant, but when the build starts, it compiles with
cc and then switches to gcc.  Can someone help me with this one?


--
     - Boris
(cosmo@cs.ucsb.edu)

From help-lucid-emacs-request@lucid.com  Wed Oct  7 16:13:18 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA06832; Wed, 7 Oct 92 16:13:18 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA11073g; Wed, 7 Oct 92 15:59:07 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA15918; Wed, 7 Oct 92 17:28:54 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA15907; Wed, 7 Oct 92 17:26:31 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!rational.com!rational!carney
From: carney%rocky.rational@lucid.com (Mike Carney)
Subject: at.lucid.emacs.help
Message-Id: <CARNEY.92Sep29161957@rocky.rational>
Organization: Rational, Santa Clara, CA
Distribution: alt
Date: Wed, 30 Sep 1992 00:19:57 GMT
Lines: 39
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


I just hooked up lemacs V19.3. I'm using the new package lhilit.el.
This package seems to have a problem when hilighting C comments that
have quoatation marks in them, mistaking them for the beginnings of
strings. For example you might have a comment like:
	/* the '"' character delimits ... */
And from that point on, the text gets hilighted like it was a string.
Does anyone out there know a way to set up the lhilit package so that
this doesn't happen?
--

                                |     |                         
    Michael D. Carney           \\_V_//
    email: carney@rational.com  \/=|=\/   
    phone: 408-496-3790          [=v=]     
                               __\___/_____
                              /..[  _____  ]
                             /_  [ [  M /] ]   
                            /../.[ [ M /@] ]            
                           <-->[_[ [M /@/] ]  
                          /../ [.[ [ /@/ ] ] 
     _________________]\ /__/  [_[ [/@/ C] ]
    <_________________=>>0--]  [=\ \@/ C / /                           
                      ]/000o   /__\ \ C / /           
                              /....\ \_/ /                      
                              [___/=\___/ 
                              [...] [...]
    "Remember...No matter     [___/ \___]
     where you go, there      <---> <--->
     you are."                [..]   [..]
                             _[__]   [__]_
                            [____>   <____]
                                      







From help-lucid-emacs-request@lucid.com  Wed Oct  7 16:14:32 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA06838; Wed, 7 Oct 92 16:14:32 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA11082g; Wed, 7 Oct 92 16:02:46 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA22921; Wed, 7 Oct 92 19:00:51 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA22917; Wed, 7 Oct 92 19:00:49 -0400
Path: uunet!wupost!zaphod.mps.ohio-state.edu!magnus.acs.ohio-state.edu!usenet.ins.cwru.edu!agate!ames!network.ucsd.edu!ucsbcsl!mcl!ucosmo
From: ucosmo@mcl.ucsb.edu (Boris Burtin)
Newsgroups: alt.lucid-emacs.help
Subject: Linking problem during compile
Message-Id: <ucosmo.718496215@mcl>
Date: 7 Oct 92 22:16:55 GMT
Lines: 21
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I can't seem to get ld to find the X libraries on my Sun Sparcstation.  
They are located in /usr/lib, so I don't see why there should be a 
problem.  I've tried setting LD_LIBRARY_PATH and running ldconfig, but
it doesn't help.  Here's the output I get from build-install.  I'd app-
reciate any help I could get!

---

ld   -e __start -Bstatic    -L. -L./lwlib -o temacs crt0.o dispnew.o screen.o scroll.o xdisp.o window.o  events.o event-alloc.o event-stream.o  term.o cm.o xterm.o xfns.o xselect.o xutils.o event-Xt.o menubar.o play.o libsst.o  emacs.o keyboard.o macros.o keymap.o sysdep.o  buffer.o filelock.o insdel.o marker.o  minibuf.o fileio.o dired.o filemode.o  cmds.o casetab.o casefiddle.o indent.o search.o regex.o undo.o  alloc.o data.o doc.o editfns.o callint.o  eval.o floatfns.o fns.o print.o lread.o  abbrev.o sy


ntax.o font_lock.o unexec.o mocklisp.o bytecode.o  process.o callproc.o environ.o  doprnt.o extents.o faces.o elhash.o hash.o tparam.o lastfile.o  ScreenWidget.o ColumnWidget.o EmacsShell.o sunOS-fix.o strcmp.o strcpy.o  -L/usr/demo/SOUND -laudio    ./lwlib/liblw.a  -lXaw -lXext -lXt -lXmu -lX11   -ltermcap  -lg  -lm -lc
ld: -lXaw: No such file or directory
*** Error code 4
make: Fatal error: Command failed for target `temacs'
Current working directory /usr/local/junk/lemacs-19.3/src
*** Error code 1
make: Fatal error: Command failed for target `doall'
exit 1

--
     - Boris
(cosmo@cs.ucsb.edu)

From help-lucid-emacs-request@lucid.com  Wed Oct  7 16:38:07 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA06915; Wed, 7 Oct 92 16:38:07 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA11179g; Wed, 7 Oct 92 16:28:17 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA15788; Wed, 7 Oct 92 17:26:44 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA15776; Wed, 7 Oct 92 17:25:59 -0400
Path: uunet!charon.amdahl.com!pacbell.com!sgiblab!darwin.sura.net!mojo.eng.umd.edu!mimsy!sdd.comsat.com!neal.ctd.comsat.com!neal!neal
From: neal@ctd.comsat.com (Neal Becker)
Newsgroups: alt.lucid-emacs.help
Subject: Adding Info Directories?
Message-Id: <NEAL.92Sep29132731@neal.ctd.comsat.com>
Date: 29 Sep 92 17:27:31 GMT
Organization: COMSAT Labs
Lines: 7
Nntp-Posting-Host: neal.ctd.comsat.com
X-Md4-Signature: c7545e3209f7e60d6867b122e525b146
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I have been using 18.58 with the (recently posted) info stuff, which
allows alternate info directories.  I have been adding new stuff to
/usr/local/info.  In each new directory, you make a file called
'localdir'.

Does lemacs support this?  It doesn't appear to work, and I can't find
any doc on this.

From help-lucid-emacs-request@lucid.com  Wed Oct  7 16:49:10 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA06940; Wed, 7 Oct 92 16:49:10 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA11208g; Wed, 7 Oct 92 16:36:16 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA16161; Wed, 7 Oct 92 17:28:43 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA16159; Wed, 7 Oct 92 17:27:51 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!mcsun!sunic!lth.se!stare!kenny
From: kenny%stare.dit.lth.se@lucid.com (Kenny Ranerup)
Subject: Problem with mouse when tabs in buffer.
Message-Id: <KENNY.92Oct7142708@stare.dit.lth.se>
Reply-To: kenny%dit.lth.se@lucid.com
Organization: Lund Institute of Technology, Sweden
Distribution: alt
Date: 7 Oct 92 14:27:08
Lines: 32
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


I have a problem when positioning the mouse in a buffer that contains
tabs.  If I click the left mouse button over the 'j' in the line below
(which contains tabs between 'hej' and 'hopp') the number of spaces
between the words suddenly shrinks. Also if I move the pointer forward
and backward over this line using cursor keys strang things happen.

	hej		hopp

I'm using Lucid Emacs version:
'GNU Emacs 19.3 Lucid of Wed Sep  9 1992 on watergate (berkeley-unix)'
on a Sparcstation IPC under X11R5 or OpenWindows 3.0 and SunOS 4.1.1.

Anyone got any idea what's going on?

  Kenny

+------------------------------------+----------------------------+
| Kenny Ranerup,                     |  Phone: +46 46 104940      |
| Dept. of Computer Engineering      |  Email: kenny@dit.lth.se   |
| Lund University                    |                            |
| P.O. Box 118, S-221 00, Sweden     |                            |
+------------------------------------+----------------------------+
"If it ain't broke, fix it anyway, or at least improve it!"
--
+------------------------------------+----------------------------+
| Kenny Ranerup,                     |  Phone: +46 46 104940      |
| Dept. of Computer Engineering      |  Email: kenny@dit.lth.se   |
| Lund University                    |                            |
| P.O. Box 118, S-221 00, Sweden     |                            |
+------------------------------------+----------------------------+
"If it ain't broke, fix it anyway, or at least improve it!"

From help-lucid-emacs-request@lucid.com  Wed Oct  7 16:49:39 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA06944; Wed, 7 Oct 92 16:49:39 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA11217g; Wed, 7 Oct 92 16:37:34 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA16068; Wed, 7 Oct 92 17:28:47 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA16047; Wed, 7 Oct 92 17:27:04 -0400
Path: uunet!math.fu-berlin.de!news.netmbx.de!Germany.EU.net!mcsun!corton!frors65!frors65.circe.fr!girou
From: girou%circe.fr@lucid.com (Denis Girou)
Newsgroups: alt.lucid-emacs.help
Subject: Lemacs 19.3 installation on RS 6000 with AIX 3.2
Keywords: RS6000, AIX, installation
Message-Id: <1992Oct02.191530.103108@circe.fr>
Date: 2 Oct 92 19:15:30 GMT
Reply-To: girou%circe.fr@lucid.com (Denis Girou)
Organization: circe
Lines: 149
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


  Dear lemacs lovers,

  Here is my own experience with the installation of lemacs 19.3 on RS6000
under AIX 3.2.0

  I already seen two explanations in this newsgroup for the same installation:
bobhays@spss.com and dfr@ioc.co.uk (Doug Rabson). I have had some of there
problems, some not, and one else...

  It's work with satisfaction since one week on our RS6000 server. The only
problem signaled (four or five times), rarely and randomly, is the global
loose of control (keyboard, mouse and session) during the interrogation of the
menu bar (mwm window manager used).

  I use X11R5 like Bob and Doug. For non explained reasons, there are strange
problems with X11R4 - which seems unusable. If you don't have X11R5 (it's my
case), you have just to install the includes and to copy the binaries
libraries for AIX 3.2 which are in /anonymous@minnie.zdv.uni-mainz.de:/pub/AIX
(many thanks to them!).

  Bob says that he succeed (with difficulties) to use the Motif menus. I try,
but see too many problems, and use the default menus...

  Bob and Doug used gcc. I also try, but see more problems than with the
Metaware cc default compiler (by instance the problem in emacs.c with
file_exists_p doesn't exist with cc).

  I don't succeed to use terminfo (so I use termcap) because with the
terminfo choice, lemacs cannot run in background.

  The only difficult problem that I had was with the call-process function :
all the processes submitted by lemacs returned with the "killed" status, so
dired (which submit ls subprocesses) and so on didn't work. I finish to found
the origin of this problem : the nice call in the setpriority function inside
sysdep.c Bob and Doug doesn't signal this problem, but I know two others
people which have it...


  In fact, I only modify four files :

    - gmalloc.c to force the "#include <stddef.h>",

    - sysdep.c to suppress the nice call in the setpriority function and
replace HFQEIO by HFQRROR (this since AIX 3.2)

    - lwlib.c to suppress the include of alloca.h,

    - config.h to use cc and not ld for the link step, to define NEED_REALPATH,
to not define TERMINFO, and to specify the location of my X11R5 files.


  Here are my diff files :

hubble (19:26) [143]> diff gmalloc.c gmalloc.ORIG.c
48,50d47
< /*  Modification Denis GIROU - 21 Sep. 1992  */
< #include <stddef.h>
< 
56a54
> 
hubble (19:26) [144]> diff sysdep.c sysdep.ORIG.c
2546,2547c2546
< /*  Modification Denis GIROU - 21 Sep. 1992  */
< /*$void$*/
---
> void
2551,2552c2550
< /*  Modification Denis GIROU - 21 Sep. 1992  */
<   /*$int nice();
---
>   int nice();
2554,2555c2552
<   nice (prio - nice (0));$*/
<   return(0);
---
>   nice (prio - nice (0));
4245,4247c4242
< /*  Modification Denis GIROU - 10 Sep. 1992  */
< /*$#ifdef IBMR2AIX$*/
< #if defined (IBMR2AIX) || defined (AIX)
---
> #ifdef IBMR2AIX
4289,4293d4283
< /*  Modification Denis GIROU - 10 Sep. 1992  */
<   /*$if (ioctl (0, HFQEIO, 0) != -1)$*/
< #if defined (IBMR2AIX) || defined (AIX)
<   if (ioctl (0, HFQERROR, 0) != -1)
< #else
4295d4284
< #endif
4307,4309c4296
< /*  Modification Denis GIROU - 10 Sep. 1992  */
< /*$#ifdef IBMR2AIX$*/
< #if defined (IBMR2AIX) || defined (AIX)
---
> #ifdef IBMR2AIX
hubble (19:26) [145]> diff config.h config.h-dist
35,36c35
< /*  Modification Denis GIROU - 17 Sep. 1992  */
< /*$#define USE_GCC$*/
---
> #define USE_GCC
44,45c43
< /*  Modification Denis GIROU - 10 Sep. 1992  */
< #include "s/s-aix3-1.h"
---
> #include "s/s-sunos4.h"
47,52d44
< /*  Modification Denis GIROU - 10 Sep. 1992  */
< #undef TERMINFO
< #ifndef LD_CMD
< #define LD_CMD LINKER         /* 18.58 calls it LINKER */
< #endif
< 
58,59c50
< /*  Modification Denis GIROU - 10 Sep. 1992  */
< #include "m/m-ibmrs6000.h"
---
> #include "m/m-sparc.h"
141,142c132
< /*  Modification Denis GIROU - 10 Sep. 1992  */
< #define NEED_REALPATH
---
> /* #define NEED_REALPATH */
197,198d186
< /*  Modification Denis GIROU - 10 Sep. 1992  */
< #define LD_SWITCH_SITE -L/produits/public/X11R5/lib
206,207d193
< /*  Modification Denis GIROU - 10 Sep. 1992  */
< #define C_SWITCH_SITE -I/produits/public/X11R5/include
hubble (19:28) [146]> 


  I'm interesting to have information about the problems with lemacs under AIX.


  With hope that these informations can help.


  Best regards,

  

------------------------------------------------------
Denis Girou (C.N.R.S./C.I.R.C.E.)                    |
Batiment 506 - B.P. 167 - 91403 Orsay Cedex - France |
E-mail : girou@circe.fr - Tel.  : 33. 1. 69.82.41.52 |
------------------------------------------------------

From help-lucid-emacs-request@lucid.com  Wed Oct  7 17:01:08 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA06966; Wed, 7 Oct 92 17:01:08 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA11256g; Wed, 7 Oct 92 16:49:37 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA15864; Wed, 7 Oct 92 17:28:29 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA15848; Wed, 7 Oct 92 17:26:13 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!wupost!gumby!destroyer!ubc-cs!fornax!bremner
From: bremner%cs.sfu.ca@lucid.com (David Bremner)
Subject: Re: Adding Info Directories?
Message-Id: <1992Sep29.190606.17691@cs.sfu.ca>
Reply-To: bremner%cs.sfu.ca@lucid.com (David Bremner)
Organization: CSS, Simon Fraser University, Burnaby, B.C., Canada
References: <NEAL.92Sep29132731@neal.ctd.comsat.com>
Date: Tue, 29 Sep 1992 19:06:06 GMT
Lines: 301
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <NEAL.92Sep29132731@neal.ctd.comsat.com> neal@ctd.comsat.com (Neal Becker) writes:
>I have been using 18.58 with the (recently posted) info stuff, which
>allows alternate info directories.  I have been adding new stuff to
>/usr/local/info.  In each new directory, you make a file called
>'localdir'.
>
>Does lemacs support this?  It doesn't appear to work, and I can't find
>any doc on this.

I "ported" Dave Gillespie's nifty info.el to lemacs.  The following
is an updated patch, incorporating some efficency fixes by
Guido Bosch (Info-inhibit-select-hook).  This patch is intended to 
be applied to a brand-new info-dg.el, not on top of the 
patch I posted previously.

----------------------------   cut here ----------------------------------
*** info-dg.el	Tue Aug 18 12:10:12 1992
--- info.el	Tue Aug 18 12:01:36 1992
***************
*** 207,212 ****
--- 207,220 ----
    "*Non-nil allows Info to execute Lisp code associated with nodes.
  The Lisp code is executed when the node is selected.")
  
+ (defvar Info-select-hook)
+ 
+ (defvar Info-inhibit-select-hook nil
+   "If this variable is non-nil, the Info-select-hook is not activated
+ when an Info node is selected. This is done, e.g., in the function
+ Info-elisp-ref")
+ 
+ 
  (defvar Info-restoring-point t
    "*Non-nil means to restore the cursor position when re-entering a node.")
  
***************
*** 623,629 ****
  	       (replace-match (concat "*" Info-footnote-tag "\\1")))
  	     (set-buffer-modified-p bufmod))))
       (Info-reannotate-node)
!      (run-hooks 'Info-select-hook)
       (if Info-enable-active-nodes (eval active-expression)))))
  
  (defun Info-set-mode-line ()
--- 631,639 ----
  	       (replace-match (concat "*" Info-footnote-tag "\\1")))
  	     (set-buffer-modified-p bufmod))))
       (Info-reannotate-node)
!      ;; running of this hook may be inhibited 
!      (or Info-inhibit-select-hook
! 	 (run-hooks 'Info-select-hook))
       (if Info-enable-active-nodes (eval active-expression)))))
  
  (defun Info-set-mode-line ()
***************
*** 1224,1229 ****
--- 1234,1240 ----
  Give a blank topic name to go to the Index node itself."
    (interactive "sIndex topic: ")
    (let ((orignode Info-current-node)
+ 	(Info-inhibit-select-hook t)
  	(rnode nil)
  	(pattern (format "\n\\* \\([^\n:]*%s[^\n:]*\\):[ \t]*%s"
  			 (regexp-quote topic)
***************
*** 1269,1275 ****
  	    (setq exact (cons found exact)
  		  matches (delq found matches)))
  	  (setq Info-index-alternatives (nconc exact (nreverse matches)))
! 	  (Info-index-next 0)))))
  
  (defun Info-index-next (num)
    "Go to the next matching index item from the last `i' command."
--- 1280,1287 ----
  	    (setq exact (cons found exact)
  		  matches (delq found matches)))
  	  (setq Info-index-alternatives (nconc exact (nreverse matches)))
! 	  )))
! 	  (Info-index-next 0))
  
  (defun Info-index-next (num)
    "Go to the next matching index item from the last `i' command."
***************
*** 1313,1319 ****
    (if (equal key "\C-g")
        (keyboard-quit))
    (info)
!   (Info-find-node "emacs" "Top")
    (setq key (key-description key))
    (let (p)
      (if (setq p (string-match "[@{}]" key))
--- 1325,1332 ----
    (if (equal key "\C-g")
        (keyboard-quit))
    (info)
!   (let ((Info-inhibit-select-hook t))
!     (Info-find-node "emacs" "Top"))
    (setq key (key-description key))
    (let (p)
      (if (setq p (string-match "[@{}]" key))
***************
*** 1340,1346 ****
  			   fn (intern val)))))
    (info)
    (condition-case err
!       (Info-find-node "elisp" "Top")
      (error (Info-find-node "lispref" "Top")))
    (Info-index (symbol-name func)))
  
--- 1353,1360 ----
  			   fn (intern val)))))
    (info)
    (condition-case err
!       (let ((Info-inhibit-select-hook t))
! 	(Info-find-node "elisp" "Top"))
      (error (Info-find-node "lispref" "Top")))
    (Info-index (symbol-name func)))
  
***************
*** 1906,1910 ****
--- 1920,2096 ----
         (message "Tags may have changed.  Use Info-tagify if necessary")))
  
  (run-hooks 'Info-load-hook)
+ 
+ ;;; fontification and mousability for info
+ ;;; Copied from the Lucid Emacs 19.2 distribution
+ ;;; July 15, 1992
+ 
+ ;; Turn off Dave Gillespie's mouse support
+ (setq Info-mouse-support nil)
+ 
+ ;; Fontify the nodes 
+ (setq Info-select-hook 'Info-fontify-node)
+ 
+ ;; Bind the mouse buttons
+ (define-key Info-mode-map 'button2 'Info-follow-indicated-node)
+ (define-key Info-mode-map 'button3 'Info-select-node-menu)
+ 
+ (defvar Info-fontify t)
+ 
+ (defvar Info-footnote-tag "Note" 
+   "If we are loading this file on top of something that does not define
+ Info-footnote-tag, set to the default")
+ 
+ ;; This should really quote Info-footnote-tag in case someone sets it to a 
+ ;; regexp
+ 
+ (defvar Info-xref-regexp (concat "\\*" 
+ 				 (regexp-quote Info-footnote-tag)
+ 				 "[ \n\t]*\\([^:]*\\):"))
+ 
+ (or (find-face 'info-node) (make-face 'info-node))
+ (or (find-face 'info-xref) (make-face 'info-xref))
+ 
+ (if purify-flag  ; being preloaded
+     nil
+   (or (face-differs-from-default-p 'info-node (selected-screen))
+       (copy-face 'bold-italic 'info-node (selected-screen)))
+   (or (face-differs-from-default-p 'info-xref (selected-screen))
+       (copy-face 'bold 'info-xref (selected-screen))))
+ 
+ 
+ (defun Info-fontify-node ()
+   (if Info-fontify
+       (save-excursion
+ 	(map-extents (function (lambda (x y) (delete-extent x)))
+ 		     (current-buffer) (point-min) (point-max) nil)
+ 	(let ((case-fold-search t)
+ 	      extent)
+ 	  (goto-char (point-min))
+ 	  (if (looking-at "^File: [^,: \t]+,?[ \t]+")
+ 	      (progn
+ 		(goto-char (match-end 0))
+ 		(while
+ 		    (looking-at "[ \t]*[^:, \t\n]+:[ \t]+\\([^:,\t\n]+\\),?")
+ 		  (goto-char (match-end 0))
+ 		  (setq extent (make-extent (match-beginning 1) (match-end 1)))
+ 		  (set-extent-face extent 'info-xref)
+ 		  (set-extent-attribute extent 'highlight))))
+ 	  (goto-char (point-min))
+ 	  (while (re-search-forward Info-xref-regexp nil t)
+ 	    (if (= (char-after (1- (match-beginning 0))) ?\") ; hack
+ 		nil
+ 	      (setq extent (make-extent (match-beginning 0) (match-end 1)))
+ 	      (set-extent-face extent 'info-xref)
+ 	      (set-extent-attribute extent 'highlight)))
+ 	  (goto-char (point-min))
+ 	  (if (search-forward "\n* menu:" nil t)
+ 	      (while (re-search-forward "^\\* \\([^:\t\n]*\\):" nil t)
+ 		(setq extent (make-extent (match-beginning 0) (match-end 1)))
+ 		(set-extent-face extent 'info-node)
+ 		(set-extent-attribute extent 'highlight)))))))
+ 
+ (defun Info-indicated-node (event)
+   (save-window-excursion
+     (save-excursion
+       (mouse-set-point event)
+       (let* ((buffer (window-buffer (event-window event)))
+ 	     (p (event-point event))
+ 	     (extent (and p (extent-at p buffer 'highlight)))
+ 	     (text (and extent
+ 			(save-excursion
+ 			  (set-buffer buffer)
+ 			  (buffer-substring
+ 			   (extent-start-position extent)
+ 			   (extent-end-position extent)))))
+ 	     (case-fold-search t)
+ 	     i)
+ 	(cond ((null extent)
+ 	       nil)
+ 	      ((string-match  (concat "\\`" Info-xref-regexp "?\\'") text)
+ 	       ;; it's a cross-reference
+ 	       (setq text (substring text (match-beginning 1) (match-end 1)))
+ 	       (while (setq i (string-match "[ \n\t]+" text i))
+ 		 (setq text (concat (substring text 0 i) " "
+ 				    (substring text (match-end 0))))
+ 		 (setq i (1+ i)))
+ 	       (list 'Info-follow-reference text))
+ 	      ((and (save-excursion (goto-char (extent-start-position extent))
+ 				    (= ?\n (preceding-char)))
+ 		    (string-match "\\`\\* \\([^:\t\n]+\\):?\\'" text))
+ 	       ;; it's a menu entry
+ 	       (setq text (substring text (match-beginning 1) (match-end 1)))
+ 	       (list 'Info-menu text))
+ 	      (t
+ 	       ;; otherwise, it must be a node-name in the first line
+ 	       (list 'Info-goto-node text)))))))
+ 
+ 
+ (defun Info-follow-indicated-node (event)
+   "Follow the crossreference or menu item at the click-location."
+   (interactive "e")
+   (mouse-set-point event)
+   (eval (or (Info-indicated-node event)
+ 	    (error "click on a cross-reference to follow"))))
+ 
+ 
+ (defun Info-select-node-menu (event)
+   "Pops up a menu of applicable Info commands."
+   (interactive "e")
+   (select-window (event-window event))
+   (let ((case-fold-search t)
+ 	up-p prev-p next-p menu
+ 	i text xrefs subnodes in)
+     (save-excursion
+       (goto-char (point-min))
+       (if (looking-at ".*\\bNext:") (setq next-p t))
+       (if (looking-at ".*\\bPrev:") (setq prev-p t))
+       (if (looking-at ".*Up:") (setq up-p t))
+       (setq menu (nconc (list "" "Info Commands:" "----")
+ 			(if (setq in (Info-indicated-node event))
+ 			    (list (vector (car (cdr in)) in t)))
+ 			(list
+ 			 ["Goto Info Top-level" Info-directory t]
+ 			 (vector "Next Node" 'Info-next next-p)
+ 			 (vector "Previous Node" 'Info-prev prev-p)
+ 			 (vector "Parent Node (Up)" 'Info-up up-p)
+ 			 ["Goto Node..." Info-goto-node t]
+ 			 ["Goto Last Visited Node" Info-last t])))
+       (while (re-search-forward Info-xref-regexp nil t)
+ 	(setq text (buffer-substring (match-beginning 1) (match-end 1)))
+ 	(while (setq i (string-match "[ \n\t]+" text i))
+ 	  (setq text (concat (substring text 0 i) " "
+ 			     (substring text (match-end 0))))
+ 	  (setq i (1+ i)))
+ 	(setq xrefs (cons text xrefs)))
+       (setq xrefs (nreverse xrefs))
+       (if (> (length xrefs) 21) (setcdr (nthcdr 20 xrefs) '(more)))
+       (goto-char (point-min))
+       (if (search-forward "\n* menu:" nil t)
+ 	  (while (re-search-forward "^\\* \\([^:\t\n]*\\):" nil t)
+ 	    (setq text (buffer-substring (match-beginning 1) (match-end 1)))
+ 	    (setq subnodes (cons text subnodes))))
+       (setq subnodes (nreverse subnodes))
+       (if (> (length subnodes) 21) (setcdr (nthcdr 20 subnodes) '(more)))
+       )
+     (if xrefs
+ 	(nconc menu (list "----" "Cross-References:" "----")
+ 	       (mapcar (function (lambda (xref)
+ 				   (if (eq xref 'more)
+ 				       "...more..."
+ 				     (vector xref
+ 					     (list 'Info-follow-reference xref)
+ 					     t))))
+ 		       xrefs)))
+     (if subnodes
+ 	(nconc menu (list "----" "Sub-Nodes:" "----")
+ 	       (mapcar (function (lambda (node)
+ 				   (if (eq node 'more)
+ 				       "...more..."
+ 				     (vector node (list 'Info-menu node)
+ 					     t))))
+ 		       subnodes)))
+     (popup-menu menu)))
+ 
  
  ;;; End.

-- 
bremner@cs.sfu.ca 				          ubc-cs!fornax!bremner

From help-lucid-emacs-request@lucid.com  Wed Oct  7 18:00:08 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA07091; Wed, 7 Oct 92 18:00:08 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA11567g; Wed, 7 Oct 92 17:53:50 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA15961; Wed, 7 Oct 92 17:28:21 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA15956; Wed, 7 Oct 92 17:26:45 -0400
Path: uunet!spool.mu.edu!agate!ames!think.com!paperboy.osf.org!hsdndev!rossini
From: rossini@biosun4.harvard.edu (Anthony Rossini)
Newsgroups: alt.lucid-emacs.help
Subject: auctex-6.1
Message-Id: <ROSSINI.92Sep30195233@biosun4.harvard.edu>
Date: 30 Sep 92 23:52:32 GMT
Distribution: alt
Organization: Biostat Dept, HSPH, Boston MA, USA.
Lines: 18
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


Has anyone got Auc-TeX 6.1 running on Lemacs-19.3 without making too many
(or any) changes?  I have 5.4 running with some modifications, and 6.1 runs
without modifications on emacs-18.57, but I've been having difficulties
getting 6.1 to work without problems.  Basically, I'd like some idea of
whether I should jump in to the task of porting the code to 19.3 (i.e. am I
being silly, 'cause it should work, or might it be a moderate sized task?)

thanks,
-tony




--
Anthony Rossini       -       rossini@biostat.harvard.edu
Department of Biostatistics, Harvard School of Public Health
677 Huntington Ave, Boston MA 02115  617-432-1056

From help-lucid-emacs-request@lucid.com  Wed Oct  7 18:09:27 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA07120; Wed, 7 Oct 92 18:09:27 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA11665g; Wed, 7 Oct 92 18:04:06 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA16168; Wed, 7 Oct 92 17:28:47 -0400
Received: from news.UU.NET (via [137.39.1.6]) by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA16162; Wed, 7 Oct 92 17:27:58 -0400
Path: uunet!walter!att-out!rutgers!jvnc.net!yale.edu!spool.mu.edu!agate!boulder!csn!cherokee!mcclen
From: mcclen@advtech.uswest.com ( Chris McClenaghan)
Newsgroups: alt.lucid-emacs.help
Subject: text cursor - how to set its color
Message-Id: <MCCLEN.92Sep30094443@alder.advtech.uswest.com>
Date: 30 Sep 92 16:44:43 GMT
Organization: US WEST Advanced Technologies, Boulder, Colorado
Lines: 8
Nntp-Posting-Host: alder.advtech.uswest.com
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Does anyone know how to set the color of the text cursor, either
from the resource base or interactively via a lisp (both would be
nice)? 

Thanks,

--
Chris McClenaghan    mcclen@advtech.uswest.com

From help-lucid-emacs-request@lucid.com  Wed Oct  7 18:13:27 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA07132; Wed, 7 Oct 92 18:13:27 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA11678g; Wed, 7 Oct 92 18:05:41 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA15950; Wed, 7 Oct 92 17:29:23 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA15944; Wed, 7 Oct 92 17:26:41 -0400
Path: uunet!charon.amdahl.com!pacbell.com!sgiblab!darwin.sura.net!Sirius.dfn.de!chx400!sicsun!lprhp3.epfl.ch!knespl
From: knespl%lprhp3.epfl.ch@lucid.com (David Knespl)
Newsgroups: alt.lucid-emacs.help
Subject: EDT emulation, screen color and font-lock-faces?
Message-Id: <1992Oct2.172434@lprhp3.epfl.ch>
Date: 2 Oct 92 23:24:34 GMT
Reply-To: knespl%lprhp3.epfl.ch@lucid.com (David Knespl)
Organization: Ecole Polytechnique Federale de Lausanne
Lines: 22
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I asked some of these questions already before, but I have no answer :(

I use lemacs-19.3, Sparc 1+, OpenWin 3, Sun keyboard type 4

1) how to get EDT emulation in lucid emacs to work
      edt.el requires "keypad" which is not part of the tar file I downloaded
      I have tried some other emacs edt emulators but no of them seem to have support fort
      sun keypad

2) is there any way to change screen background color  (set-screen-background ?) for  the new screen

3) how to set different font-lock-faces for color and black&white screen if I use the same
     .emacs file on the two different machines (I have the same $HOME)

4) how to set different Xdefaults for color and black&white screen if I use the same app-defaults/Emacs
     on the the two different machines 

5) It seems not to be possible to bind sun's  "help" key , but shift-help works (???)

Thanx
David Knespl


From help-lucid-emacs-request@lucid.com  Wed Oct  7 18:30:38 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA07160; Wed, 7 Oct 92 18:30:38 PDT
Received: by heavens-gate.lucid.com id AA11144g; Wed, 7 Oct 92 16:18:25 PDT
Site: 
Received: from seismo.CSS.GOV by heavens-gate.lucid.com id AA11114g; Wed, 7 Oct 92 16:09:27 PDT
Received: from esosun.CSS.GOV by seismo.CSS.GOV (5.65/1.14)
	id AA09094; Wed, 7 Oct 92 18:31:09 -0400
Received: from greip.css.gov by esosun.css.gov (3.2/) 
	id AA25901; Wed, 7 Oct 92 15:30:57 PDT
Received: by greip.css.gov (4.1/1.14jmj)
	id AA01436; Wed, 7 Oct 92 15:30:58 PDT
Date: Wed, 7 Oct 92 15:30:58 PDT
From: yonkman@greip.css.gov (Tom Yonkman)
Message-Id: <9210072230.AA01436@greip.css.gov>
To: help-lucid-emacs@lucid.com
Subject: EDT emulation
Reply-To: yonkman@esosun.css.gov

Re: email from Dave Knespl

I too would like to know how to get EDT emulation really to work with EDT
keys on Sun 4 keyboard.

--
+---------------------------------------------------------------+
| Tom Yonkman                 UUCP:      seismo!esosun!yonkman  |
| Open Systems Division       Internet:  yonkman@esosun.css.gov |
| SAIC, Mail Stop A2-F        PHONE:     (619)458-4949          |
| 10260 Campus Point Drive    FAX:       (619)458-4993          |
| San Diego, CA  92121                                          |
+---------------------------------------------------------------+


From help-lucid-emacs-request@lucid.com  Wed Oct  7 19:09:47 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA07195; Wed, 7 Oct 92 19:09:47 PDT
Received: by heavens-gate.lucid.com id AA12021g; Wed, 7 Oct 92 19:08:48 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA12014g; Wed, 7 Oct 92 19:08:27 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA19322; Wed, 7 Oct 92 19:09:47 PDT
Date: Wed, 7 Oct 92 19:09:47 PDT
Message-Id: <9210080209.AA19322@thalidomide.lucid>
X-Windows: The art of incompetence.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: phil@mdl.com (Phil Usatine)
Cc: help-lucid-emacs@lucid.com
Subject: Re: GNUS under kemacs can't read large newsgroup
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Phil Usatine's message of Mon 5-Oct-92 06:10:00 GMT <PHIL.92Oct5061000@sol.mdl.com>
References: <PHIL.92Oct5061000@sol.mdl.com>

In message <PHIL.92Oct5061000@sol.mdl.com> Phil Usatine wrote:
>
> Under lemacs, using the version of gnus distributed with Lucid Emacs 19.2
> (June 19) I get the following error when I try to load a group with lots of
> articles: Wrong type argument: syntax-table-p, nil
> 
> The gnus version claims to be 3.13, but I am running 3.13 under emacs
> version 18.57.19 with no difficulties.

This is fixed in lemacs 19.3 (which, incidentally, includes GNUS 3.14.)

	-- Jamie

From help-lucid-emacs-request@lucid.com  Wed Oct  7 23:38:18 1992
Received: from lucid.com ([192.31.212.72]) by labrea.Stanford.EDU (4.1/1.34)
	id AA07909; Wed, 7 Oct 92 23:38:18 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA12586g; Wed, 7 Oct 92 23:35:48 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA10048; Thu, 8 Oct 92 02:36:58 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA10042; Thu, 8 Oct 92 02:36:53 -0400
Newsgroups: alt.lucid-emacs.help,comp.mail.elm
Path: uunet!wupost!zaphod.mps.ohio-state.edu!swrinde!network.ucsd.edu!munnari.oz.au!manuel!csis!stuarth
From: stuarth%argo.csis.dit.csiro.au@lucid.com (Stuart Hungerford)
Subject: Advice wanted on using Lucid Emacs as elm editor...
Message-Id: <1992Oct8.055710.9535@csis.dit.csiro.au>
Organization: CSIRO Division of Information Technology
Date: Thu, 8 Oct 1992 05:57:10 GMT
Lines: 23
Xref: uunet alt.lucid-emacs.help:524 comp.mail.elm:7570
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Is anybody out there using Lucid Emacs as their editor in the Elm mailer?
I've got elm and lemacs talking to each other but it seems that I always get
the last message I've composed back in the editor when I want to do a new 
message.  Also -- it doesn't seem to be "quoting" the received message when
I reply.

This all works with two different editors, so I must be doing something wrong 
in the elm/lemacs setup.

Any advice much appreciated...

Stu

/-----------------------------------------------------------------------------\
| Stuart Hungerford | Internet : stuarth@csis.dit.csiro.au                    |
| CSIRO DIT         | Voice    : +61-6-2750941                                |
| Australia         | Fax      : +61-6-2571052                                |
\-----------------------------------------------------------------------------/
  RWFM? TFRM, TFUM, OTFGSM?
  (Read Which Flaming Manual? The Flaming Reference Manual, The Flaming User
   Manual Or The Flaming Getting Started Manual?)
                                                -- Michael Swaine


From help-lucid-emacs-request@lucid.com  Wed Oct  7 23:51:53 1992
Received: from lucid.com ([192.31.212.72]) by labrea.Stanford.EDU (4.1/1.34)
	id AA07985; Wed, 7 Oct 92 23:51:53 PDT
Received: by heavens-gate.lucid.com id AA12615g; Wed, 7 Oct 92 23:49:18 PDT
Received: from amil.co.il by heavens-gate.lucid.com id AA12610g; Wed, 7 Oct 92 23:48:27 PDT
Received: from ipc1.AMIL ([192.86.90.9]) by amil.co.il (4.1/AMIL-M2)
	id AA02723; Thu, 8 Oct 92 08:48:46 IST
From: danny@ipc1.amil.co.il (Danny Bar-Dov)
Message-Id: <9210080848.ZM221@ipc1>
Date: Thu, 8 Oct 1992 08:48:54 +0000
In-Reply-To: carney%rocky.rational@lucid.com (Mike Carney)
        "at.lucid.emacs.help" (Sep 30, 12:19am)
References: <CARNEY.92Sep29161957@rocky.rational>
X-Mailer: Z-Mail (2.1b.27 9/21/92)
To: carney%rocky.rational@lucid.com (Mike Carney), help-lucid-emacs@lucid.com
Subject: Re: at.lucid.emacs.help

On Sep 30, 12:19am, Mike Carney wrote:

> Does anyone out there know a way to set up the lhilit package so that
> this doesn't happen?
> --
>From your signature I see you are a regular expressions master -
The secret to the lhilit package is regular expressions that describe what
to highlight.  The package includes a minimal set of those.  So,  just
fix them to your likings.

> 
>                                 |     |                         
>     Michael D. Carney           \\_V_//
>     email: carney@rational.com  \/=|=\/   
>     phone: 408-496-3790          [=v=]     
>                                __\___/_____
>                               /..[  _____  ]
>                              /_  [ [  M /] ]   
>                             /../.[ [ M /@] ]            
>                            <-->[_[ [M /@/] ]  
>                           /../ [.[ [ /@/ ] ] 
>      _________________]\ /__/  [_[ [/@/ C] ]
>     <_________________=>>0--]  [=\ \@/ C / /                           
>                       ]/000o   /__\ \ C / /           
>                               /....\ \_/ /                      
>                               [___/=\___/ 
>                               [...] [...]
>     "Remember...No matter     [___/ \___]
>      where you go, there      <---> <--->
>      you are."                [..]   [..]
>                              _[__]   [__]_
>                             [____>   <____]
>                                       
> 
> 
> 
> 
> 
> 
>-- End of excerpt from Mike Carney



From help-lucid-emacs-request@lucid.com  Thu Oct  8 00:01:17 1992
Received: from lucid.com ([192.31.212.72]) by labrea.Stanford.EDU (4.1/1.34)
	id AA08009; Thu, 8 Oct 92 00:01:17 PDT
Received: by heavens-gate.lucid.com id AA12641g; Wed, 7 Oct 92 23:58:46 PDT
Received: from amil.co.il by heavens-gate.lucid.com id AA12634g; Wed, 7 Oct 92 23:58:15 PDT
Received: from ipc1.AMIL ([192.86.90.9]) by amil.co.il (4.1/AMIL-M2)
	id AA02759; Thu, 8 Oct 92 08:58:38 IST
From: danny@ipc1.amil.co.il (Danny Bar-Dov)
Message-Id: <9210080858.ZM231@ipc1>
Date: Thu, 8 Oct 1992 08:58:28 +0000
In-Reply-To: lynbech%daimi.aau.dk@lucid.com (Christian Lynbech)
        "Re: fresh xemacs dies in _start" (Oct  1,  8:14am)
References: <9209301424.AA04080@IMSI.COM> 
	<1992Oct1.081408.10642@daimi.aau.dk>
X-Mailer: Z-Mail (2.1b.27 9/21/92)
To: lynbech%daimi.aau.dk@lucid.com (Christian Lynbech),
        help-lucid-emacs@lucid.com
Subject: Re: fresh xemacs dies in _start

On Oct 1,  8:14am, Christian Lynbech wrote:
> Subject: Re: fresh xemacs dies in _start
> I'm no expert on the inner magic's of loading and linking, but you may want to
> ensure yourself that you are using statically linking rather than dynamic. It
> says in some of the makefiles, that one should always use static linking when
> dumping emacs.
> 
> It would be nice though, if dynamic linking was possible. lemacs is, even by
> modern standards, very big.
There's no real need to dump emacs. It runs very well as an undumed emacs.
You lose of course the pre-loaded .el files but if you use a fast machine, and
if you do not have the habit of starting emacs for each file - but keeping one open
all the time, then you can say CANNOT_DUMP in the config file and use dynamic
libraries.  As a matter of fact, if you're short on memory on a multiuser machine
it might be better than to use a dumped emacs.
This knowledge is from experience. I used undumped emacs working with shared
libraries and it works very good. (that is not less than a dumped emacs).


> 
> 
> ------------------------------------------------------------------------------
> Christian Lynbech
> 
> DAIMI						office: R0.32   phone: 5034
> University of Aarhus,DK-Denmark                 email: lynbech@daimi.aau.dk
> ------------------------------------------------------------------------------
> 			  EMACS, The One True Editor                       
> 
> 
> Hit the philistines three times over the head with the Elisp reference manual.
> 
>                                         - petonic@hal.com (Michael A. Petonic)
> 
>-- End of excerpt from Christian Lynbech



From help-lucid-emacs-request@lucid.com  Thu Oct  8 00:30:04 1992
Received: from lucid.com ([192.31.212.72]) by labrea.Stanford.EDU (4.1/1.34)
	id AA08072; Thu, 8 Oct 92 00:30:04 PDT
Received: by heavens-gate.lucid.com id AA12717g; Thu, 8 Oct 92 00:27:34 PDT
Received: from amil.co.il by heavens-gate.lucid.com id AA12713g; Thu, 8 Oct 92 00:26:46 PDT
Received: from ipc1.AMIL ([192.86.90.9]) by amil.co.il (4.1/AMIL-M2)
	id AA02888; Thu, 8 Oct 92 09:27:12 IST
From: danny@ipc1.amil.co.il (Danny Bar-Dov)
Message-Id: <9210080927.ZM250@ipc1>
Date: Thu, 8 Oct 1992 09:27:00 +0000
In-Reply-To: knespl%lprhp3.epfl.ch@lucid.com (David Knespl)
        "EDT emulation, screen color and font-lock-faces?" (Oct  2, 11:24pm)
References: <1992Oct2.172434@lprhp3.epfl.ch>
X-Mailer: Z-Mail (2.1b.27 9/21/92)
To: knespl%lprhp3.epfl.ch@lucid.com (David Knespl), help-lucid-emacs@lucid.com
Subject: Re: EDT emulation, screen color and font-lock-faces?

On Oct 2, 11:24pm, David Knespl wrote:
> Subject: EDT emulation, screen color and font-lock-faces?
> I asked some of these questions already before, but I have no answer :(
> 
> I use lemacs-19.3, Sparc 1+, OpenWin 3, Sun keyboard type 4
> 
> 
> 3) how to set different font-lock-faces for color and black&white screen if I use the same
>      .emacs file on the two different machines (I have the same $HOME)
Take this as an example:

 (if (x-color-display-p)
	(load "~/emacs/lhilit.color")
		  (load "~/emacs/lhilit.mono"))

> 4) how to set different Xdefaults for color and black&white screen if I use the same app-defaults/Emacs
>      on the the two different machines 
If you're using X11R5 then the resource manager supports #ifdef etc.
and there are predefined macros for color/gray/mono etc. Look in the
X11R5 documentation of resource files.
If you're using X11R4 or older you have to hack some file moving
in your .login/.profile

> 
> Thanx
> David Knespl
> 
>-- End of excerpt from David Knespl



From help-lucid-emacs-request@lucid.com  Thu Oct  8 15:20:56 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA11419; Thu, 8 Oct 92 15:20:56 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA14696g; Thu, 8 Oct 92 15:18:28 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA22524; Thu, 8 Oct 92 18:19:34 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA22519; Thu, 8 Oct 92 18:19:28 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!think.com!sdd.hp.com!elroy.jpl.nasa.gov!jain
From: jain@telerobotics.jpl.nasa.gov (Abhinandan Jain)
Subject: Running out of swap space
Message-Id: <JAIN.92Oct8140300@alpine.jpl.nasa.gov>
Nntp-Posting-Host: alpine.jpl.nasa.gov
Organization: Jet Propulsion Laboratory
Date: Thu, 8 Oct 1992 22:03:00 GMT
Lines: 22
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


I use Lucid Emacs on a Sun SparcStation IPC. I normally start it up once
and keep it running over a number of days. However, I run out of swap
space after a period of time.

I assumed (perhaps naively) that all the swap space used up for a new
screen would be freed when I delete the screen using the delete-screen
function. However that does not appear to happen.  (I have been using the
pstat command to check the memory usage.) Over a period of time, after
having created and deleted a number of screens,  I run out
of swap space. The only way I can recover the memory is to quit Emacs
and start all over again. It is only rarely that I have more than 2-3
active screens at any one time. 

Am I missing something, or is this the normal behavior for Emacs? Thanks
for your help.

By the way, can anyone tell me how to change the background color for the
highlighting used for  minibuffer completion using the middle button on
the mouse? Thanks again.

abhi jain

From help-lucid-emacs-request@lucid.com  Thu Oct  8 17:40:29 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA11790; Thu, 8 Oct 92 17:40:29 PDT
Received: by heavens-gate.lucid.com id AA15123g; Thu, 8 Oct 92 17:39:25 PDT
Received: from rip.hrb.com by heavens-gate.lucid.com id AA15114g; Thu, 8 Oct 92 17:35:21 PDT
Received: from ICF2.HRB.COM by rip.hrb.com (PMDF #2315 ) id
 <01GPPWFFNTKG0006FR@rip.hrb.com>; Thu, 8 Oct 1992 20:36:13 EST
Received: from icf.hrb.com by icf.hrb.com (PMDF #2315 ) id
 <01GPPW2HHGTS9KMF8D@icf.hrb.com>; Thu, 8 Oct 1992 20:35:52 EST
Date: 08 Oct 1992 20:35:50 -0500 (EST)
From: "Eric L. Schott" <ELS@icf.hrb.com>
Subject: Re: EDT emulation, screen color and font-lock-faces
To: help-lucid-emacs@lucid.com
Message-Id: <01GPPW2HHQGY9KMF8D@icf.hrb.com>
X-Vms-To: IN%"help-lucid-emacs@lucid.com"
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; CHARSET=US-ASCII
Content-Transfer-Encoding: 7BIT

> Date: 02 Oct 1992 23:24:34 +0000 (GMT)
> From: knespl%lprhp3.epfl.ch@lucid.com (David Knespl)
> Subject: EDT emulation, screen color and font-lock-faces?

> I asked some of these questions already before, but I have no answer :(

> I use lemacs-19.3, Sparc 1+, OpenWin 3, Sun keyboard type 4

> 1) how to get EDT emulation in lucid emacs to work
>       edt.el requires "keypad" which is not part of the tar file I downloaded
>       I have tried some other emacs edt emulators but no of them seem to have
>       support fort sun keypad

Attached is a file which contains "tpu-edt.el" for lemacs and an xmodmap
file to rebind the Sun keypad to look like a Dec keypad

> 4) how to set different Xdefaults for color and black&white screen if I use
>     the same app-defaults/Emacs on the the two different machines 

In my .Xdefaults file, I have statements such as
  #ifdef COLOR
  #include ".Xdefaults.colors"
  #endif
This only takes places if xrdb is run.  If I have not run xrdb (i.e.
when using an xterm, it takes the defaults.  Works well.

--
Eric L. Schott,    HRB Systems, Inc.    814/238-4311     els@icf.hrb.com
  "As we acquire more knowledge, things do not become more comprehensible
   but more mysterious."                  Albert Schweitzer, "Paris Notes"
----------------------------
begin 664 tpu-edt.and.lemacs.tar.Z
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
)C.A^=;^/8(< 
 
end

From help-lucid-emacs-request@lucid.com  Fri Oct  9 05:30:57 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA13825; Fri, 9 Oct 92 05:30:57 PDT
Received: by heavens-gate.lucid.com id AA16321g; Fri, 9 Oct 92 05:28:41 PDT
Received: from math.uni-muenster.de (GINA.UNI-MUENSTER.DE) by heavens-gate.lucid.com id AA16316g; Fri, 9 Oct 92 05:28:15 PDT
Received: from FOURIER.UNI-MUENSTER.DE by math.uni-muenster.de (4.1/SMI-4.1/smah-1.36)
	id AA25574; Fri, 9 Oct 92 13:28:33 +0100
Organization: Westfaelische Wilhelms-Universitaet, Muenster, Germany
              Department of Mathematics
Message-Id: <9210091228.AA25574@math.uni-muenster.de>
To: rossini@biosun4.harvard.edu (Anthony Rossini)
Cc: help-lucid-emacs@lucid.com
Subject: Re: auctex-6.1 
In-Reply-To: Your message of 30 Sep 92 23:52:32 +0000.
             <ROSSINI.92Sep30195233@biosun4.harvard.edu> 
Date: Fri, 09 Oct 92 13:28:33 +0100
From: stephan%math.uni-muenster.de@lucid.com


In your message of 30 Sep 92 23:52:32 GMT ,

you (rossini@biosun4.harvard.edu (Anthony Rossini)) write:
>
>Has anyone got Auc-TeX 6.1 running on Lemacs-19.3 without making too many
>(or any) changes?  I have 5.4 running with some modifications, and 6.1 runs
>without modifications on emacs-18.57, but I've been having difficulties
>getting 6.1 to work without problems.  Basically, I'd like some idea of
>whether I should jump in to the task of porting the code to 19.3 (i.e. am I
>being silly, 'cause it should work, or might it be a moderate sized task?)

>thanks,
>-tony
Here are my changes to auctex-6a:

--- auc-tex.el~	Wed Jul 22 21:30:20 1992
+++ auc-tex.el	Tue Aug 25 12:36:56 1992
@@ -697,7 +697,7 @@
 
     ;; Make sure sentences ending at end of line get an extra space.
     (goto-char from)
-    (while (re-search-forward "[.?!][])""']*$" nil t)
+    (while (re-search-forward "[.?!][])\"']*$" nil t)
       (insert ? ))
     ;; The change all newlines to spaces.
     (subst-char-in-region from (point-max) ?\n ?\ )



Stephan Heuer

    __  __  __  __  __  __  __   __   / Dipl.-Math. Dr. Stephan Heuer
   / / / / / / / / / / / / / /  / /  /  Institut fuer Numerische Mathematik
  / / / / / / / / / / / / / /  / /  /   Westfaelische Wilhelms-Universitaet
 / /_/ /_/ / / /_/ /_/ / / /__/ /  /
 \________/  \________/  \_____/  /  Einsteinstr. 62, D-4400 Muenster, Germany
				 /   Internet:    stephan@math.uni-muenster.de
				/    Bitnet:      onm23@dmswwu1a.bitnet
			       /     Phone:       +49 251 83 2463

From help-lucid-emacs-request@lucid.com  Fri Oct  9 11:51:01 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA15402; Fri, 9 Oct 92 11:51:01 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA17475g; Fri, 9 Oct 92 11:49:00 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA06962; Fri, 9 Oct 92 14:50:14 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA06958; Fri, 9 Oct 92 14:50:12 -0400
Path: uunet!mcsun!uknet!edcastle!aisb!aisb!tfb
From: tfb@aisb.ed.ac.uk (Tim Bradshaw)
Newsgroups: alt.lucid-emacs.help
Subject: Very long lines
Message-Id: <TFB.92Oct9071755@badger.aisb.ed.ac.uk>
Date: 9 Oct 92 06:17:55 GMT
Organization: Not
Lines: 9
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I often have to edit files which have very long lines -- up to about
1M all on one line.  it takes v18 about 1sec to go from one end of
these files to the other, and lemacs over 20 (by guesswork: I don't
have clocks available which measure time in units less than minutes).
Is there a good reason it is this slow?  It also seems to do pretty
badly on real binary files for the same reason I suspect.  It makes it
really difficult to patch kernels.

--tim

From help-lucid-emacs-request@lucid.com  Fri Oct  9 14:40:49 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA15741; Fri, 9 Oct 92 14:40:49 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA18069g; Fri, 9 Oct 92 14:39:44 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA21751; Fri, 9 Oct 92 17:27:31 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA21747; Fri, 9 Oct 92 17:27:21 -0400
Path: uunet!mcsun!Germany.EU.net!ira.uka.de!chx400!sicsun!lprhp3.epfl.ch!knespl
From: knespl%lprhp3.epfl.ch@lucid.com (David Knespl)
Newsgroups: alt.lucid-emacs.help
Subject: EDT again, I am sorry about that :)
Message-Id: <1992Oct9.194735@lprhp3.epfl.ch>
Date: 10 Oct 92 01:47:35 GMT
Reply-To: knespl%lprhp3.epfl.ch@lucid.com (David Knespl)
Organization: Ecole Polytechnique Federale de Lausanne
Lines: 17
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I am sorry to bother you with my permanent questions about EDTemulation,
but I try to convince our system administrator to place lemacs in usr partition 
and use it.
I have all the files in my HOME and it takes same space. He is the old EDT user etc. etc.
There is no doc , so...

I have installed tpu-edt and changed keymap.  Thanks a lot for posting.
It supports perfectly cursor movement and keypad editing but is there any support
for line mode commands? Like EDT search and replace instead of normal emacs Isearch?
It doesn't seem to work for me 

Thank you for any help
lemacs is  (or are?) really wonderful!

David

P.S.  also thanks for answers about colors and font-lock

From help-lucid-emacs-request@lucid.com  Sat Oct 10 12:14:51 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA18638; Sat, 10 Oct 92 12:14:51 PDT
Received: by heavens-gate.lucid.com id AA20596g; Sat, 10 Oct 92 12:10:23 PDT
Received: from rip.hrb.com by heavens-gate.lucid.com id AA20592g; Sat, 10 Oct 92 12:10:13 PDT
Received: from ICF2.HRB.COM by rip.hrb.com (PMDF #2315 ) id
 <01GPSDNFXKFK0007HG@rip.hrb.com>; Sat, 10 Oct 1992 15:11:17 EST
Received: from icf.hrb.com by icf.hrb.com (PMDF #2315 ) id
 <01GPSDIO0TAO9KMJA1@icf.hrb.com>; Sat, 10 Oct 1992 15:11:03 EST
Date: 10 Oct 1992 15:11:02 -0500 (EST)
From: "Eric L. Schott" <ELS@icf.hrb.com>
Subject: Re: EDT again, ...
To: help-lucid-emacs@lucid.com
Message-Id: <01GPSDIO12XU9KMJA1@icf.hrb.com>
X-Vms-To: IN%"help-lucid-emacs@lucid.com"
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; CHARSET=US-ASCII
Content-Transfer-Encoding: 7BIT

> Date: 10 Oct 1992 01:47:35 +0000 (GMT)
> From: knespl%lprhp3.epfl.ch@lucid.com (David Knespl)
> Subject: EDT again, I am sorry about that :)

> I have installed tpu-edt and changed keymap.  Thanks a lot for posting.
> It supports perfectly cursor movement and keypad editing but is there any
> support for line mode commands? Like EDT search and replace instead of normal
> emacs Isearch? It doesn't seem to work for me 

There is not support in tpu-edt for edt line mode commands.  However,
there are some functions (e.g., "replace") which offer support for
some of those functions.  
---
Eric L. Schott,    HRB Systems, Inc.    814/238-4311     els@icf.hrb.com
  "As we acquire more knowledge, things do not become more comprehensible
   but more mysterious."                  Albert Schweitzer, "Paris Notes"

From help-lucid-emacs-request@lucid.com  Sun Oct 11 03:41:16 1992
Received: from lucid.com ([192.31.212.72]) by labrea.Stanford.EDU (4.1/1.34)
	id AA19713; Sun, 11 Oct 92 03:41:16 PDT
Received: by heavens-gate.lucid.com id AA21871g; Sun, 11 Oct 92 03:38:38 PDT
Received: from amil.co.il by heavens-gate.lucid.com id AA21867g; Sun, 11 Oct 92 03:38:11 PDT
Received: from ipc1.AMIL ([192.86.90.9]) by amil.co.il (4.1/AMIL-M2)
	id AA23647; Sun, 11 Oct 92 12:39:16 IST
Date: Sun, 11 Oct 92 12:39:16 IST
From: danny@amil.co.il (Danny Bar-Dov)
Message-Id: <9210111039.AA23647@amil.co.il>
Received: by ipc1.AMIL (4.1/AMIL-C1)
	id AA25560; Sun, 11 Oct 92 12:39:14 IST
To: help-lucid-emacs@lucid.com
Subject: sun keys

Lucid renames most the sun keys to be fxx, some to rxx.
There are also some pairs of different keys with the same
key definition i.e. the key marked `Again` and 'L2' is
f12 - exactly like the key labeled 'F12'.

1. How is the sun keyboard mapped to these definitions ?

1.a where does this mapping take place (lisp code, c code, other ?)

2. Is there a way to differenciate F12 from Again and how ?

3. Examples for sun keyboard mapping anyone ?

general: sunOS 4.1.2 Lucid 19.3 sparc 1+ keyboard type ?
(it has L keys R keys & F keys)

Thanks

--
Danny.

-------------------------------
Dan Bar Dov

Applied Materials (Israel)

Email:        danny@amil.co.il
Phone: office 972-3-499573
       home   972-3-5469625
TimeZone:     GMT+2
-------------------------------

From help-lucid-emacs-request@lucid.com  Sun Oct 11 12:06:43 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA20874; Sun, 11 Oct 92 12:06:43 PDT
Received: by heavens-gate.lucid.com id AA22487g; Sun, 11 Oct 92 12:05:27 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA22483g; Sun, 11 Oct 92 12:05:18 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA03359; Sun, 11 Oct 92 12:06:43 PDT
Date: Sun, 11 Oct 92 12:06:43 PDT
Message-Id: <9210111906.AA03359@thalidomide.lucid>
X-Windows: Garbage at your fingertips.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: danny@amil.co.il (Danny Bar-Dov)
Cc: help-lucid-emacs@lucid.com
Subject: Re: sun keys
In-Reply-To: Danny Bar-Dov's message of Sun 11-Oct-92 12:39:16 IST <9210111039.AA23647@amil.co.il>
References: <9210111039.AA23647@amil.co.il>

In message <9210111039.AA23647@amil.co.il> Danny Bar-Dov wrote:
>
> Lucid renames most the sun keys to be fxx, some to rxx.

We have nothing to do with this.  These poorly chosen names are built into
the X server.  I have flamed at length about this, but the damage is done...

> There are also some pairs of different keys with the same
> key definition i.e. the key marked `Again` and 'L2' is
> f12 - exactly like the key labeled 'F12'.
> 2. Is there a way to differenciate F12 from Again and how ?

You can make these keys generate different keycodes with xmodmap.
But xmodmap is a monster.  You might want to grab my xkeycaps program
from export.lcs.mit.edu:contrib/xkeycaps.tar.Z instead: it lets you
frob a graphical representation of the keyboard and will write an
xmodmap input file of your changes.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Mon Oct 12 00:54:38 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA22143; Mon, 12 Oct 92 00:54:38 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA23416g; Mon, 12 Oct 92 00:52:06 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA22655; Mon, 12 Oct 92 03:53:25 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA22649; Mon, 12 Oct 92 03:53:23 -0400
Path: uunet!mcsun!corton!nenufar.saclay.cea.fr!soleil!basile
From: basile%soleil.serma.cea.fr@lucid.com (Basile STARYNKEVITCH)
Newsgroups: alt.lucid-emacs.help
Subject: lucid-emacs 19.3 on Solaris2 SunOS5
Keywords: SunOS5, Solaris2, SVR4, Sparc, lucid-emacs 19.3
Message-Id: <1992Oct12.074400.11060@nenufar.saclay.cea.fr>
Date: 12 Oct 92 07:44:00 GMT
Reply-To: basile%soleil.serma.cea.fr@lucid.com (Basile STARYNKEVITCH)
Organization: Commissariat a l Energie Atomique
Lines: 15
Nntp-Posting-Host: soleil-gw.serma.cea.fr
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Hello, I'm new to this newsgroup....

Did anybody ported LucidEmacs 19.3 to SunOS5.0 (on a Sun4/40)?  I tried
a little bit to write a specific configuration file for SunOS5.0 but
failed.  SunOS5.0 is a nearly superset of System V Release 4 on Sparc.
Perhaps an SVR4 config file should be ok...

I wished to build an OLIT based variant of Lemacs (ie i wanted to use
the OLIT widgets in Lemacs). I can compile either with gcc 2.2.2 
(my preference) or (if needed) with Sun unbundled ansi C Solaris compiler.

If any body has some clues, please post and/or email;
Thank you very much...

-- 
Basile STARYNKEVITCH
Commissariat a l Energie Atomique
DRN/DMT/SERMA * C.E. Saclay bat.470 * 91191 GIF/YVETTE CEDEX * France
fax: (33) 1- 69.08.23.81;    phone: (33) 1- 69.08.40.66
email: basile@soleil.serma.cea.fr;  homephone: (33) 1- 46.65.45.53
N.B. Any opinions expressed here are solely mine, and not of my organization.
N.B. Les opinions exprimees ici me sont personnelles et n engagent pas le CEA.

From help-lucid-emacs-request@lucid.com  Mon Oct 12 13:51:16 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA24598; Mon, 12 Oct 92 13:51:16 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA25363g; Mon, 12 Oct 92 13:49:14 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA17462; Mon, 12 Oct 92 16:50:27 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA17457; Mon, 12 Oct 92 16:50:24 -0400
Path: uunet!charon.amdahl.com!pacbell.com!sgiblab!swrinde!news.dell.com!texsun!cronkite.Central.Sun.COM!west.West.Sun.COM!male.EBay.Sun.COM!exodus.Eng.Sun.COM!exodus!jsc
From: jsc@saxon.Eng.Sun.COM (John Cooper)
Newsgroups: gnu.epoch.misc,alt.lucid-emacs.help
Subject: epoch and lucid
Message-Id: <JSC.92Oct12120849@saxon.Eng.Sun.COM>
Date: 12 Oct 92 17:08:49 GMT
Distribution: gnu
Organization: SunSoft, Inc., Mountain View, CA
Lines: 19
Nntp-Posting-Host: saxon
Xref: uunet gnu.epoch.misc:1600 alt.lucid-emacs.help:538
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I'm using epoch V4.2 on a SparcStation 1+ with 28Mb of memory, and am
finding that epoch is "Garbage Collecting" much too frequently. This is
especially noticeable when using mh-e and gnus, but is a general
problem.

I've glanced at lucid and it seems to be *much* faster, although it's
appears to lack some of the epoch features, viz:

o  It doesn't have a shared minibuffer in a separate screen.

o  I couldn't figure how to switch between screens (from the keyboard)
   and have lucid raise the new screen to the top of the window stack.
   In epoch I use C-z o and C-z p.

I saw in the on-line lucid NEWS it mentioned a future merge with epoch.
Is this still planned? When could this be expected?

--
	--- John

From help-lucid-emacs-request@lucid.com  Mon Oct 12 15:25:46 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA24824; Mon, 12 Oct 92 15:25:46 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA25636g; Mon, 12 Oct 92 15:24:40 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA15741; Mon, 12 Oct 92 16:20:30 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA15737; Mon, 12 Oct 92 16:20:28 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!rational.com!rational!carney
From: carney@rocky.rational.com (Mike Carney)
Subject: Minibuffer
Message-Id: <CARNEY.92Oct12120743@rocky.rational.com>
Organization: Rational, Santa Clara, CA
Distribution: alt
Date: Mon, 12 Oct 1992 20:07:43 GMT
Lines: 33
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


Is it possible to have each screen in lemacs have a minibuffer of its
own, with its own history? On my sun4 I have my 'again' key bound to
'repeat-complex-command'. It would be nice to have each screen know
what its last command was.

Also, has anyone out there had any success using the pending-delete
package with the font-lock package.

And lastly, is there any way to set up lemacs so that everytime a new
buffer is introduced a new screen is created? For instance, when I
execute 'M-x compile' the screen that I invoked this from is split,
with the compile messages output to the bottom half. It would be nice
if instead, the compile messages had a screen of their own, and when
the next-error function is called, it would first see if the file in
which the error occurs is currently being displayed in some other
screen, and switch to that one, or create a new screen with the file,
and switch there. Is this making any sense?

Anyway, answers to any of the above questions can be posted to news or
mailed directly to me. Thanks in advance :-).
--
____________________________________________________

    Michael D. Carney              \v/
    carney@rational.com           _<=>_                           
                                 /..[* ] 
    "Remember...          --===]o/[=[**]  
     no matter where you          /_\_*/
     go, there you are" -B.B      [] [] 
__________________________________d]_[b_____________



From help-lucid-emacs-request@lucid.com  Mon Oct 12 16:56:49 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA25063; Mon, 12 Oct 92 16:56:49 PDT
Received: by heavens-gate.lucid.com id AA25951g; Mon, 12 Oct 92 16:55:33 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA25947g; Mon, 12 Oct 92 16:55:19 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA07017; Mon, 12 Oct 92 16:56:48 PDT
Date: Mon, 12 Oct 92 16:56:48 PDT
Message-Id: <9210122356.AA07017@thalidomide.lucid>
X-Windows: Power tools for power losers.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: jsc@saxon.Eng.Sun.COM (John Cooper)
Cc: help-lucid-emacs@lucid.com
Subject: Re: epoch and lucid
Newsgroups: alt.lucid-emacs.help,gnu.epoch.misc
In-Reply-To: John Cooper's message of  12-Oct-92 17:08:49 GMT <JSC.92Oct12120849@saxon.Eng.Sun.COM>
References: <JSC.92Oct12120849@saxon.Eng.Sun.COM>

In message <JSC.92Oct12120849@saxon.Eng.Sun.COM> John Cooper wrote:
>
> o  I couldn't figure how to switch between screens (from the keyboard)
>    and have lucid raise the new screen to the top of the window stack.
>    In epoch I use C-z o and C-z p.

The M-o command switches focus to another screen.  It does this by sending
a TAKE_FOCUS message to your window manager.  Whether this causes the window
to be raised is up to your window manager; clients which second-guess the
window manager by raising the window themselves in such sitations are not
ICCCM compliant.

But, if you're using a window manager that can't be configured to do this,
you can set the variable `auto-raise-screen' to t, and emacs will be non-
ICCCM-compliant for you.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Mon Oct 12 17:37:33 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA25142; Mon, 12 Oct 92 17:37:33 PDT
Received: by heavens-gate.lucid.com id AA26128g; Mon, 12 Oct 92 17:36:13 PDT
Received: from fishery.honeywell.com by heavens-gate.lucid.com id AA26124g; Mon, 12 Oct 92 17:36:01 PDT
Return-Path: <lam@saifr00.cfsat.honeywell.com>
Received: from saifr00.cfsat.honeywell.com (saifr00.ateng.az.Honeywell.COM) by fishery.honeywell.com (5.65c/3.16)
	id AA13975; Mon, 12 Oct 1992 19:37:22 -0500
Received: from oms20.cfsat.honeywell.com by saifr00.cfsat.honeywell.com (4.1/SMI-4.1.1)
	id AA18369; Mon, 12 Oct 92 17:33:07 MST
Date: Mon, 12 Oct 92 17:33:07 MST
From: lam@saifr00.cfsat.honeywell.com (Josh Lam)
Message-Id: <9210130033.AA18369@saifr00.cfsat.honeywell.com>
Received: by oms20.cfsat.honeywell.com (4.1/SMI-4.1)
	id AA13815; Mon, 12 Oct 92 17:35:43 MST
To: help-lucid-emacs@lucid.com
Subject: Novice Help On Key Binding

Hi,

I am no emacs or lisp guru so please pardon me if this is a simple
question:

I have been using GNU Emacs on a Sun and in my .emacs file, I did the
following: 

(global-set-key "\e[214z" 'beginning-of-buffer) ; binds R7 key to
                                                ; beginning-of-buffer 
                                                ; command

However when I started lucid emacs, it loaded my .emacs file but when I
tried to use the R7 key it says "f27 not defined"

Why do I get f27 when I press the R7 key? What do I need to do in my .emacs
file in order to make the R7 key bind to beginning-of-buffer?

Thanks in advance.

Josh Lam
Honeywell Inc
lam@saifr00.cfsat.honeywell.com


From help-lucid-emacs-request@lucid.com  Mon Oct 12 18:50:11 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA25307; Mon, 12 Oct 92 18:50:11 PDT
Received: by heavens-gate.lucid.com id AA26306g; Mon, 12 Oct 92 18:49:09 PDT
Received: from Sun.COM by heavens-gate.lucid.com id AA26302g; Mon, 12 Oct 92 18:48:57 PDT
Received: from Eng.Sun.COM (zigzag-bb.Corp.Sun.COM) by Sun.COM (4.1/SMI-4.1)
	id AA07273; Mon, 12 Oct 92 18:50:20 PDT
Received: from saxon.Eng.Sun.COM by Eng.Sun.COM (4.1/SMI-4.1)
	id AA18530; Mon, 12 Oct 92 18:50:26 PDT
Received: from localhost by saxon.Eng.Sun.COM (4.1/SMI-4.1)
	id AA01934; Mon, 12 Oct 92 18:56:54 PDT
Message-Id: <9210130156.AA01934@saxon.Eng.Sun.COM>
To: Jamie Zawinski <jwz@lucid.com>
Cc: John.Cooper@Eng.Sun.COM
Cc: help-lucid-emacs@lucid.com
Subject: Re: epoch and lucid 
In-Reply-To: Your message of "Mon, 12 Oct 92 16:56:48 PST."
             <9210122356.AA07017@thalidomide.lucid> 
Date: Mon, 12 Oct 92 18:56:53 PDT
From: "Frame By Frame" <John.Cooper@Eng.Sun.COM>

> "Jamie" == Jamie Zawinski <jwz@lucid.com> writes:

>
> o  I couldn't figure how to switch between screens (from the keyboard)
>    and have lucid raise the new screen to the top of the window stack.
>    In epoch I use C-z o and C-z p.

  Jamie> The M-o command switches focus to another screen.  It does this
  Jamie> by sending a TAKE_FOCUS message to your window manager.
  Jamie> Whether this causes the window to be raised is up to your
  Jamie> window manager; clients which second-guess the window manager
  Jamie> by raising the window themselves in such sitations are not
  Jamie> ICCCM compliant.

Most window managers do not raise windows when they get WM_TAKE_FOCUS
unless auto-raise is set. Unfortunately I dislike auto-raise because
windows raise as I move the pointer across them.

Setting the variable auto-raise-screen has similar effect - when the
pointer crosses any lucid windows they raise.

With epoch I have my desired behavior: If I move the pointer across
screens, they do *not* autoraise; however, if I move to another screen
using the keyboard, that screen does rise to the top.

This might seem a small point, but I find auto-raise so irritating, but
when I move to another screen with the keyboard I always want to see
that screen.

Is there some way (maybe undocumented?) that I could arrange for this
behavior?


Will lucid support a shared minibuffer at some time?

Thanks,
	--- John.

ps. M-x set-cursor-color didn't seem to work, and I couldn't find much
documentatin on extents/styles/X Resources, etc.
set-screen-background didn't work either - I needed to use
set-face-background.

From help-lucid-emacs-request@lucid.com  Mon Oct 12 20:34:11 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA25565; Mon, 12 Oct 92 20:34:11 PDT
Received: by heavens-gate.lucid.com id AA26518g; Mon, 12 Oct 92 20:33:09 PDT
Received: from scylla.lucid (scylla.lucid.com) by heavens-gate.lucid.com id AA26514g; Mon, 12 Oct 92 20:32:58 PDT
Received: by scylla.lucid (4.1/SMI-4.1)
	id AA08981; Mon, 12 Oct 92 20:35:03 PDT
Date: Mon, 12 Oct 92 20:35:03 PDT
From: devin%scylla@lucid.com (Matthieu Devin)
Message-Id: <9210130335.AA08981@scylla.lucid>
To: "Frame By Frame" <John.Cooper@Eng.Sun.COM>
Cc: Jamie Zawinski <jwz@lucid.com>, John.Cooper@Eng.Sun.COM,
        help-lucid-emacs@lucid.com
Subject: Re: epoch and lucid 
In-Reply-To: "Frame By Frame"'s message of Mon 12-Oct-92 18:56:53 PDT <9210130156.AA01934@saxon.Eng.Sun.COM>
References: <9210122356.AA07017@thalidomide.lucid>
	<9210130156.AA01934@saxon.Eng.Sun.COM>

You can raise a screen by calling the function raise-screen from elisp. 

     raise-screen: (screen)
       -- a built-in function.
     Make the window of SCREEN be the uppermost one (fully visible).

From help-lucid-emacs-request@lucid.com  Mon Oct 12 23:38:56 1992
Received: from lucid.com ([192.31.212.72]) by labrea.Stanford.EDU (4.1/1.34)
	id AA25854; Mon, 12 Oct 92 23:38:56 PDT
Received: by heavens-gate.lucid.com id AA26775g; Mon, 12 Oct 92 23:36:14 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA26771g; Mon, 12 Oct 92 23:36:04 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA07989; Mon, 12 Oct 92 23:37:38 PDT
Date: Mon, 12 Oct 92 23:37:38 PDT
Message-Id: <9210130637.AA07989@thalidomide.lucid>
X-Windows: Live the nightmare.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: "Frame By Frame" <John.Cooper@Eng.Sun.COM>
Cc: John.Cooper@Eng.Sun.COM, help-lucid-emacs@lucid.com
Subject: Re: epoch and lucid 
In-Reply-To: Frame By Frame's message of Mon 12-Oct-92 18:56:53 PDT <9210130156.AA01934@saxon.Eng.Sun.COM>
References: <9210122356.AA07017@thalidomide.lucid>
	<9210130156.AA01934@saxon.Eng.Sun.COM>

In message <9210130156.AA01934@saxon.Eng.Sun.COM> Frame By Frame wrote:
>
> With epoch I have my desired behavior: If I move the pointer across
> screens, they do *not* autoraise; however, if I move to another screen
> using the keyboard, that screen does rise to the top.
> 
> This might seem a small point, but I find auto-raise so irritating, but
> when I move to another screen with the keyboard I always want to see
> that screen.

I suppose it would make sense for this to be an option of the
other-window-any-screen command.

> Is there some way (maybe undocumented?) that I could arrange for this
> behavior?

It's a small matter of programming :-)

> Will lucid support a shared minibuffer at some time?

There are lots of things ahead of it on the list, but if someone gets it
working, I'd be happy to install the patches.  It kind of worked at one
time, in the distant past.  We disabled it because it tended to make
emacs crash a lot in redisplay and we didn't have time to screw around 
with it.

> ps. M-x set-cursor-color didn't seem to work, and I couldn't find much
> documentatin on extents/styles/X Resources, etc.

If you have 19.3, the emacs manual contains documentation on faces and
extents.  There's some stuff on X resources in the NEWS file; this will
make it into the manual eventually.

> set-screen-background didn't work either - I needed to use
> set-face-background.

the set-screen-background function probably shouldn't exist any more (or
should just set the background of the default face.)  Many of the screen-
manipulation functions don't really work.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Tue Oct 13 00:52:55 1992
Received: from lucid.com ([192.31.212.72]) by labrea.Stanford.EDU (4.1/1.34)
	id AA26159; Tue, 13 Oct 92 00:52:55 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA26928g; Tue, 13 Oct 92 00:49:26 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA15026; Tue, 13 Oct 92 03:50:48 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA15020; Tue, 13 Oct 92 03:50:45 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!mcsun!sunic!aun.uninett.no!nuug!nntp.nta.no!hal.nta.no!thormod
From: thormod%hal.nta.no@lucid.com (Thormod Spilling FDD)
Subject: Re: Novice Help On Key Binding
Message-Id: <1992Oct13.072808.7283@nntp.nta.no>
Nntp-Posting-Host: kilrathi.nta.no
Organization: Norwegian Telecom Research
References:  <9210130033.AA18369@saifr00.cfsat.honeywell.com>
Date: Tue, 13 Oct 92 07:28:08 GMT
Lines: 36
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <9210130033.AA18369@saifr00.cfsat.honeywell.com>, lam@saifr00.cfsat.honeywell.com (Josh Lam) writes:
|> Hi,
|> 
|> I am no emacs or lisp guru so please pardon me if this is a simple
|> question:
|> 
|> I have been using GNU Emacs on a Sun and in my .emacs file, I did the
|> following: 
|> 
|> (global-set-key "\e[214z" 'beginning-of-buffer) ; binds R7 key to
|>                                                 ; beginning-of-buffer 
|>                                                 ; command
|> 
|> However when I started lucid emacs, it loaded my .emacs file but when I
|> tried to use the R7 key it says "f27 not defined"
|> 
|> Why do I get f27 when I press the R7 key? What do I need to do in my .emacs
|> file in order to make the R7 key bind to beginning-of-buffer?
|> 
|> Thanks in advance.
|> 
|> Josh Lam
|> Honeywell Inc
|> lam@saifr00.cfsat.honeywell.com
|> 


Hi,

try this: (global-set-key [f27] 'beginning-of-buffer) 
	
		; binds R7 (f27) key to beginning-of-buffer

Thormod Spilling
Norwegian Telecom Research
thormod@nta.no

From help-lucid-emacs-request@lucid.com  Tue Oct 13 03:14:17 1992
Received: from lucid.com ([192.31.212.72]) by labrea.Stanford.EDU (4.1/1.34)
	id AA26279; Tue, 13 Oct 92 03:14:17 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA27111g; Tue, 13 Oct 92 03:09:01 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA04985; Tue, 13 Oct 92 06:10:23 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA04978; Tue, 13 Oct 92 06:10:22 -0400
Path: uunet!mcsun!sun4nl!cwi.nl!reynolds
From: reynolds%cwi.nl@lucid.com (Graham Reynolds)
Newsgroups: alt.lucid-emacs.help
Subject: Help building lemacs on SGI Indigo
Message-Id: <7547@charon.cwi.nl>
Date: 13 Oct 92 09:07:56 GMT
Lines: 33
Organisation: Centrum voor Wiskunde en Informatica
              Kruislaan 413, 1098 SJ Amsterdam, The Netherlands
Telefax:      +31 20 592 4199
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Hi,

I've been trying to build lemacs (v19.3) on my SGI Indigo-XS (IRIX 4.0.2) without much luck.

I receive the following loader errors which I don't understand:

        cd etc; make  all
        cd src; make  all
        make    -f xmakefile  all
        ld    -L. -L./lwlib    -o temacs pre-crt0.o /usr/lib/crt1.o  dispnew.o screen.o scroll.o xdisp.o window.o       events.o event-alloc.o event-stream.o  term.o cm.o xterm.o xfns.o xselect.o xutils.o event-Xt.o menubar.o sgiplay.o    emacs.o keyboard.o macros.o keymap.o sysdep.o    buffer.o filelock.o insdel.o marker.o   minibuf.o fileio.o dired.o filemode.o   cmds.o casetab.o casefiddle.o indent.o search.o regex.o undo.o  alloc.o data.o doc.o editfns.o callint.o       eval.o floatfns.o fns.o print.o 



lread.o  abbrev.o syntax.o font_lock.o unexmips.o  mocklisp.o bytecode.o         process.o callproc.o environ.o  doprnt.o extents.o faces.o elhash.o hash.o              realpath.o  terminfo.o lastfile.o gmalloc.o vm-limit.o   ScreenWidget.o ColumnWidget.o EmacsShell.o      -laudio
      ./lwlib/liblw.a -lXm -lXaw -lXext -lXt -lXmu -lX11       -lsun -lmld  -lcurses        -lm  -lbsd -lc /usr/lib/crtn.o
ld:
Undefined:
__main
create_project_p_sheet
create_debugger_p_sheet
create_breaklist_p_sheet
create_le_browser_p_sheet
create_class_browser_p_sheet
create_call_browser_p_sheet
*** Error code 1

Stop.

Does anyone recognise this situation and have a fix to hand, or can someone who has successfully built lemacs for an Indigo advise me on what they did!

Thanks,

-- Graham



From help-lucid-emacs-request@lucid.com  Tue Oct 13 09:32:48 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA27959; Tue, 13 Oct 92 09:32:48 PDT
Received: by heavens-gate.lucid.com id AA27772g; Tue, 13 Oct 92 09:31:22 PDT
Received: from amil.co.il by heavens-gate.lucid.com id AA27742g; Tue, 13 Oct 92 09:25:25 PDT
Received: from ipc8.AMIL ([192.86.90.18]) by amil.co.il (4.1/AMIL-M2)
	id AA15803; Tue, 13 Oct 92 18:26:20 IST
Date: Tue, 13 Oct 92 18:26:20 IST
From: danny@amil.co.il (Danny Bar-Dov)
Message-Id: <9210131626.AA15803@amil.co.il>
Received: by ipc8.AMIL (4.1/SMI-4.1)
	id AA00505; Tue, 13 Oct 92 18:26:17 IST
To: help-lucid-emacs@lucid.com
Subject: ispell version with lucid 19.3

Some users here noted that they miss some functionality they used to
have in emacs 18.55.

The diff count is 1120 lines so I went to look for defuns.
Here are the defuns in the ispell.el coming with lucid 19.3:

(defun highlight-spelling-error (start end &optional highlight dont-modify)
(defun highlight-spelling-error-v19 (start end &optional highlight dont-modify)
(defun highlight-spelling-error-v19-Lucid (start end &optional highlight
(defun ispell-buffer () 
(defun ispell-choose (miss guess word)
(defun ispell-filter (process output)
(defun ispell-init-process ()
(defun ispell-parse-output (output)
(defun ispell-pdict-save ()
(defun ispell-region (reg-start reg-end)
(defun ispell-word (&optional preceding quietly)
(defun lookup-words (word)
(defun overlay-window (height)

Here are the defuns of the 18.55 ispell.el:

(defun ispell-buffer () 
(defun ispell-choose (choices word)
(defun ispell-complete-word ()
(defun ispell-ignore-later-occurrences (word)
(defun ispell-init-process ()
(defun ispell-parse-output (output)
(defun ispell-region (start end)
(defun ispell-word (&optional quietly)
(defun overlay-window (height)
; (defun highlight-region (p1 p2)
; (defun unhighlight-region (p1 p2)

What users here really miss is ispell-complete-word.
Does anyone know about a more complete ispell ?

--
Danny.

-------------------------------
Dan Bar Dov

Applied Materials (Israel)

Email:        danny@amil.co.il
Phone: office 972-3-499573
       home   972-3-5469625
TimeZone:     GMT+2
-------------------------------

From help-lucid-emacs-request@lucid.com  Tue Oct 13 12:11:15 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA28453; Tue, 13 Oct 92 12:11:15 PDT
Received: by heavens-gate.lucid.com id AA28233g; Tue, 13 Oct 92 12:09:45 PDT
Received: from amil.co.il by heavens-gate.lucid.com id AA28206g; Tue, 13 Oct 92 12:04:53 PDT
Received: from ipc8.AMIL ([192.86.90.18]) by amil.co.il (4.1/AMIL-M2)
	id AA15803; Tue, 13 Oct 92 18:26:20 IST
Date: Tue, 13 Oct 92 18:26:20 IST
From: danny@amil.co.il (Danny Bar-Dov)
Message-Id: <9210131626.AA15803@amil.co.il>
Received: by ipc8.AMIL (4.1/SMI-4.1)
	id AA00505; Tue, 13 Oct 92 18:26:17 IST
To: help-lucid-emacs@lucid.com
Subject: ispell version with lucid 19.3

Some users here noted that they miss some functionality they used to
have in emacs 18.55.

The diff count is 1120 lines so I went to look for defuns.
Here are the defuns in the ispell.el coming with lucid 19.3:

(defun highlight-spelling-error (start end &optional highlight dont-modify)
(defun highlight-spelling-error-v19 (start end &optional highlight dont-modify)
(defun highlight-spelling-error-v19-Lucid (start end &optional highlight
(defun ispell-buffer () 
(defun ispell-choose (miss guess word)
(defun ispell-filter (process output)
(defun ispell-init-process ()
(defun ispell-parse-output (output)
(defun ispell-pdict-save ()
(defun ispell-region (reg-start reg-end)
(defun ispell-word (&optional preceding quietly)
(defun lookup-words (word)
(defun overlay-window (height)

Here are the defuns of the 18.55 ispell.el:

(defun ispell-buffer () 
(defun ispell-choose (choices word)
(defun ispell-complete-word ()
(defun ispell-ignore-later-occurrences (word)
(defun ispell-init-process ()
(defun ispell-parse-output (output)
(defun ispell-region (start end)
(defun ispell-word (&optional quietly)
(defun overlay-window (height)
; (defun highlight-region (p1 p2)
; (defun unhighlight-region (p1 p2)

What users here really miss is ispell-complete-word.
Does anyone know about a more complete ispell ?

--
Danny.

-------------------------------
Dan Bar Dov

Applied Materials (Israel)

Email:        danny@amil.co.il
Phone: office 972-3-499573
       home   972-3-5469625
TimeZone:     GMT+2
-------------------------------

From help-lucid-emacs-request@lucid.com  Wed Oct 14 01:34:45 1992
Received: from lucid.com ([192.31.212.72]) by labrea.Stanford.EDU (4.1/1.34)
	id AA00467; Wed, 14 Oct 92 01:34:45 PDT
Received: by heavens-gate.lucid.com id AA00320g; Wed, 14 Oct 92 01:28:25 PDT
Received: from Relay.Prime.COM by heavens-gate.lucid.com id AA00316g; Wed, 14 Oct 92 01:28:12 PDT
Received: from 31107711123637 (caller not authenticated) by Relay.Prime.COM; 14 Oct 92 04:31:10 EST
Received: from CIS.Prime.COM [130.21.130.10] by APOLLO.CIS.Prime.COM ; 14 Oct 92 09:27:32 N
Received: from hamal.CIS.Prime.COM by CIS.Prime.COM (4.1/SMI-4.1.1/CIS)
	id AA20606; Wed, 14 Oct 92 09:23:47 BST
Date: Wed, 14 Oct 92 09:23:46 BST
From: David Hughes <djh@CIS.Prime.COM>
Message-Id: <9210140823.AA20606@CIS.Prime.COM>
Received: by hamal.CIS.Prime.COM (4.1/SMI-4.1)
	id AA01015; Wed, 14 Oct 92 09:23:53 BST
To: danny@amil.co.il (Danny Bar-Dov)
Cc: help-lucid-emacs@lucid.com
Subject: Re: ispell version with lucid 19.3

Excerpt of message (sent 13 October 92) by Danny Bar-Dov:
> Some users here noted that they miss some functionality they used to
> have in emacs 18.55.
> 
> The diff count is 1120 lines so I went to look for defuns.
> Here are the defuns in the ispell.el coming with lucid 19.3:
> 
> (defun highlight-spelling-error (start end &optional highlight dont-modify)
> (defun highlight-spelling-error-v19 (start end &optional highlight dont-modify)
> (defun highlight-spelling-error-v19-Lucid (start end &optional highlight
> (defun ispell-buffer () 
> (defun ispell-choose (miss guess word)
> (defun ispell-filter (process output)
> (defun ispell-init-process ()
> (defun ispell-parse-output (output)
> (defun ispell-pdict-save ()
> (defun ispell-region (reg-start reg-end)
> (defun ispell-word (&optional preceding quietly)
> (defun lookup-words (word)
> (defun overlay-window (height)
> 
> Here are the defuns of the 18.55 ispell.el:
> 
> (defun ispell-buffer () 
> (defun ispell-choose (choices word)
> (defun ispell-complete-word ()
> (defun ispell-ignore-later-occurrences (word)
> (defun ispell-init-process ()
> (defun ispell-parse-output (output)
> (defun ispell-region (start end)
> (defun ispell-word (&optional quietly)
> (defun overlay-window (height)
> ; (defun highlight-region (p1 p2)
> ; (defun unhighlight-region (p1 p2)
> 
> What users here really miss is ispell-complete-word.
> Does anyone know about a more complete ispell ?
> 

I had so much trouble with and DISLIKED the ispell provided with lucid emacs
that I replaced the entire ispell package with the one from GNU Emacs 18.57
which works perfectly well for my liking. Rememeber you have to replace the
ispell exceutable too if you do this.

--
Regards, David

From help-lucid-emacs-request@lucid.com  Wed Oct 14 06:22:09 1992
Received: from lucid.com ([192.31.212.72]) by labrea.Stanford.EDU (4.1/1.34)
	id AA00971; Wed, 14 Oct 92 06:22:09 PDT
Received: by heavens-gate.lucid.com id AA00701g; Wed, 14 Oct 92 06:19:17 PDT
Received: from gatech.edu by heavens-gate.lucid.com id AA00697g; Wed, 14 Oct 92 06:19:03 PDT
Received: from burdell.cc.gatech.edu by gatech.edu (4.1/Gatech-9.1)
	id AA02559 for help-lucid-emacs@lucid.com; Wed, 14 Oct 92 09:20:23 EDT
Received: from multimedia.cc.gatech.edu (mcg.cc.gatech.edu) by burdell.cc.gatech.edu (4.1/SMI-4.1)
	id AA21427; for help-lucid-emacs@lucid.com; Tue, 13 Oct 92 19:26:16 EDT
Received: by multimedia.cc.gatech.edu (4.1/SMI-4.1)
	id AA02459; Tue, 13 Oct 92 19:22:54 EDT
Date: Tue, 13 Oct 92 19:22:54 EDT
From: iansmith@cc.gatech.edu (Ian Smith)
Message-Id: <9210132322.AA02459@multimedia.cc.gatech.edu>
To: help-lucid-emacs@lucid.com
Subject: screen-menubar
Reply-To: Ian Smith <iansmith@cc.gatech.edu>
X-Vi: NOT!
X-Mailer: VM 5.32L [Lucid Emacs 19.3]

what's up with this? From the NEWS file:
 

------------------------------
screen-menubar (&optional screen)

Returns the menubar description list of the given screen,
defaulting to the current screen.

------------------------------

It doesn't work on my copy.... It would be nice to see if I had already
inserted something in the menubar before I go trying to do it again...

ian


-----
Enjoy the polyrhythmic ritual/assault experience of Crash Worship.
ian smith, multimedia computing group, georgia tech, iansmith@cc.gatech.edu 

From help-lucid-emacs-request@lucid.com  Wed Oct 14 09:07:23 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA00322; Wed, 14 Oct 92 09:07:23 PDT
Received: by heavens-gate.lucid.com id AA01085g; Wed, 14 Oct 92 09:05:36 PDT
Received: from ingr.ingr.com by heavens-gate.lucid.com id AA01078g; Wed, 14 Oct 92 09:04:04 PDT
Received: from matis.UUCP by ingr.ingr.com (5.65c/1.920611)
	id AA28933; Wed, 14 Oct 1992 11:05:25 -0500
Received: from simpson.ingr.com by turtles (4.1/SMI-4.1)
	id AA08657; Wed, 14 Oct 92 17:54:45 IST
Received: by simpson.ingr.com (4.1/SMI-4.1)
	id AA07405; Wed, 14 Oct 92 17:53:48 IST
From: matis!amir@lucid.com (Amir J Katz)
Message-Id: <9210141553.AA07405@simpson.ingr.com>
Subject: auto-mode alist does not work at first time
To: help-lucid-emacs@lucid.com (Lucid Emacs help M.L.)
Date: Wed, 14 Oct 92 17:53:47 EET
Cc: simpson!amir (Amir J. Katz)
Organization: SEE Technologies Ltd.
Reply-To: matis!amir@lucid.com
X-Reply-To: amir@matis.ingr.COM
X-Mailer: ELM [version 2.3 PL11]

I have the following lines in my .emacs

(autoload 'elm-mode "elm-mode" "" t)
(setq auto-mode-alist (cons (cons "\\.[0-9]+$" 'elm-mode) auto-mode-alist))

And this is the file elm-mode.el:
-------------
(defun elm-mode () "\
Temporary minor mode triggered by \".[0-9]*$\" suffix on a file,
used to automatically set filling mode."
  (interactive)
  (auto-fill-mode 1)
  (setq fill-column 76)
  (message "ELM mode...fill column set to 76")
)
-------------

For some weird reason, in the first time a file matching the extension is
accessed, the elm-mode is NOT invoked. From the second time on, it is always
invoked. What gives?

Config: lemacs 19.3 on SunOS 4.1.3, built with gcc 2.2.2
-- 
/* ----------------------------------------------------------- */
/*  Amir J. Katz             |   amir@matis.ingr.COM           */
/*  System Specialist        |   Voice:  +972 52-584684        */
/*  SEE Technologies Ltd.    |   Fax:    +972 52-543917        */
/* ............ Solaris 2.0 - The Final Frontier ? ........... */

From help-lucid-emacs-request@lucid.com  Wed Oct 14 13:02:39 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01260; Wed, 14 Oct 92 13:02:39 PDT
Received: by heavens-gate.lucid.com id AA01872g; Wed, 14 Oct 92 13:00:08 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA01849g; Wed, 14 Oct 92 12:57:09 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA13535; Wed, 14 Oct 92 12:58:40 PDT
Date: Wed, 14 Oct 92 12:58:40 PDT
Message-Id: <9210141958.AA13535@thalidomide.lucid>
X-Windows: You'll envy the dead.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: Ian Smith <iansmith@cc.gatech.edu>
Cc: help-lucid-emacs@lucid.com
Subject: Re: screen-menubar
In-Reply-To: Ian Smith's message of Tue 13-Oct-92 19:22:54 EDT <9210132322.AA02459@multimedia.cc.gatech.edu>
References: <9210132322.AA02459@multimedia.cc.gatech.edu>

In message <9210132322.AA02459@multimedia.cc.gatech.edu> Ian Smith wrote:
>
> what's up with this? From the NEWS file:
> ------------------------------
> screen-menubar (&optional screen)

Menubars are no longer screen-local.  Look at the variable `current-menubar'
instead.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Wed Oct 14 14:35:57 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01733; Wed, 14 Oct 92 14:35:57 PDT
Received: by heavens-gate.lucid.com id AA02301g; Wed, 14 Oct 92 14:33:24 PDT
Received: from Sun.COM by heavens-gate.lucid.com id AA02275g; Wed, 14 Oct 92 14:29:50 PDT
Received: from snail.Sun.COM (snail.Corp.Sun.COM) by Sun.COM (4.1/SMI-4.1)
	id AA12791; Wed, 14 Oct 92 14:30:57 PDT
Received: from East.Sun.COM by snail.Sun.COM (4.1/SMI-4.1)
	id AA01566; Wed, 14 Oct 92 14:30:52 PDT
Received: from sunpix.East.Sun.COM (string-beans.East.Sun.COM) by East.Sun.COM (4.1/SMI-4.1)
	id AA00472; Wed, 14 Oct 92 17:30:49 EDT
Received: from quixote.East.Sun.COM by sunpix.East.Sun.COM (4.1/SMI-4.1)
	id AA25016; Wed, 14 Oct 92 17:30:46 EDT
Date: Wed, 14 Oct 92 17:30:46 EDT
From: jlf@sunpix.East.Sun.COM (John L. Furlani)
Message-Id: <9210142130.AA25016@sunpix.East.Sun.COM>
Received: by quixote.East.Sun.COM (5.0/SMI-SVR4)
	id AA01698; Wed, 14 Oct 92 17:30:43 EDT
To: help-lucid-emacs@lucid.com
Subject: Lucid Emacs Patch for Solaris 2
Mailed-From: GNU Emacs or Epoch (19.3.13 Lucid)
Content-Length: 38887

I've completed porting Lucid Emacs 19.3 to Solaris 2.  Below is a patch that
can be applied to the distributed 19.3 source code that will allow Lucid Emacs
to be built under Solaris 2.  Be in the actual lucid-19.3 directory and apply
the patch there.

The only known problem is a small pty inconsistency that's still being looked
into.  I'm not sure if all the Toolkits work, but it should compile directly
without any modification.

j.

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
John L. Furlani                                    XIL Video Software
MaBell:		(919)460-8383                      SunSoft, Inc.
Internet:	john.furlani@East.Sun.COM          P.O. Box 13447
Uucp:		sun!sunpix!furlani@uunet.uu.net    RTP, NC 27709

 "Mars is essentially in the same orbit ... somewhat the same
   distance from the Sun, which is very important.  We have seen
   pictures where there are canals, we believe, and water.  If
   there is water, that means there is oxygen.  If oxygen, that
   means we can breathe." -- Vice Pres. Dan Quayle on Mars
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

------- Included Patch -- Cut Here -------
diff -c -N -p -r etc/b2m.c etc/b2m.c
*** etc/b2m.c	Mon Jun 29 18:28:08 1992
--- etc/b2m.c	Thu Sep 10 22:13:24 1992
***************
*** 17,23 ****
--- 17,31 ----
  
  #include <stdio.h>
  #include <time.h>
+ 
+ #define NO_SHORTNAMES
+ #include "../src/config.h"
+ 
+ #ifndef USG
  #include <strings.h>
+ #else
+ #include <string.h>
+ #endif
  
  /* Why can't Sun learn to write libraries and include files? */
  extern char *strtok ();
diff -c -N -p -r etc/etags.c etc/etags.c
*** etc/etags.c	Mon Jun 29 18:28:13 1992
--- etc/etags.c	Thu Sep 10 22:12:20 1992
*************** the Free Software Foundation, 675 Mass A
*** 31,36 ****
--- 31,39 ----
  #include <sys/types.h>
  #include <sys/stat.h>
  
+ #define NO_SHORTNAMES
+ #include "../src/config.h"
+ 
  extern char *malloc (), *realloc ();
  extern char *getenv ();
  extern char *index (), *rindex ();
*************** extern char *index (), *rindex ();
*** 37,43 ****
  extern char *strcpy (), *strncpy ();
  extern int strcmp ();
  
! #ifdef hpux
  #define notdef
  #endif
  
--- 40,46 ----
  extern char *strcpy (), *strncpy ();
  extern int strcmp ();
  
! #if defined(hpux) || defined(USG5_4)
  #define notdef
  #endif
  
diff -c -N -p -r src/Makefile src/Makefile
*** src/Makefile	Wed Sep  9 04:10:01 1992
--- src/Makefile	Thu Sep 10 22:20:40 1992
***************
*** 1,4 ****
! CPP = $(CC) -E
  MAKE = make  # BSD doesn't have it as a default.
  #Note: an alternative is  CPP = /lib/cpp
  
--- 1,4 ----
! CPP = /usr/ccs/lib/cpp
  MAKE = make  # BSD doesn't have it as a default.
  #Note: an alternative is  CPP = /lib/cpp
  
*************** dorelease:
*** 40,46 ****
  xmakefile: ymakefile config.h
  	rm -f xmakefile
  	cp ymakefile junk.c
! 	$(CPP) junk.c | sed -e 's/^#.*//' -e 's/^[ \f\t][ \f\t]*$$//' -e 's/^ /	/' | \
  	sed -n -e '/^..*$$/p' > xmakefile
  	rm -f junk.c
  
--- 40,46 ----
  xmakefile: ymakefile config.h
  	rm -f xmakefile
  	cp ymakefile junk.c
! 	$(CPP) junk.c | sed -e 's/^#.*//' -e 's/^[ \f\t][ \f\t]*$$//' -e 's/^ /	/' -e 's/\//' | \
  	sed -n -e '/^..*$$/p' > xmakefile
  	rm -f junk.c
  
diff -c -N -p -r src/bitmaps.h src/bitmaps.h
*** src/bitmaps.h	Mon Jun 29 18:26:04 1992
--- src/bitmaps.h	Mon Oct 12 11:13:37 1992
***************
*** 1,7 ****
  /* A gnu, like on the back of the emacs manual, for icons. */
  #define gnu_width 50
  #define gnu_height 50
! static char gnu_bits[] = {
     0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
     0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff,
     0xff, 0x9f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0xfe, 0xff, 0xff,
--- 1,7 ----
  /* A gnu, like on the back of the emacs manual, for icons. */
  #define gnu_width 50
  #define gnu_height 50
! static unsigned char gnu_bits[] = {
     0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
     0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff,
     0xff, 0x9f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0xfe, 0xff, 0xff,
*************** static char gnu_bits[] = {
*** 37,43 ****
  /* Vertical bars */
  #define compress_width 16
  #define compress_height 10
! static char compress_bits[] = {
     0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66,
     0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66};
  
--- 37,43 ----
  /* Vertical bars */
  #define compress_width 16
  #define compress_height 10
! static unsigned char compress_bits[] = {
     0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66,
     0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66};
  
*************** static char compress_bits[] = {
*** 44,50 ****
  /* Bracketed dash */
  #define compress_width 15
  #define compress_height 10
! static char compress_bits[] = {
     0x1f, 0x7c, 0x1f, 0x7c, 0x03, 0x60, 0x03, 0x60, 0xe3, 0x63, 0xe3, 0x63,
     0x03, 0x60, 0x03, 0x60, 0x1f, 0x7c, 0x1f, 0x7c};
  #endif
--- 44,50 ----
  /* Bracketed dash */
  #define compress_width 15
  #define compress_height 10
! static unsigned char compress_bits[] = {
     0x1f, 0x7c, 0x1f, 0x7c, 0x03, 0x60, 0x03, 0x60, 0xe3, 0x63, 0xe3, 0x63,
     0x03, 0x60, 0x03, 0x60, 0x1f, 0x7c, 0x1f, 0x7c};
  #endif
*************** static char compress_bits[] = {
*** 52,64 ****
  /* Rectangled dash */
  #define compress_width 15
  #define compress_height 10
! static char compress_bits[] = {
     0xff, 0x7f, 0xff, 0x7f, 0x03, 0x60, 0x03, 0x60, 0xe3, 0x63, 0xe3, 0x63,
     0x03, 0x60, 0x03, 0x60, 0xff, 0x7f, 0xff, 0x7f};
  
  #define extent_begin_width 18
  #define extent_begin_height 10
! static char extent_begin_bits[] = {
     0x0c, 0x00, 0x00, 0xcc, 0x00, 0x00, 0xcc, 0x0c, 0x00, 0xcc, 0xcc, 0x00,
     0xcc, 0xcc, 0x00, 0xcc, 0xcc, 0x00, 0xcc, 0xcc, 0x00, 0xcc, 0x0c, 0x00,
     0xcc, 0x00, 0x00, 0x0c, 0x00, 0x00};
--- 52,64 ----
  /* Rectangled dash */
  #define compress_width 15
  #define compress_height 10
! static unsigned char compress_bits[] = {
     0xff, 0x7f, 0xff, 0x7f, 0x03, 0x60, 0x03, 0x60, 0xe3, 0x63, 0xe3, 0x63,
     0x03, 0x60, 0x03, 0x60, 0xff, 0x7f, 0xff, 0x7f};
  
  #define extent_begin_width 18
  #define extent_begin_height 10
! static unsigned char extent_begin_bits[] = {
     0x0c, 0x00, 0x00, 0xcc, 0x00, 0x00, 0xcc, 0x0c, 0x00, 0xcc, 0xcc, 0x00,
     0xcc, 0xcc, 0x00, 0xcc, 0xcc, 0x00, 0xcc, 0xcc, 0x00, 0xcc, 0x0c, 0x00,
     0xcc, 0x00, 0x00, 0x0c, 0x00, 0x00};
*************** static char extent_begin_bits[] = {
*** 65,71 ****
  
  #define extent_end_width 18
  #define extent_end_height 10
! static char extent_end_bits[] = {
     0x00, 0xc0, 0x00, 0x00, 0xcc, 0x00, 0xc0, 0xcc, 0x00, 0xcc, 0xcc, 0x00,
     0xcc, 0xcc, 0x00, 0xcc, 0xcc, 0x00, 0xcc, 0xcc, 0x00, 0xc0, 0xcc, 0x00,
     0x00, 0xcc, 0x00, 0x00, 0xc0, 0x00};
--- 65,71 ----
  
  #define extent_end_width 18
  #define extent_end_height 10
! static unsigned char extent_end_bits[] = {
     0x00, 0xc0, 0x00, 0x00, 0xcc, 0x00, 0xc0, 0xcc, 0x00, 0xcc, 0xcc, 0x00,
     0xcc, 0xcc, 0x00, 0xcc, 0xcc, 0x00, 0xcc, 0xcc, 0x00, 0xc0, 0xcc, 0x00,
     0x00, 0xcc, 0x00, 0x00, 0xc0, 0x00};
*************** static char extent_end_bits[] = {
*** 74,86 ****
  /* A diamond. */
  #define continuer_width 8
  #define continuer_height 10
! static char continuer_bits[] = {
     0x18, 0x18, 0x34, 0x34, 0x62, 0x62, 0x34, 0x34, 0x18, 0x18};
  
  /* A left-pointing triangle. */
  #define truncator_width 8
  #define truncator_height 10
! static char truncator_bits[] = {
     0x40, 0x60, 0x70, 0x78, 0x7c, 0x7c, 0x78, 0x70, 0x60, 0x40};
  #endif
  
--- 74,86 ----
  /* A diamond. */
  #define continuer_width 8
  #define continuer_height 10
! static unsigned char continuer_bits[] = {
     0x18, 0x18, 0x34, 0x34, 0x62, 0x62, 0x34, 0x34, 0x18, 0x18};
  
  /* A left-pointing triangle. */
  #define truncator_width 8
  #define truncator_height 10
! static unsigned char truncator_bits[] = {
     0x40, 0x60, 0x70, 0x78, 0x7c, 0x7c, 0x78, 0x70, 0x60, 0x40};
  #endif
  
*************** static char truncator_bits[] = {
*** 87,104 ****
  /* An arrow pointing to the next line */
  #define continuer_width 7
  #define continuer_height 10
! static char continuer_bits[] = {
     0x00, 0xbc, 0xfc, 0xe0, 0xe0, 0x72, 0x3e, 0x1e, 0x1e, 0x3e};
  
  /* Three dots indicating truncation */
  #define truncator_width 7
  #define truncator_height 8
! static char truncator_bits[] = {
     0x06, 0x06, 0x00, 0x18, 0x18, 0x00, 0x60, 0x60};
  
  #define rarrow_width 12
  #define rarrow_height 10
! static char rarrow_bits[] = {
     0x40, 0x00, 0xc0, 0x00, 0x80, 0x01, 0x80, 0x03, 0xfe, 0x07, 0xfe, 0x07,
     0x80, 0x03, 0x80, 0x01, 0xc0, 0x00, 0x40, 0x00};
  
--- 87,104 ----
  /* An arrow pointing to the next line */
  #define continuer_width 7
  #define continuer_height 10
! static unsigned char continuer_bits[] = {
     0x00, 0xbc, 0xfc, 0xe0, 0xe0, 0x72, 0x3e, 0x1e, 0x1e, 0x3e};
  
  /* Three dots indicating truncation */
  #define truncator_width 7
  #define truncator_height 8
! static unsigned char truncator_bits[] = {
     0x06, 0x06, 0x00, 0x18, 0x18, 0x00, 0x60, 0x60};
  
  #define rarrow_width 12
  #define rarrow_height 10
! static unsigned char rarrow_bits[] = {
     0x40, 0x00, 0xc0, 0x00, 0x80, 0x01, 0x80, 0x03, 0xfe, 0x07, 0xfe, 0x07,
     0x80, 0x03, 0x80, 0x01, 0xc0, 0x00, 0x40, 0x00};
  
*************** static char rarrow_bits[] = {
*** 107,113 ****
  /* A stipple for hilighting. */
  #define selection_width 16
  #define selection_height 16
! static char selection_bits[] = {
     0x04, 0x84, 0x80, 0x00, 0x00, 0x20, 0x02, 0x04, 0x40, 0x00, 0x08, 0x82,
     0x00, 0x10, 0x40, 0x00, 0x02, 0x40, 0x00, 0x02, 0x10, 0x00, 0x80, 0x80,
     0x00, 0x08, 0x08, 0x00, 0x01, 0x02, 0x40, 0x20};
--- 107,113 ----
  /* A stipple for hilighting. */
  #define selection_width 16
  #define selection_height 16
! static unsigned char selection_bits[] = {
     0x04, 0x84, 0x80, 0x00, 0x00, 0x20, 0x02, 0x04, 0x40, 0x00, 0x08, 0x82,
     0x00, 0x10, 0x40, 0x00, 0x02, 0x40, 0x00, 0x02, 0x10, 0x00, 0x80, 0x80,
     0x00, 0x08, 0x08, 0x00, 0x01, 0x02, 0x40, 0x20};
*************** static char selection_bits[] = {
*** 114,120 ****
  
  #define secondary_selection_width 16
  #define secondary_selection_height 16
! static char secondary_selection_bits[] = {
     0x08, 0x08, 0x04, 0x04, 0x02, 0x02, 0x01, 0x01, 0x80, 0x80, 0x40, 0x40,
     0x20, 0x20, 0x10, 0x10, 0x08, 0x08, 0x04, 0x04, 0x02, 0x02, 0x01, 0x01,
     0x80, 0x80, 0x40, 0x40, 0x20, 0x20, 0x10, 0x10};
--- 114,120 ----
  
  #define secondary_selection_width 16
  #define secondary_selection_height 16
! static unsigned char secondary_selection_bits[] = {
     0x08, 0x08, 0x04, 0x04, 0x02, 0x02, 0x01, 0x01, 0x80, 0x80, 0x40, 0x40,
     0x20, 0x20, 0x10, 0x10, 0x08, 0x08, 0x04, 0x04, 0x02, 0x02, 0x01, 0x01,
     0x80, 0x80, 0x40, 0x40, 0x20, 0x20, 0x10, 0x10};
*************** static char secondary_selection_bits[] =
*** 121,127 ****
  
  #define overlap_selection_width 16
  #define overlap_selection_height 16
! static char overlap_selection_bits[] = {
     0x09, 0x88, 0x84, 0x04, 0x02, 0x22, 0x01, 0x05, 0x80, 0x80, 0x48, 0x42,
     0x20, 0x20, 0x50, 0x10, 0x0a, 0x48, 0x04, 0x04, 0x12, 0x02, 0x01, 0x01,
     0x80, 0x88, 0x48, 0x40, 0x21, 0xa2, 0x50, 0x10};
--- 121,127 ----
  
  #define overlap_selection_width 16
  #define overlap_selection_height 16
! static unsigned char overlap_selection_bits[] = {
     0x09, 0x88, 0x84, 0x04, 0x02, 0x22, 0x01, 0x05, 0x80, 0x80, 0x48, 0x42,
     0x20, 0x20, 0x50, 0x10, 0x0a, 0x48, 0x04, 0x04, 0x12, 0x02, 0x01, 0x01,
     0x80, 0x88, 0x48, 0x40, 0x21, 0xa2, 0x50, 0x10};
*************** static char overlap_selection_bits[] = {
*** 128,134 ****
  
  #define default0_stipple_width 16
  #define default0_stipple_height 16
! static char default0_stipple_bits[] = {
     0x00, 0x00, 0x66, 0x66, 0x66, 0x66, 0x00, 0x00, 0x00, 0x00, 0x66, 0x66,
     0x66, 0x66, 0x00, 0x00, 0x00, 0x00, 0x66, 0x66, 0x66, 0x66, 0x00, 0x00,
     0x00, 0x00, 0x66, 0x66, 0x66, 0x66, 0x00, 0x00};
--- 128,134 ----
  
  #define default0_stipple_width 16
  #define default0_stipple_height 16
! static unsigned char default0_stipple_bits[] = {
     0x00, 0x00, 0x66, 0x66, 0x66, 0x66, 0x00, 0x00, 0x00, 0x00, 0x66, 0x66,
     0x66, 0x66, 0x00, 0x00, 0x00, 0x00, 0x66, 0x66, 0x66, 0x66, 0x00, 0x00,
     0x00, 0x00, 0x66, 0x66, 0x66, 0x66, 0x00, 0x00};
*************** static char default0_stipple_bits[] = {
*** 135,141 ****
  
  #define default1_stipple_width 16
  #define default1_stipple_height 16
! static char default1_stipple_bits[] = {
     0x00, 0x00, 0x22, 0x22, 0x22, 0x22, 0x00, 0x00, 0x00, 0x00, 0x22, 0x22,
     0x22, 0x22, 0x00, 0x00, 0x00, 0x00, 0x22, 0x22, 0x22, 0x22, 0x00, 0x00,
     0x00, 0x00, 0x22, 0x22, 0x22, 0x22, 0x00, 0x00};
--- 135,141 ----
  
  #define default1_stipple_width 16
  #define default1_stipple_height 16
! static unsigned char default1_stipple_bits[] = {
     0x00, 0x00, 0x22, 0x22, 0x22, 0x22, 0x00, 0x00, 0x00, 0x00, 0x22, 0x22,
     0x22, 0x22, 0x00, 0x00, 0x00, 0x00, 0x22, 0x22, 0x22, 0x22, 0x00, 0x00,
     0x00, 0x00, 0x22, 0x22, 0x22, 0x22, 0x00, 0x00};
diff -c -N -p -r src/config.h src/config.h
*** src/config.h	Sun Aug 30 17:46:56 1992
--- src/config.h	Mon Oct 12 11:31:32 1992
*************** the Free Software Foundation, 675 Mass A
*** 32,47 ****
     This has to come before include the m- file.
   */
  
! #define USE_GCC
  /* #define USE_LCC */
  
- /* Include here a s- file that describes the system type you are using.
-    See the file ../etc/MACHINES for a list of systems and the names of
-    the s- files to use for them.  See s-template.h for documentation on 
-    writing s- files.
-  */
- #include "s/s-sunos4.h"
- 
  /* Include here a m- file that describes the machine and system you use.
     See the file ../etc/MACHINES for a list of machines and the names of 
     the m- files to use for them.   See m-template.h for info on what m- 
--- 32,40 ----
     This has to come before include the m- file.
   */
  
! /* #define USE_GCC */
  /* #define USE_LCC */
  
  /* Include here a m- file that describes the machine and system you use.
     See the file ../etc/MACHINES for a list of machines and the names of 
     the m- files to use for them.   See m-template.h for info on what m- 
*************** the Free Software Foundation, 675 Mass A
*** 49,54 ****
--- 42,54 ----
   */
  #include "m/m-sparc.h"
  
+ /* Include here a s- file that describes the system type you are using.
+    See the file ../etc/MACHINES for a list of systems and the names of
+    the s- files to use for them.  See s-template.h for documentation on 
+    writing s- files.
+  */
+ #include "s/s-solaris2.h"
+ 
  /* Load in the conversion definitions if this system
     needs them and the source file being compiled has not
     said to inhibit this.  There should be no need for you
*************** the Free Software Foundation, 675 Mass A
*** 115,129 ****
     If you have trouble with _malloc being multiply-defined, or if you're
     on a NeXT (or possibly MACH in general) comment out the next four lines.
   */
  #ifdef SYSTEM_MALLOC
  #undef SYSTEM_MALLOC
  #endif
  #define GNU_MALLOC
  
  /* Define NEED_STRDUP if your system doesn't have a strdup() function.
     Define NEED_REALPATH if your system does not include a realpath() function.
     If you system doesn't have the fmod() function, then you need to define
!    either HAVE_DREM or HAVE_REMAINDER, as appropriate.
  
     These flags really should be in the appropriate s- file, so if you need 
     to do this, let us know and we'll put them there in the next release.
--- 115,131 ----
     If you have trouble with _malloc being multiply-defined, or if you're
     on a NeXT (or possibly MACH in general) comment out the next four lines.
   */
+ 
  #ifdef SYSTEM_MALLOC
  #undef SYSTEM_MALLOC
  #endif
+ /* #define SYSTEM_MALLOC */
  #define GNU_MALLOC
  
  /* Define NEED_STRDUP if your system doesn't have a strdup() function.
     Define NEED_REALPATH if your system does not include a realpath() function.
     If you system doesn't have the fmod() function, then you need to define
! o   either HAVE_DREM or HAVE_REMAINDER, as appropriate.
  
     These flags really should be in the appropriate s- file, so if you need 
     to do this, let us know and we'll put them there in the next release.
*************** the Free Software Foundation, 675 Mass A
*** 183,189 ****
     X libraries aren't in a place that your loader can find on its own,
     you might want to add "-L/..." or something similar.  */
  
! /* #define LD_SWITCH_SITE -L/x11r4/usr.`arch`/lib */
  
  /* Define C_SWITCH_SITE to contain any special flags your compiler may
     need.  For instance, if you've defined HAVE_X_WINDOWS above and your
--- 185,191 ----
     X libraries aren't in a place that your loader can find on its own,
     you might want to add "-L/..." or something similar.  */
  
! #define LD_SWITCH_SITE 
  
  /* Define C_SWITCH_SITE to contain any special flags your compiler may
     need.  For instance, if you've defined HAVE_X_WINDOWS above and your
*************** the Free Software Foundation, 675 Mass A
*** 190,196 ****
     X include files aren't in a place that your compiler can find on its
     own, you might want to add "-I/..." or something similar.  */
  
! /* #define C_SWITCH_SITE -I/cadillacgnu/gcc-include -I/x11r4/usr/include */
  
  #ifdef USE_GCC
  /* Depending on how GCC is installed, you may need to add the gcc library
--- 192,198 ----
     X include files aren't in a place that your compiler can find on its
     own, you might want to add "-I/..." or something similar.  */
  
! #define C_SWITCH_SITE 
  
  #ifdef USE_GCC
  /* Depending on how GCC is installed, you may need to add the gcc library
*************** the Free Software Foundation, 675 Mass A
*** 201,207 ****
  
  #endif /* USE_GCC */
  
- 
  /* If you are using SunOS 4.1.1 and X11r5, then you need this patch.
     There is a stupid bug in the SunOS libc.a: two functions which X11r5
     uses, mbstowcs() and wcstombs(), are unusable when programs are
--- 203,208 ----
*************** the Free Software Foundation, 675 Mass A
*** 215,221 ****
     Also, SunOS 4.1.1 contains buggy versions of strcmp and strcpy that
     sometimes reference memory past the end of the string, which can segv.
   */
! #ifdef sparc
  #define OBJECTS_SYSTEM sunOS-fix.o strcmp.o strcpy.o
  #endif
  
--- 216,222 ----
     Also, SunOS 4.1.1 contains buggy versions of strcmp and strcpy that
     sometimes reference memory past the end of the string, which can segv.
   */
! #if defined(sparc) && !defined(SOLARIS2)
  #define OBJECTS_SYSTEM sunOS-fix.o strcmp.o strcpy.o
  #endif
  
diff -c -N -p -r src/dispnew.c src/dispnew.c
*** src/dispnew.c	Sat Aug 29 22:36:36 1992
--- src/dispnew.c	Mon Sep 14 14:25:22 1992
*************** For types not defined in VMS, use  defin
*** 2301,2308 ****
    }	
  #endif
  
-   term_init (terminal_type);
- 
  #ifndef MULTI_SCREEN
    highlight_face.hilited = 1;
    if (term_does_underline)
--- 2301,2306 ----
*************** For types not defined in VMS, use  defin
*** 2333,2340 ****
  
        /* Don't handle SIGWINCH if using X.  */
        return;
!     }
  #endif /* HAVE_X_WINDOWS */
  
  #ifdef SIGWINCH
  #ifndef CANNOT_DUMP
--- 2331,2339 ----
  
        /* Don't handle SIGWINCH if using X.  */
        return;
!     } else
  #endif /* HAVE_X_WINDOWS */
+   term_init (terminal_type);
  
  #ifdef SIGWINCH
  #ifndef CANNOT_DUMP
diff -c -N -p -r src/emacs.c src/emacs.c
*** src/emacs.c	Wed Sep  2 03:59:16 1992
--- src/emacs.c	Fri Sep 11 01:04:58 1992
*************** char *stack_bottom;
*** 82,87 ****
--- 82,94 ----
  extern Lisp_Object Vwindow_system;
  #endif /* HAVE_X_WINDOWS */
  
+ #ifdef USG_SHARED_LIBRARIES
+ /* If nonzero, this is the place to put the end of the writable segment
+    at startup.  */
+  
+ unsigned int bss_end = 0;
+ #endif
+  
  /* Nonzero means running Emacs without interactive terminal.  */
  
  int noninteractive;
*************** main (argc, argv, envp)
*** 481,486 ****
--- 488,498 ----
  #ifdef RUN_TIME_REMAP
    if (initialized)
      run_time_remap (argv[0]);
+ #endif
+  
+ #ifdef USG_SHARED_LIBRARIES
+   if (bss_end)
+     brk (bss_end);
  #endif
  
    clearerr (stdin);
diff -c -N -p -r src/fileio.c src/fileio.c
*** src/fileio.c	Sat Aug 29 16:27:55 1992
--- src/fileio.c	Thu Sep 10 23:04:23 1992
*************** the Free Software Foundation, 675 Mass A
*** 22,28 ****
  #include <sys/stat.h>
  #include <pwd.h>
  #include <ctype.h>
- #include <sys/dir.h>
  #include <errno.h>
  #include <sys/param.h>
  
--- 22,27 ----
*************** extern int sys_nerr;
*** 40,45 ****
--- 39,50 ----
  #include "lisp.h"
  #include "buffer.h"
  #include "window.h"
+ 
+ #ifdef USG5_4
+ #include <sys/dirent.h>
+ #else
+ #include <sys/dir.h>
+ #endif
  
  #ifdef VMS
  #include <perror.h>
diff -c -N -p -r src/floatfns.c src/floatfns.c
*** src/floatfns.c	Sat Aug 29 22:09:00 1992
--- src/floatfns.c	Thu Sep 10 23:17:46 1992
*************** Rounds the value toward zero.")
*** 469,475 ****
    return num;
  }
  
! #if defined (BSD) || defined (IRIX) || defined (IRIS) || defined (__hpux) || defined(AIX)
  static void
  float_error (signo)
       int signo;
--- 469,475 ----
    return num;
  }
  
! #if defined (BSD) || defined (IRIX) || defined (IRIS) || defined (__hpux) || defined(AIX) || defined(USG5_4)
  static void
  float_error (signo)
       int signo;
diff -c -N -p -r src/getpagesize.h src/getpagesize.h
*** src/getpagesize.h	Wed Jul 29 19:44:04 1992
--- src/getpagesize.h	Fri Sep 11 00:09:32 1992
*************** static size_t getpagesize() { return( 40
*** 10,15 ****
--- 10,22 ----
  #define HAVE_GETPAGESIZE
  #endif
    
+ #ifdef HAVE_SYSCONF
+ #include <sys/unistd.h>
+ 
+ #define getpagesize() sysconf(_SC_PAGESIZE)
+ 
+ #else
+ 
  #ifndef HAVE_GETPAGESIZE
  
  #include <sys/param.h>
*************** static size_t getpagesize() { return( 40
*** 29,31 ****
--- 36,39 ----
  
  #endif /* not HAVE_GETPAGESIZE */
  
+ #endif /* HAVE_SYSCONF */
diff -c -N -p -r src/gmalloc.c src/gmalloc.c
*** src/gmalloc.c	Wed Sep  2 03:59:17 1992
--- src/gmalloc.c	Mon Sep 14 11:45:45 1992
*************** extern size_t __getpagesize ();
*** 982,987 ****
--- 982,994 ----
  #endif
  #endif
  
+ #ifdef USG5_4
+ #include <sys/unistd.h>
+ 
+ #define __getpagesize() sysconf(_SC_PAGESIZE);
+ 
+ #else
+ 
  #ifdef HAVE_GETPAGESIZE
  #define __getpagesize() getpagesize()
  #else
*************** extern size_t __getpagesize ();
*** 1004,1009 ****
--- 1011,1017 ----
  #endif /* not HAVE_GETPAGESIZE */
  
  #endif
+ #endif /* HAVE_SYSCONF */
  
  static size_t pagesize;
  
diff -c -N -p -r src/lread.c src/lread.c
*** src/lread.c	Fri Sep  4 05:43:35 1992
--- src/lread.c	Thu Sep 10 23:23:12 1992
*************** the Free Software Foundation, 675 Mass A
*** 26,31 ****
--- 26,35 ----
  #include "config.h"
  #include "lisp.h"
  
+ #ifdef USG5_4
+ #include <unistd.h>
+ #endif
+ 
  #ifndef standalone
  #include "buffer.h"
  #include "paths.h"
diff -c -N -p -r src/lwlib/lwlib-Xol.c src/lwlib/lwlib-Xol.c
*** src/lwlib/lwlib-Xol.c	Tue Jul  7 18:30:05 1992
--- src/lwlib/lwlib-Xol.c	Mon Oct 12 10:56:50 1992
*************** make_menu_in_widget (widget_instance* in
*** 157,163 ****
        XtSetArg (al [ac], XtNuserData, instance); ac++;
        XtSetArg (al [ac], XtNacceleratorText, cur->key); ac++;
        
!       label = (char *) resource_string (widget, cur->name);
        if (label)
  	{
  	  XtSetArg (al [ac], XtNlabel, label); ac++;
--- 157,165 ----
        XtSetArg (al [ac], XtNuserData, instance); ac++;
        XtSetArg (al [ac], XtNacceleratorText, cur->key); ac++;
        
!       label = cur->name;
! 
!       label = NULL;
        if (label)
  	{
  	  XtSetArg (al [ac], XtNlabel, label); ac++;
*************** xol_update_one_value (widget_instance* i
*** 297,303 ****
  }
  
  void
! xlw_pop_instance (widget_instance* instance, Boolean up)
  {
  }
  
--- 299,305 ----
  }
  
  void
! xol_pop_instance (widget_instance* instance, Boolean up)
  {
  }
  
diff -c -N -p -r src/lwlib/lwlib-Xol.h src/lwlib/lwlib-Xol.h
*** src/lwlib/lwlib-Xol.h	Tue Jul  7 18:30:06 1992
--- src/lwlib/lwlib-Xol.h	Mon Sep 14 13:45:04 1992
***************
*** 4,10 ****
  #include "lwlib-internal.h"
  
  extern widget_creation_entry xol_creation_table [];
! extern widget_creation_function xol_create_dialog;
  
  Boolean
  lw_olit_widget_p (Widget widget);
--- 4,10 ----
  #include "lwlib-internal.h"
  
  extern widget_creation_entry xol_creation_table [];
! extern Widget xol_create_dialog(widget_instance*);
  
  Boolean
  lw_olit_widget_p (Widget widget);
diff -c -N -p -r src/s/s-solaris2.h src/s/s-solaris2.h
*** src/s/s-solaris2.h
--- src/s/s-solaris2.h	Mon Oct 12 11:09:50 1992
***************
*** 0 ****
--- 1,69 ----
+ /* Definitions file for GNU Emacs running on AT&T's System V Release 4
+    Copyright (C) 1987, 1990 Free Software Foundation, Inc.
+ 
+ This file is part of GNU Emacs.
+ 
+ GNU Emacs is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 1, or (at your option)
+ any later version.
+ 
+ GNU Emacs is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ GNU General Public License for more details.
+ 
+ You should have received a copy of the GNU General Public License
+ along with GNU Emacs; see the file COPYING.  If not, write to
+ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
+ 
+ /* 
+  * For Solaris2 by John Furlani, Sun Microsystems Computer Corporation 
+  *            <john.furlani@East.Sun.COM> 
+  */
+ 
+ /* Use basic SVR4 config for starters */
+ #include "s-usg5-4.h"
+ 
+ /* For Solaris2 specific stuff*/
+ #define SOLARIS2
+ 
+ /* Solaris2 is not BSD */
+ #undef BSD
+ 
+ /* Solaris2 is cool with subprocesses and TIOCGETC */
+ #define subprocesses
+ #undef	BROKEN_TIOCGETC
+ 
+ /* We've got sockets, so we'll use them */
+ #define HAVE_SOCKETS
+ 
+ /* Solaris2 can use SIGPOLL as SIGIO  */
+ #define SIGIO SIGPOLL
+ 
+ /* Flags for OpenWindows */
+ #if 1
+ #undef LD_SWITCH_SYSTEM
+ #define LD_SWITCH_SYSTEM -L/depot/openwin-v3/lib
+ #undef C_SWITCH_SYSTEM
+ #define C_SWITCH_SYSTEM -I/depot/openwin-v3/include
+ #endif 
+ 
+ /* Don't need any of the start files */
+ #undef START_FILES
+ #define START_FILES
+ 
+ #undef LIB_STANDARD
+ #define LIB_STANDARD -lkvm -lsocket -lnsl -lelf -lintl -ldl
+ 
+ /* DATA_SEG_BITS not needed */
+ #undef DATA_SEG_BITS
+ 
+ /* Use cc to link */
+ #define LD_CMD cc
+ 
+ /* TIOCSIGSEND is ok for Solaris2 */
+ #undef TIOCSIGSEND
+ 
+ /* Xos.h doesn't define __TIMEVAL__ correctly */
+ #define __TIMEVAL__
diff -c -N -p -r src/s/s-usg5-4.h src/s/s-usg5-4.h
*** src/s/s-usg5-4.h
--- src/s/s-usg5-4.h	Tue Sep 15 22:25:53 1992
***************
*** 0 ****
--- 1,163 ----
+ /* Definitions file for GNU Emacs running on AT&T's System V Release 4
+    Copyright (C) 1987, 1990 Free Software Foundation, Inc.
+ 
+ This file is part of GNU Emacs.
+ 
+ GNU Emacs is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 1, or (at your option)
+ any later version.
+ 
+ GNU Emacs is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ GNU General Public License for more details.
+ 
+ You should have received a copy of the GNU General Public License
+ along with GNU Emacs; see the file COPYING.  If not, write to
+ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
+ 
+ /* This file written by James Van Artsdalen of Dell Computer Corporation.
+  * james@bigtex.cactus.org.
+  */
+ 
+ /* Use the SysVr3 file for at least base configuration. */
+ 
+ #include "s-usg5-3.h"
+ 
+ #define USG5_4
+ 
+ /* We do have multiple jobs.  Handle ^Z. */
+ 
+ #undef NOMULTIPLEJOBS
+ 
+ #define START_FILES pre-crt0.o /usr/ccs/lib/crt1.o /usr/ccs/lib/crti.o /usr/ccs/lib/values-Xt.o
+ 
+ #define LIB_STANDARD -lsocket -lnsl -lelf -lc /usr/ucblib/libucb.a /usr/ccs/lib/crtn.o
+ 
+ /* No <sioctl.h> */
+ 
+ #define NO_SIOCTL_H
+ 
+ /* Undump with ELF */
+ 
+ #undef COFF
+ 
+ #define UNEXEC unexelf.o
+ 
+ /* Get FIONREAD from <sys/filio.h>.  Get <sys/ttold.h> to get struct
+  * tchars. But get <termio.h> first to make sure ttold.h doesn't
+  * interfere.  And don't try to use SIGIO yet.
+  */
+ 
+ #ifdef emacs
+ #include <sys/filio.h>
+ #include <termio.h>
+ #include <sys/ttold.h>
+ #include <signal.h>
+ #include <sys/wait.h>
+ #include <sys/stream.h>
+ #include <sys/stropts.h>
+ #include <sys/termios.h>
+ #undef SIGIO
+ #endif
+ 
+ /* libc has this stuff, but not utimes. */
+ 
+ #define HAVE_RENAME
+ #define HAVE_SELECT
+ #define HAVE_TIMEVAL
+ #define HAVE_CLOSEDIR
+ #define HAVE_GETTIMEOFDAY
+ #define HAVE_DUP2
+ 
+ #define USE_UTIME
+ 
+ /* <sys/stat.h> *defines* stat(2) as a static function.  If "static"
+  * is blank, then many files will have a public definition for stat(2).
+  */
+ 
+ #undef static
+ 
+ /* We need bss_end from emacs.c for undumping */
+ 
+ #ifndef USG_SHARED_LIBRARIES
+ #define USG_SHARED_LIBRARIES
+ #endif
+ 
+ /* We can support this */
+ 
+ #define CLASH_DETECTION
+ 
+ #define HAVE_PTYS
+ #define HAVE_SETSID
+ #define HAVE_TCATTR
+ 
+ /* It is possible to receive SIGCHLD when there are no children
+    waiting, because a previous waitsys(2) cleaned up the carcass of child
+    without clearing the SIGCHLD pending info.  So, use a non-blocking
+    wait3 instead, which maps to waitpid(2) in SysVr4. */
+ 
+ #define HAVE_WAIT_HEADER
+ #define WAITTYPE int
+ #define wait3(status, options, rusage) \
+   waitpid((pid_t) -1, (status), (options))
+ #define WRETCODE(w) (w >> 8)
+ 
+ /* TIOCGPGRP is broken in SysVr4, so we can't send signals to PTY
+    subprocesses the usual way.  But TIOCSIGNAL does work for PTYs, and
+    this is all we need.  */
+ 
+ #define TIOCSIGSEND TIOCSIGNAL
+ 
+ /* This change means that we don't loop through allocate_pty too many
+    times in the (rare) event of a failure. */
+ 
+ #undef FIRST_PTY_LETTER
+ #define FIRST_PTY_LETTER 'z'
+ 
+ /* This sets the name of the master side of the PTY. */
+ 
+ #define PTY_NAME_SPRINTF strcpy (pty_name, "/dev/ptmx");
+ 
+ /* This sets the name of the slave side of the PTY.  On SysVr4,
+    grantpt(3) forks a subprocess, so keep sigchld_handler() from
+    intercepting that death.  If any child but grantpt's should die
+    within, it should be caught after sigrelse(2). */
+ 
+ #define PTY_TTY_NAME_SPRINTF			\
+   {						\
+     char *ptsname(), *ptyname;			\
+     int trc;					\
+ 						\
+     pty_name[0] = '\0';				\
+     sighold(SIGCLD);				\
+     trc = grantpt(fd);				\
+     sigrelse(SIGCLD);				\
+     if (trc == -1)				\
+       error("could not grant slave pty");	\
+     else if (unlockpt(fd) == -1)		\
+       error("could not unlock slave pty");	\
+     else if (!(ptyname = ptsname(fd)))		\
+       error ("could not enable slave pty");	\
+     else {					\
+       strncpy(pty_name, ptyname, sizeof(pty_name)); \
+       pty_name[sizeof(pty_name) - 1] = 0;	\
+     }						\
+   }
+ 
+ /* Push various streams modules onto a PTY channel. */
+ #define SETUP_SLAVE_PTY \
+   if (ioctl (xforkin, I_PUSH, "ptem") == -1)	\
+     fatal ("ioctl I_PUSH ptem", errno);		\
+   if (ioctl (xforkin, I_PUSH, "ldterm") == -1)	\
+     fatal ("ioctl I_PUSH ldterm", errno);	\
+   if (ioctl (xforkin, I_PUSH, "ttcompat") == -1) \
+     fatal ("ioctl I_PUSH ttcompat", errno);
+ 
+ /* The definition of this in s-usg5-3.h is not needed in 5.4.  */
+ 
+ #undef LIBX10_SYSTEM
+ #undef LIBX11_SYSTEM
+ 
+ /* ??? For next release, suggest adding HAVE_SOCKETS */
diff -c -N -p -r src/sysdep.c src/sysdep.c
*** src/sysdep.c	Sat Aug 29 16:28:15 1992
--- src/sysdep.c	Fri Sep 18 14:28:18 1992
*************** extern char *sys_errlist[];
*** 91,96 ****
--- 91,101 ----
  #endif
  #ifdef USG
  #include <fcntl.h>
+ #ifdef USG5_4
+ #undef FASYNC
+ #include <sys/file.h>
+ #include <sys/filio.h>
+ #endif /* USG5_4 */
  #endif
  #endif /* not 4.1 bsd */
  
*************** reset_sigio ()
*** 813,819 ****
  
  request_sigio ()
  {
! #ifdef SIGWINCH
    sigunblock (sigmask (SIGWINCH));
  #endif
  #ifdef HAVE_X_WINDOWS
--- 818,824 ----
  
  request_sigio ()
  {
! #if defined(SIGWINCH) && defined(SIGIO) && !defined(titan) && !defined(USG5_4)
    sigunblock (sigmask (SIGWINCH));
  #endif
  #ifdef HAVE_X_WINDOWS
*************** request_sigio ()
*** 828,834 ****
  
  unrequest_sigio ()
  {
! #ifdef SIGWINCH
    sigblock (sigmask (SIGWINCH));
  #endif
  #ifdef HAVE_X_WINDOWS
--- 833,839 ----
  
  unrequest_sigio ()
  {
! #if defined(SIGWINCH) && defined(SIGIO) && !defined(titan) && !defined(USG5_4)
    sigblock (sigmask (SIGWINCH));
  #endif
  #ifdef HAVE_X_WINDOWS
*************** unrequest_sigio ()
*** 842,848 ****
  }
  
  #else /* no FASYNC */
! #ifdef STRIDE		/* Stride doesn't have FASYNC - use FIOASYNC */
  
  request_sigio ()
  {
--- 847,853 ----
  }
  
  #else /* no FASYNC */
! #if defined(STRIDE)	/* Stride doesn't have FASYNC - use FIOASYNC */
  
  request_sigio ()
  {
*************** start_of_data ()
*** 1656,1663 ****
--- 1661,1673 ----
  #ifdef DATA_START
    return ((char *) DATA_START);
  #else
+ #ifdef USG5_4
+   extern etext;
+   return &etext;
+ #else
    extern int data_start;
    return ((char *) &data_start);
+ #endif
  #endif
  }
  #endif /* NEED_STARTS (not CANNOT_DUMP or not SYSTEM_MALLOC) */
diff -c -N -p -r src/unexelf.c src/unexelf.c
*** src/unexelf.c	Mon Jun 29 18:27:09 1992
--- src/unexelf.c	Fri Sep 11 01:01:57 1992
*************** In other words, you are welcome to use, 
*** 18,23 ****
--- 18,32 ----
  You are forbidden to forbid anyone else to use, share and improve
  what you give them.   Help stamp out software-hoarding!  */
  
+ /*
+  * $Revision: 1.2 $
+  * $Source: /import/kaplan/stable/distrib/epoch-4.0p2/src/RCS/unexelf.c,v $
+  * $Author: love $
+  * $Date: 92/02/21 16:46:31 $
+  */
+ #ifndef LINT
+ static char rcsid[] = "$Author: love $ $Date: 92/02/21 16:46:31 $ $Source: /import/kaplan/stable/distrib/epoch-4.0p2/src/RCS/unexelf.c,v $ $Revision: 1.2 $";
+ #endif
  
  /*
   * unexec.c - Convert a running program into an a.out file.
*************** extern void fatal(char *, ...);
*** 347,352 ****
--- 356,373 ----
  
  typedef unsigned char byte;
  
+ /* Round X up to a multiple of Y.  */
+ 
+ int
+ round_up (x, y)
+      int x, y;
+ {
+   int rem = x % y;
+   if (rem == 0)
+     return x;
+   return x - rem + y;
+ }
+ 
  /* ****************************************************************
   * unexec
   *
*************** unexec (new_name, old_name, data_start, 
*** 361,371 ****
       char *new_name, *old_name;
       unsigned data_start, bss_start, entry_address;
  {
- /*
-   Made this local -- couldn't find the actual definition -- DAE 
    extern unsigned int bss_end;
- */
-   unsigned int bss_end;
    int new_file, old_file, new_file_size;
  
    /* Pointers to the base of the image of the two files. */
--- 382,388 ----
*************** unexec (new_name, old_name, data_start, 
*** 421,428 ****
     * data2 and bss sections.
     */
  
!   for (old_bss_index = 1; old_bss_index < (int) old_file_h->e_shnum; 
!        old_bss_index++)                    /* added cast -- DAE */
      {
  #ifdef DEBUG
        fprintf (stderr, "Looking for .bss - found %s\n",
--- 438,444 ----
     * data2 and bss sections.
     */
  
!   for (old_bss_index = 1; old_bss_index < old_file_h->e_shnum; old_bss_index++)
      {
  #ifdef DEBUG
        fprintf (stderr, "Looking for .bss - found %s\n",
*************** unexec (new_name, old_name, data_start, 
*** 519,530 ****
  
    for (n = new_file_h->e_phnum - 1; n >= 0; n--)
      {
        if (NEW_PROGRAM_H(n).p_vaddr + NEW_PROGRAM_H(n).p_filesz > old_bss_addr)
  	fatal ("Program segment above .bss in %s\n", old_name, 0);
  
        if (NEW_PROGRAM_H(n).p_type == PT_LOAD
! 	  && (NEW_PROGRAM_H(n).p_vaddr + NEW_PROGRAM_H(n).p_filesz
! 	      == old_bss_addr))
  	break;
      }
    if (n < 0)
--- 535,553 ----
  
    for (n = new_file_h->e_phnum - 1; n >= 0; n--)
      {
+       /* Compute maximum of all requirements for alignment of section.  */
+       int alignment = (NEW_PROGRAM_H (n)).p_align;
+       if ((OLD_SECTION_H (old_bss_index)).sh_addralign > alignment)
+ 	alignment = OLD_SECTION_H (old_bss_index).sh_addralign;
+ 
        if (NEW_PROGRAM_H(n).p_vaddr + NEW_PROGRAM_H(n).p_filesz > old_bss_addr)
  	fatal ("Program segment above .bss in %s\n", old_name, 0);
  
        if (NEW_PROGRAM_H(n).p_type == PT_LOAD
! 	  && (round_up ((NEW_PROGRAM_H (n)).p_vaddr
! 			+ (NEW_PROGRAM_H (n)).p_filesz,
! 			alignment)
! 	      == round_up (old_bss_addr, alignment)))
  	break;
      }
    if (n < 0)
*************** unexec (new_name, old_name, data_start, 
*** 552,558 ****
     * .data header and modifying the offset, address and size.
     */
  
!   for (n = 1; n < (int) new_file_h->e_shnum; n++)    /* added cast -- DAE */
      {
        if (NEW_SECTION_H(n).sh_offset >= new_data2_offset)
  	NEW_SECTION_H(n).sh_offset += new_data2_size;
--- 575,581 ----
     * .data header and modifying the offset, address and size.
     */
  
!   for (n = 1; n < new_file_h->e_shnum; n++)
      {
        if (NEW_SECTION_H(n).sh_offset >= new_data2_offset)
  	NEW_SECTION_H(n).sh_offset += new_data2_size;
*************** unexec (new_name, old_name, data_start, 
*** 564,571 ****
  
    new_data2_index = old_file_h->e_shnum;
  
!   for (old_data_index = 1; old_data_index < (int) old_file_h->e_shnum;
!        old_data_index++)                    /* added cast -- DAE */
      if (!strcmp (old_section_names + OLD_SECTION_H(old_data_index).sh_name,
  		 ".data"))
        break;
--- 587,594 ----
  
    new_data2_index = old_file_h->e_shnum;
  
!   for (old_data_index = 1; old_data_index < old_file_h->e_shnum;
!        old_data_index++)
      if (!strcmp (old_section_names + OLD_SECTION_H(old_data_index).sh_name,
  		 ".data"))
        break;
diff -c -N -p -r src/x11term.h src/x11term.h
*** src/x11term.h	Mon Jun 29 18:26:43 1992
--- src/x11term.h	Mon Sep 14 10:53:09 1992
***************
*** 13,18 ****
--- 13,22 ----
  
  #define BLOCK_INPUT_DECLARE() int BLOCK_INPUT_mask
  #ifdef SIGIO
+ #ifdef USG5_4
+ #define BLOCK_INPUT()   sighold(SIGIO)
+ #define UNBLOCK_INPUT() sigrelse(SIGIO)
+ #else
  #define BLOCK_INPUT() BLOCK_INPUT_mask = sigblock (sigmask (SIGIO))
  #define UNBLOCK_INPUT() sigsetmask (BLOCK_INPUT_mask)
  #else /* not SIGIO */

From help-lucid-emacs-request@lucid.com  Wed Oct 14 20:03:15 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA02849; Wed, 14 Oct 92 20:03:15 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA03404g; Wed, 14 Oct 92 20:01:02 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA26456; Wed, 14 Oct 92 23:02:26 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA26452; Wed, 14 Oct 92 23:02:17 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!convex!sunova!sunova.ssc.gov!allen
From: allen@golem.ssc.gov (Michael Allen)
Subject: LucidEmacs-19.3 and VM 5.32.L (beta) on Decstation
Message-Id: <ALLEN.92Oct14084652@golem.ssc.gov>
Nntp-Posting-Host: golem.ssc.gov
Reply-To: allen@ssc.gov
Organization: SSC Laboratory, Dallas, TX
Distribution: alt.lucid-emacs
Date: Wed, 14 Oct 1992 14:46:52 GMT
Lines: 19
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


I am using LucidEmacs-19.3 and VM 5.32.L (beta) on a Decstation
5000/120 running ultrix 4.2.  Every once in a while (at least once a
day), the emacs/vm combination locks up.  The only recourse seems to
be killing emacs and starting again.  Anyone else seen this?  Any
solution?

-Thanks,
 Michael
--
K'tivah v'Chatima Tova!

===================================================
But those who toiled knew nothing of the dreams of 
        Those Who Planned;                         
And the minds who planned the Tower of Babel       
        Cared nothing for the workers who built it.

	-Metropolis

From help-lucid-emacs-request@lucid.com  Wed Oct 14 20:03:25 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA02853; Wed, 14 Oct 92 20:03:25 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA03405g; Wed, 14 Oct 92 20:01:02 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA26451; Wed, 14 Oct 92 23:02:20 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA26447; Wed, 14 Oct 92 23:02:14 -0400
Path: uunet!mcsun!corton!nenufar.saclay.cea.fr!soleil!basile
From: basile%soleil.serma.cea.fr@lucid.com (Basile STARYNKEVITCH)
Newsgroups: alt.lucid-emacs.help
Subject: Help: can't port Lucid-Emacs 19.3 on Solaris 2.0
Keywords: Solaris 2.0, Lemacs-19.3, SVR4
Message-Id: <1992Oct14.124038.10166@nenufar.saclay.cea.fr>
Date: 14 Oct 92 12:40:38 GMT
Reply-To: basile%soleil.serma.cea.fr@lucid.com (Basile STARYNKEVITCH)
Organization: Commissariat a l Energie Atomique
Lines: 245
Nntp-Posting-Host: soleil-gw.serma.cea.fr
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

(i have already posted this question, but on a bugged newsserver; i'm
giving more details)

I have SunOS5.0 (fcs) on Sun IPC 4/40 and SS2 4/65 running
Openwin3.0.1.

SunOS5.0, ie Solaris2.0 is almost a superset of SVR4 on Sparc.

I wish very hard to have Lucid-Emacs 19.3 on it, but i couldn't do it
(i tried to write my own Solaris configuration file, but it failed).

Did anybody made a port of Lemacs 19.3 to SVR4 or Solaris??

My C compiler is gcc-2.2.2, but i could use (if needed) Sun unbundled
ansic C 3.0 for Solaris.

How could i make the port ??

Please email and/or post to basile@soleil.serma.cea.fr.

Thank you.

Now my src/config.h and src/s/s-sunos5.h files are:::


here is my diff src/config.h src/config.h-dist (where src/config.h-dist is the distributed config file for SunOS4):
############ diff src/config.h src/config.h-dist ############
43c43
< #include "s/s-sunos5.h"
---
> #include "s/s-sunos4.h"
118,121c118,121
< /* #ifdef SYSTEM_MALLOC  -- defined in s-sunos5 */
< /* #undef SYSTEM_MALLOC */
< /* #endif */
< /* #define GNU_MALLOC */
---
> #ifdef SYSTEM_MALLOC
> #undef SYSTEM_MALLOC
> #endif
> #define GNU_MALLOC
167,169d166
< #ifndef index
< #define index strchr
< #endif	/* index */
171,173d167
< #ifndef rindex
< #define rindex strrchr
< #endif	/* rindex */
175,176d168
< #undef USE_SOUND
< 
179,181d170
< #undef USE_SOUND
< 
< 
189c178
< #define LWLIB_USES_OLIT
---
> /* #define LWLIB_USES_OLIT */
199,200d187
< #define LD_SWITCH_SITE -L${OPENWINHOME}/lib
< 
208,209d194
< #define C_SWITCH_SITE -I${OPENWINHOME}/include
< 
233,235c218,221
< /* #ifdef sparc */
< /* #define OBJECTS_SYSTEM sunOS-fix.o strcmp.o strcpy.o */
< /* #endif */
---
> #ifdef sparc
> #define OBJECTS_SYSTEM sunOS-fix.o strcmp.o strcpy.o
> #endif
> 


############ Here is my src/s/s-sunos5.h  #####################

/* Basile write for Lucid Emacs 19.3 on SunOS5 Beta on Sparc -Sun4/40- this system config
 * file src/s/s-sunos5.h */


/* Template for s- header files. This file describes the parameters that s- files should
 * define or not. Copyright (C) 1985, 1986 Free Software Foundation, Inc.
 * 
 * This file is part of GNU Emacs.
 * 
 * GNU Emacs is free software; you can redistribute it and/or modify it under the terms of
 * the GNU General Public License as published by the Free Software Foundation; either
 * version 1, or (at your option) any later version.
 * 
 * GNU Emacs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
 * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
 * PURPOSE.  See the GNU General Public License for more details.
 * 
 * You should have received a copy of the GNU General Public License along with GNU Emacs;
 * see the file COPYING.  If not, write to the Free Software Foundation, 675 Mass Ave,
 * Cambridge, MA 02139, USA.  */


/* Define symbols to identify the version of Unix this is. Define all the symbols that
 * apply correctly. */

/* #define UNIPLUS */
#define USG5
#define USG
/* #define HPUX */
/* #define UMAX */
/* #define BSD4_1 */
/* #define BSD4_2 */
/* #define BSD4_3 */
/* #define BSD */
/* #define VMS */

/* SYSTEM_TYPE should indicate the kind of system you are using. It sets the Lisp
 * variable system-type.  */

#define SYSTEM_TYPE "SunOS5-unix"

/* NOMULTIPLEJOBS should be defined if your system's shell does not have "job control"
 * (the ability to stop a program, run some other program, then continue the first one).  */

/* #define NOMULTIPLEJOBS */

/* Emacs can read input using SIGIO and buffering characters itself, or using CBREAK mode
 * and making C-g cause SIGINT. The choice is controlled by the variable interrupt_input.
 * Define INTERRUPT_INPUT to make interrupt_input = 1 the default (use SIGIO)
 * 
 * SIGIO can be used only on systems that implement it (4.2 and 4.3). CBREAK mode has two
 * disadvatages 1) At least in 4.2, it is impossible to handle the Meta key properly. I
 * hear that in system V this problem does not exist. 2) Control-G causes output to be
 * discarded. I do not know whether this can be fixed in system V.
 * 
 * Another method of doing input is planned but not implemented. It would have Emacs fork
 * off a separate process to read the input and send it to the true Emacs process through
 * a pipe. */

#define INTERRUPT_INPUT

/* Letter to use in finding device name of first pty, if system supports pty's.  'a'
 * means it is /dev/ptya0  */

#define FIRST_PTY_LETTER 'p'

/* Define HAVE_TIMEVAL if the system supports the BSD style clock values. Look in
 * <sys/time.h> for a timeval structure. */

#define HAVE_TIMEVAL

/* Define HAVE_SELECT if the system supports the `select' system call. */

#define HAVE_SELECT

/* Define HAVE_PTYS if the system supports pty devices. */

#define HAVE_PTYS
/* #define SYSV_PTYS */

/* Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate The 4.2 opendir, etc., library
 * functions. */

/* #define NONSYSTEM_DIR_LIBRARY */

/* Define this symbol if your system has the functions bcopy, etc. */

/* #define BSTRING */

/* subprocesses should be defined if you want to have code for asynchronous subprocesses
 * (as used in M-x compile and M-x shell). This is generally OS dependent, and not
 * supported under most USG systems. */

#define subprocesses

/* If your system uses COFF (Common Object File Format) then define the preprocessor
 * symbol "COFF". */

/* #define COFF */

/* define MAIL_USE_FLOCK if the mailer uses flock to interlock access to
 * /usr/spool/mail/$USER. The alternative is that a lock file named
 * /usr/spool/mail/$USER.lock.  */

/* #define MAIL_USE_FLOCK */

/* Define CLASH_DETECTION if you want lock files to be written so that Emacs can tell
 * instantly when you try to modify a file that someone else has modified in his Emacs.  */

#define CLASH_DETECTION

/* Here, on a separate page, add any special hacks needed to make Emacs work on this
 * system.  For example, you might define certain system call names that don't exist on
 * your system, or that do different things on your system and must be used only through
 * an encapsulation (Which you should place, by convention, in sysdep.c).  */


/* Some compilers tend to put everything declared static into the initialized data area,
 * which becomes pure after dumping Emacs. On these systems, you must #define static as
 * nothing to foil this. Note that emacs carefully avoids static vars inside functions.  */

/* #define static */

/* The file containing the kernel's symbol table is called /unix.  */

#define KERNEL_FILE "/kernel/unix"

/* The symbol in the kernel where the load average is found is named avenrun.  */

#define LDAV_SYMBOL "avenrun"

/* Define this if system V IPC is available.  */

#define HAVE_SYSVIPC

/* On USG systems these have different names */

#define index strchr
#define rindex strrchr

#ifdef __GNUC__
#define LD_SWITCH_SYSTEM -e __start -static
#else
#define LD_SWITCH_SYSTEM -e __start -Bstatic
#endif


/* X needs to talk on the network, so search the network library.  */

#define LIBX10_SYSTEM -lnsl -lsocket

/* In SunOS 4.1, a static function called by tzsetwall reportedly clears the byte just
 * past an eight byte region it mallocs, corrupting GNU malloc's memory pool.  But Sun's
 * malloc doesn't seem to mind. */

#define SYSTEM_MALLOC

/* Sun4s running SunOS 4+ usually have sound support. */
#define USE_SOUND


-- 
Basile STARYNKEVITCH
Commissariat a l Energie Atomique
DRN/DMT/SERMA * C.E. Saclay bat.470 * 91191 GIF/YVETTE CEDEX * France
fax: (33) 1- 69.08.23.81;    phone: (33) 1- 69.08.40.66
email: basile@soleil.serma.cea.fr;  homephone: (33) 1- 46.65.45.53
N.B. Any opinions expressed here are solely mine, and not of my organization.
N.B. Les opinions exprimees ici me sont personnelles et n engagent pas le CEA.

From help-lucid-emacs-request@lucid.com  Wed Oct 14 20:06:19 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA02857; Wed, 14 Oct 92 20:06:19 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA03411g; Wed, 14 Oct 92 20:04:17 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA26533; Wed, 14 Oct 92 23:05:35 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA26529; Wed, 14 Oct 92 23:05:20 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!boulder!news!grunwald
From: grunwald@mumble.cs.colorado.edu (Dirk Grunwald)
Subject: Mail auto-save files?
Message-Id: <GRUNWALD.92Oct14204449@mumble.cs.colorado.edu>
Nntp-Posting-Host: mumble.cs.colorado.edu
Reply-To: grunwald@foobar.cs.colorado.edu
Organization: University of Colorado at Boulder
Date: 14 Oct 92 20:44:48
Lines: 13
Xref: uunet alt.lucid-emacs.help:552
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com



Where I go, I leave a trail of auto-save files from sending mail.
They're embarrsing me because I leave them in other peoples
directories.

I like having auto-save of mail I'm sending (mainly 'cause lucid just
dumped on me), but why should they exist when I'm done sending mail?

Has anyone else noticed this & found a fix?


Dirk Grunwald                          Asst. Prof, Univ. of Colorado at Boulder

From help-lucid-emacs-request@lucid.com  Thu Oct 15 01:56:28 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA04764; Thu, 15 Oct 92 01:56:28 PDT
Received: by heavens-gate.lucid.com id AA04057g; Thu, 15 Oct 92 01:54:19 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA04050g; Thu, 15 Oct 92 01:54:06 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA15464; Thu, 15 Oct 92 01:55:44 PDT
Date: Thu, 15 Oct 92 01:55:44 PDT
Message-Id: <9210150855.AA15464@thalidomide.lucid>
X-Windows: Flawed beyond belief.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: grunwald@foobar.cs.colorado.edu
Cc: help-lucid-emacs@lucid.com
Subject: Re: Mail auto-save files?
In-Reply-To: Dirk Grunwald's message of  14-Oct-92 20:44:48  <GRUNWALD.92Oct14204449@mumble.cs.colorado.edu>
References: <GRUNWALD.92Oct14204449@mumble.cs.colorado.edu>

In message <GRUNWALD.92Oct14204449@mumble.cs.colorado.edu> Dirk Grunwald wrote:
>
> Where I go, I leave a trail of auto-save files from sending mail.
> They're embarrsing me because I leave them in other peoples
> directories.

You can put all of your autosave files in one place if you use a package 
like sk's auto-save.el (in the lemacs .../lisp/packages/ directory.)

> I like having auto-save of mail I'm sending (mainly 'cause lucid just
> dumped on me), but why should they exist when I'm done sending mail?

You may only *think* you're done sending mail.  The `mail' command has been
changed to create a new send-mail buffer each time it is invoked instead of
selecting an old buffer if it exists.  So possibly you're accidentally
letting multiple send-mail buffers pile up.  When you kill a mail buffer (or
send the message) the corresponding auto-save file is deleted.  But if you
exit emacs with unsent mail buffers present, the auto-save files are not
deleted (which I think is the right thing.)

	-- Jamie

From help-lucid-emacs-request@lucid.com  Thu Oct 15 03:49:24 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA05019; Thu, 15 Oct 92 03:49:24 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA04297g; Thu, 15 Oct 92 03:46:40 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA04126; Thu, 15 Oct 92 06:48:07 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA04122; Thu, 15 Oct 92 06:48:05 -0400
Path: uunet!mcsun!sun4nl!cwi.nl!reynolds
From: reynolds%cwi.nl@lucid.com (Graham Reynolds)
Newsgroups: alt.lucid-emacs.help
Subject: Help with dired on SGI Indigo version of lemacs
Message-Id: <7689@charon.cwi.nl>
Date: 15 Oct 92 08:58:42 GMT
Organization: CWI, Amsterdam
Lines: 22
Xref: uunet alt.lucid-emacs.help:553
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Having successfully built lemacs-19.3 for my SGI Indigo (after some
stupidity on my part -- thanks to those who helped me out), I now have
another problem, this time with Dired.

Dired fails to load, with the error message (approx):
   Symbol's function definition is void: baud-rate

Since baud-rate appears to be used only a couple of times in dired I
hacked the lisp to avoid the use of baud-rate, byte-compiled the file
and tried again. Same problem :-( -- I'm no elisp expert so I might have
got that wrong.

I then tried loading the dired stuff using load-file, and that worked
ok, except ... the collapse sub-directory operation "$" doesn't work. It
reduces the subdirectory to a single (very) long line with "^M"'s
scattered along it. The expand subdirectory works fine.

Any help would be appreciated, and please accept my apologies if this is too
trivial.

-- Graham. 


From help-lucid-emacs-request@lucid.com  Thu Oct 15 06:48:24 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA05523; Thu, 15 Oct 92 06:48:24 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA04649g; Thu, 15 Oct 92 06:46:41 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA12766; Thu, 15 Oct 92 09:48:07 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA12759; Thu, 15 Oct 92 09:48:06 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!mcsun!sunic!dkuug!daimi!lynbech
From: lynbech%daimi.aau.dk@lucid.com (Christian Lynbech)
Subject: Re: Help with dired on SGI Indigo version of lemacs
Message-Id: <1992Oct15.133740.5445@daimi.aau.dk>
Organization: DAIMI: Computer Science Department, Aarhus University, Denmark
References: <7689@charon.cwi.nl>
Date: Thu, 15 Oct 92 13:37:40 GMT
Lines: 48
Xref: uunet alt.lucid-emacs.help:555
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

reynolds@cwi.nl (Graham Reynolds) writes:

>Having successfully built lemacs-19.3 for my SGI Indigo (after some
>stupidity on my part -- thanks to those who helped me out), I now have
>another problem, this time with Dired.

[...stuff deleted...]

>I then tried loading the dired stuff using load-file, and that worked
>ok, except ... the collapse sub-directory operation "$" doesn't work. It
>reduces the subdirectory to a single (very) long line with "^M"'s
>scattered along it. The expand subdirectory works fine.

>Any help would be appreciated, and please accept my apologies if this is too
>trivial.

>-- Graham. 

The problem on the last is that the selective display feature isn't
working in lucide emacs. This is the feature that displays lines with
^M characters as ... (ie. collapsed). The trick is to change the ^J
into ^M in the region you want hidden. Outline mode also uses this.

The code handling this, is partly missing and completely commented
out. The obvious fix (putting the stuff back in) does not work as the
cursor starts moving about very strangely. 

The Lucid people is aware of it, but according to a post some while
ago, it was somewhat down their todo-list.

I have tried to figure out what is happening, but the display code is
pretty complex, so I gave up then, and hasn't had time to look at it
since.


------------------------------------------------------------------------------
Christian Lynbech

DAIMI						office: R0.32   phone: 5034
University of Aarhus,DK-Denmark                 email: lynbech@daimi.aau.dk
------------------------------------------------------------------------------
			  EMACS, The One True Editor                       


Hit the philistines three times over the head with the Elisp reference manual.

                                        - petonic@hal.com (Michael A. Petonic)


From help-lucid-emacs-request@lucid.com  Thu Oct 15 11:28:53 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA10367; Thu, 15 Oct 92 11:28:53 PDT
Received: by heavens-gate.lucid.com id AA05758g; Thu, 15 Oct 92 11:27:06 PDT
Received: from bond.crim.ca by heavens-gate.lucid.com id AA05043g; Thu, 15 Oct 92 09:24:46 PDT
Received: from fatman.crim.ca by bond.crim.ca (4.1/SMI-4.1)
	id AA05613; Thu, 15 Oct 92 12:26:11 EDT
Received: by fatman.crim.ca (4.1/SMI-4.1)
	id AA28971; Thu, 15 Oct 92 12:24:29 EDT
Date: Thu, 15 Oct 92 12:24:29 EDT
From: paquette%fatman.crim.ca@lucid.com (Marc Paquette)
Message-Id: <9210151624.AA28971@fatman.crim.ca>
To: reynolds%cwi.nl@lucid.com
Cc: help-lucid-emacs@lucid.com
In-Reply-To: <7689@charon.cwi.nl> (reynolds%cwi.nl@lucid.com)
Subject: Help with dired on SGI Indigo version of lemacs


You said:

> Having successfully built lemacs-19.3 for my SGI Indigo (after some
> stupidity on my part -- thanks to those who helped me out), I now have
> another problem, this time with Dired.
> 
> Dired fails to load, with the error message (approx):
>    Symbol's function definition is void: baud-rate
> 

Dired should work out of the box.  Check that you don't mess up
with the load-path in your .emacs: if ever you modify the
load-path, you're probably better to append things to it instead
of prepending paths.

If Dired is still not working after you checked your load-path,
then do the following before calling Dired (in your .emacs for
example): 

      (defun baud-rate () baud-rate)	; symbole 'baud-rate is now a variable 

The you should fly...

Marc Paquette              |Centre de recherche informatique de Montreal (CRIM)
Conseiller Technique, UN*X | 3744 rue Jean-Brillant, bureau 500
paquette@crim.ca           | Montreal (Quebec) Canada H3T 1P1
Tel : (514) 340-5758       | Fax   : (514) 340-5777


From help-lucid-emacs-request@lucid.com  Thu Oct 15 17:49:50 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA11990; Thu, 15 Oct 92 17:49:50 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA07321g; Thu, 15 Oct 92 17:46:19 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA26179; Thu, 15 Oct 92 20:47:46 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA26168; Thu, 15 Oct 92 20:47:43 -0400
Path: uunet!convex!darwin.sura.net!zaphod.mps.ohio-state.edu!sol.ctr.columbia.edu!ira.uka.de!ira.uka.de!gmd.de!Germany.EU.net!mcsun!uknet!edcastle!edcogsci!cogsci!rjc
From: rjc@cogsci.ed.ac.uk (Richard Caley)
Newsgroups: alt.lucid-emacs.help
Subject: menubars in 19.3
Message-Id: <RJC.92Oct15170437@daiches.cogsci.ed.ac.uk>
Date: 15 Oct 92 16:04:37 GMT
Distribution: alt
Organization: Human Communication Research Center
Lines: 12
Xref: uunet alt.lucid-emacs.help:558
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


I understand that menubars have become buffer rather than screen local
in 19.3? We still run 19.2, but someone with 19.3 has had problems
with my gnuserv code. Is there a simple way to simulate the 19.2
behaviour in 19.3? It makes much more sense to have server-specific
menus attached to the screen the server code pops up than to have them
attached to a buffer, which could be being edited independently on
another screen.

--
rjc@cogsci.ed.ac.uk			_O_
					 |<

From help-lucid-emacs-request@lucid.com  Thu Oct 15 20:25:44 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA12279; Thu, 15 Oct 92 20:25:44 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA07861g; Thu, 15 Oct 92 20:23:55 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA19084; Thu, 15 Oct 92 23:25:22 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA19070; Thu, 15 Oct 92 23:25:19 -0400
Path: uunet!know!hri.com!ukma!usenet.ins.cwru.edu!magnus.acs.ohio-state.edu!cis.ohio-state.edu!pacific.mps.ohio-state.edu!linac!uwm.edu!caen!sol.ctr.columbia.edu!ira.uka.de!math.fu-berlin.de!unidui!rrz.uni-koeln.de!Germany.EU.net!mcsun!uknet!reading!mercury!ssurhode
From: ssurhode@susssys1.rdg.ac.uk (Paul Rhodes)
Newsgroups: alt.lucid-emacs.help
Subject: 19.3 and Motif
Message-Id: <SSURHODE.92Oct16021257@ssssgw05.susssys1.rdg.ac.uk>
Date: 16 Oct 92 02:12:57 GMT
Organization: Reading University, England
Lines: 6
Nntp-Posting-Host: ssssgw05
Xref: uunet alt.lucid-emacs.help:560
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Ages ago I tried to install lemacs 19.3 on a sparc station under sunos
4.1.1 using motif, and I had no luck whatsoever.... is it now possible
to get things going on this setup ???


Paul.

From help-lucid-emacs-request@lucid.com  Fri Oct 16 00:28:21 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA12914; Fri, 16 Oct 92 00:28:21 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA08240g; Fri, 16 Oct 92 00:26:23 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA08395; Fri, 16 Oct 92 03:27:50 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA08384; Fri, 16 Oct 92 03:27:48 -0400
Path: uunet!UB.com!pacbell.com!sgiblab!zaphod.mps.ohio-state.edu!uwm.edu!rutgers!micro-heart-of-gold.mit.edu!xn.ll.mit.edu!hsdndev!rossini
From: rossini@hsph.harvard.edu (Anthony Rossini)
Newsgroups: alt.lucid-emacs.help
Subject: auctex-6.1 and lemacs-19.3
Message-Id: <ROSSINI.92Oct15222636@hsph.harvard.edu>
Date: 16 Oct 92 02:26:36 GMT
Distribution: alt
Organization: Biostat Dept, HSPH, Boston MA, USA.
Lines: 38
Xref: uunet alt.lucid-emacs.help:561
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


Thanks for all comments about the combination.  It looks like everything
will work (and works fairly well!) unless one tries to specify the file mode
within the .tex file via a first line such as:

; -*- LaTeX -*-

or 

; -*- mode:latex -*-

(or any other sensible capitalization scheme of the above 2).  In this case,
while the TeX-buffer command still works, the preview and print commands do
not.  It was commented by one responder that this was caused by a call to
hack-local-variables, and that this removed whatever the file name was
supposed to be from the proper variable.  I checked the code, and couldn't
figure out any workable fixes (short of removing that line from my file).
(Caveat: I'm not an elisp hacker, just a sometimes programmer...)

Does anyone have any ideas on how to fix this problem, short of removing the
calls to hack-local-variables in tex-buf.el?  I'd rather not do that, since
it is the primary reason for having the mode-line there in the first place!

If not, I guess the work around is not to specify file-mode in TeX files to
be used in auc-tex...?

(by the way, installation is fairly simple, as far as just putting the
directory that one gets from iesd.auc.dk into the lisp directory -- I
really, really like this auto-directory reading on start-up feature for
setting the elisp-path!!)

-tony


--
Anthony Rossini       -       rossini@biostat.harvard.edu
Department of Biostatistics, Harvard School of Public Health
677 Huntington Ave, Boston MA 02115  617-432-1056

From help-lucid-emacs-request@lucid.com  Fri Oct 16 02:41:24 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA13807; Fri, 16 Oct 92 02:41:24 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA08444g; Fri, 16 Oct 92 02:38:59 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA28989; Fri, 16 Oct 92 05:40:27 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA28984; Fri, 16 Oct 92 05:40:24 -0400
Path: uunet!pipex!unipalm!uknet!mcsun!sunic!dkuug!daimi!lynbech
From: lynbech%daimi.aau.dk@lucid.com (Christian Lynbech)
Newsgroups: alt.lucid-emacs.help
Subject: Re: auctex-6.1 and lemacs-19.3
Message-Id: <1992Oct16.083239.23733@daimi.aau.dk>
Date: 16 Oct 92 08:32:39 GMT
References: <ROSSINI.92Oct15222636@hsph.harvard.edu>
Distribution: alt
Organization: DAIMI: Computer Science Department, Aarhus University, Denmark
Lines: 49
Xref: uunet alt.lucid-emacs.help:562
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

rossini@hsph.harvard.edu (Anthony Rossini) writes:


>Thanks for all comments about the combination.  It looks like everything
>will work (and works fairly well!) unless one tries to specify the file mode
>within the .tex file via a first line such as:

>; -*- LaTeX -*-

>or 

>; -*- mode:latex -*-

>(or any other sensible capitalization scheme of the above 2).  In this case,
>while the TeX-buffer command still works, the preview and print commands do
>not.  It was commented by one responder that this was caused by a call to
>hack-local-variables, and that this removed whatever the file name was
>supposed to be from the proper variable.  I checked the code, and couldn't
>figure out any workable fixes (short of removing that line from my file).
>(Caveat: I'm not an elisp hacker, just a sometimes programmer...)

[... stuff deleted ...]

AUC-TeX tries to be smart about TeX/LaTeX mode, so if your files are
obviously LaTeX files (for instance starts with \documentstyle) then
AUC-TeX should select LaTeX-mode automatically, thus removing the need
to explicitly state the mode.

The problem comes when there is no easy way to know the mode, for
instance when the file is empty! AUC-TeX has a variable called
TeX-default-mode which should then determine the mode (set to 'latex-mode).

Based on the information given, I should think that this would solve
your problems.



------------------------------------------------------------------------------
Christian Lynbech

DAIMI						office: R0.32   phone: 5034
University of Aarhus,DK-Denmark                 email: lynbech@daimi.aau.dk
------------------------------------------------------------------------------
			  EMACS, The One True Editor                       


Hit the philistines three times over the head with the Elisp reference manual.

                                        - petonic@hal.com (Michael A. Petonic)

From help-lucid-emacs-request@lucid.com  Fri Oct 16 05:40:06 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA14238; Fri, 16 Oct 92 05:40:06 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA08704g; Fri, 16 Oct 92 05:37:37 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA05400; Fri, 16 Oct 92 08:39:05 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA05392; Fri, 16 Oct 92 08:39:03 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!cs.utexas.edu!zaphod.mps.ohio-state.edu!sdd.hp.com!news.cs.indiana.edu!umn.edu!csus.edu!netcom.com!ltd
From: ltd@netcom.com (Larry Drebes)
Subject: Re: Running out of swap space
Message-Id: <1992Oct16.121209.28296@netcom.com>
Organization: Netcom - Online Communication Services  (408 241-9760 guest) 
References: <JAIN.92Oct8140300@alpine.jpl.nasa.gov>
Date: Fri, 16 Oct 1992 12:12:09 GMT
Lines: 23
Xref: uunet alt.lucid-emacs.help:563
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

From article <JAIN.92Oct8140300@alpine.jpl.nasa.gov>, by jain@telerobotics.jpl.nasa.gov (Abhinandan Jain):
> 
> I use Lucid Emacs on a Sun SparcStation IPC. I normally start it up once
> and keep it running over a number of days. However, I run out of swap
> space after a period of time.
> 
> Am I missing something, or is this the normal behavior for Emacs? Thanks
> for your help.

yup, this is not limited to lemacs, a plain old boring emacs18 
will do this also.  it is a pain to have to exit and restart, especially
if you have lot's of windows with many paths.  every couple of days when
i restart emacs i think about writing a small elisp script to save all 
the info for each buffer (all faces, window & icon info...) to be re-loaded
later (sort of like the old sunview toolplaces).  i think between the
X server & emacs everything can be accessed -- anyone care to comment?

having emacs only link statically & grow forever are somewhat
unacceptable (although emacs does do almost everything) in current
times.  this is directly offsetted by huge swap areas &
30 mips on the desktop.

larry-

From help-lucid-emacs-request@lucid.com  Fri Oct 16 06:00:33 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA14356; Fri, 16 Oct 92 06:00:33 PDT
Received: by heavens-gate.lucid.com id AA08732g; Fri, 16 Oct 92 05:58:41 PDT
Received: from rip.hrb.com by heavens-gate.lucid.com id AA08728g; Fri, 16 Oct 92 05:58:30 PDT
Received: from ICF2.HRB.COM by rip.hrb.com (PMDF #2315 ) id
 <01GQ0EFNJ08W000EDV@rip.hrb.com>; Fri, 16 Oct 1992 08:59:35 EST
Received: from icf.hrb.com by icf.hrb.com (PMDF #2315 ) id
 <01GQ0ECQ6XYO9KMNJP@icf.hrb.com>; Fri, 16 Oct 1992 08:59:18 EST
Date: 16 Oct 1992 08:59:18 -0500 (EST)
From: "Eric L. Schott" <ELS@icf.hrb.com>
Subject: Fonts
To: help-lucid-emacs@lucid.com
Message-Id: <01GQ0ECQ77MA9KMNJP@icf.hrb.com>
X-Vms-To: IN%"help-lucid-emacs@lucid.com"
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; CHARSET=US-ASCII
Content-Transfer-Encoding: 7BIT

When I did not set the X resource "lemacs*font" I noticed the menubar
had a different font.  How do I specify a specific fonts for the
menubar, basic buffers, and the minibuffer.

Eric Schott.

From help-lucid-emacs-request@lucid.com  Fri Oct 16 11:12:27 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA00650; Fri, 16 Oct 92 11:12:27 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA09406g; Fri, 16 Oct 92 11:09:08 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA26363; Fri, 16 Oct 92 14:10:26 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA26359; Fri, 16 Oct 92 14:10:25 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!rational.com!rational!carney
From: carney@rocky.rational.com (Mike Carney)
Subject: font-lock and pending-del
Message-Id: <CARNEY.92Oct16094658@rocky.rational.com>
Organization: Rational, Santa Clara, CA
Distribution: alt
Date: Fri, 16 Oct 1992 17:46:58 GMT
Lines: 62
Xref: uunet alt.lucid-emacs.help:565
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


I was having some problems running these two packages together, but
I've solved them, and thought that this might be useful to others.
The problem was that if font-lock mode was on, when you highlighted a
section of text, and started typing something else (which should
replace the highlighted text with pending-del loaded) would leave the
first character that you type highlighted, and pending-del would just
continue to replace that character with every subsequent character.

Well, enough babbling (I'm starting to sound like Stockdale! :-)

Here's what you need to change in  font-lock.el to fix the problem:

Add one link in the function font-lock-after-change-function
;; ...

(defun font-lock-after-change-function (beg end old-len)
  ;; called when any modification is made to buffer text.
  (save-excursion
    (goto-char beg)
    (if (or (> old-len 0)		; Deletions mean the cache is invalid.
	    (= (preceding-char) ?\n)	; Insertions at bol/bob mean that the
	    (bobp))			; bol cache might be invalid.
	(buffer-syntactic-context-flush-cache))
    (goto-char end)
    (end-of-line)
    (setq end (point))
    (goto-char beg)
    (beginning-of-line)
    (setq beg (point))
    (font-lock-unfontify-region beg end)
    (font-lock-fontify-region beg (1+ end))
    (font-lock-hack-keywords beg end)
    (zmacs-deactivate-region)		; Add this line in, and
					; pending-del will work
					; properly.
))

Hope this helps.

Now, has anyone figured out a patch to fix the problems with font-lock
mode and replace-regexp, replace-string, or any other search and
replace function? I think I know what's going on, but don't know how
to fix it. I think the problem is that during each replace, font-lock
mode takes over and uses re-search-forward (in the function
font-lock-hack-keywords), and this screws up the replace operations.
Does anyone know how to fix this?

Thanks in advance.
--
 __________________________________________
|                         ______+          |
|   Michael D. Carney    <  M   |  \+/     |
|   carney@rational.com  <___C__| _<=>_    |                      
|                               0/ .[\ ]   |
|   "Remember...                \/[.[\\]   |
|    no matter where you        | /_\_\/   |
|    go, there you are" -B.B    | [] []    |
|_______________________________|_d]_[b____|




From help-lucid-emacs-request@lucid.com  Fri Oct 16 17:13:00 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01540; Fri, 16 Oct 92 17:13:00 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA10684g; Fri, 16 Oct 92 17:10:21 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA22539; Fri, 16 Oct 92 20:11:49 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA22535; Fri, 16 Oct 92 20:11:46 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!boulder!news!grunwald
From: grunwald@mumble.cs.colorado.edu (Dirk Grunwald)
Subject: Re: font-lock and pending-del
In-Reply-To: carney@rocky.rational.com's message of 16 Oct 92 17:46:58 GMT
Message-Id: <GRUNWALD.92Oct16172814@mumble.cs.colorado.edu>
Nntp-Posting-Host: mumble.cs.colorado.edu
Reply-To: grunwald@foobar.cs.colorado.edu
Organization: University of Colorado at Boulder
References: <CARNEY.92Oct16094658@rocky.rational.com>
Distribution: alt
Date: 16 Oct 92 17:28:14
Lines: 14
Xref: uunet alt.lucid-emacs.help:566
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


>>>>> On 16 Oct 92 17:46:58 GMT, carney@rocky.rational.com (Mike Carney) said:
MC> Now, has anyone figured out a patch to fix the problems with font-lock
MC> mode and replace-regexp, replace-string, or any other search and
MC> replace function? I think I know what's going on, but don't know how
MC> to fix it. I think the problem is that during each replace, font-lock
MC> mode takes over and uses re-search-forward (in the function
MC> font-lock-hack-keywords), and this screws up the replace operations.
MC> Does anyone know how to fix this?
--

I've run into this same problem -- I think I'll take a look at fixing
it, since it's been very very bothersome (so much that I don't use
font-lock anymore).

From help-lucid-emacs-request@lucid.com  Fri Oct 16 17:19:36 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01553; Fri, 16 Oct 92 17:19:36 PDT
Received: by heavens-gate.lucid.com id AA10713g; Fri, 16 Oct 92 17:17:26 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA10709g; Fri, 16 Oct 92 17:17:10 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA20539; Fri, 16 Oct 92 17:18:48 PDT
Date: Fri, 16 Oct 92 17:18:48 PDT
Message-Id: <9210170018.AA20539@thalidomide.lucid>
X-Windows: It could happen to you.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: grunwald@foobar.cs.colorado.edu
Cc: help-lucid-emacs@lucid.com
Subject: Re: font-lock and pending-del
Newsgroups: alt.lucid-emacs.help
In-Reply-To: Dirk Grunwald's message of  16-Oct-92 17:28:14  <GRUNWALD.92Oct16172814@mumble.cs.colorado.edu>
References: <CARNEY.92Oct16094658@rocky.rational.com>
	<GRUNWALD.92Oct16172814@mumble.cs.colorado.edu>

Here's a version of font-lock without the query-replace problem.  

Calling (zmacs-deactivate-region) is the wrong thing, try binding
zmacs-regions to nil instead.

	-- Jamie

---------- slice 'n' dice --------------------------------- file: font-lock.el
;; Electric Font Lock Mode, by jwz for the LISPM Preservation Society.
;; Copyright (C) 1992 Free Software Foundation, Inc.

;; This file is part of GNU Emacs.

;; GNU Emacs is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation; either version 2, or (at your option)
;; any later version.

;; GNU Emacs is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
;; GNU General Public License for more details.

;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING.  If not, write to
;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.

;; Font-lock-mode is a minor mode that causes your comments to be 
;; displayed in one face, strings in another, reserved words in another,
;; documentation strings in another, and so on.
;;
;; Comments will be displayed in `font-lock-comment-face'.
;; Strings will be displayed in `font-lock-string-face'.
;; Doc strings will be displayed in `font-lock-doc-string-face'.
;; Function and variable names (in their defining forms) will be
;;  displayed in `font-lock-function-name-face'.
;; Reserved words will be displayed in `font-lock-keyword-face'.
;;
;; To make the text you type be fontified, use M-x font-lock-mode.
;; When this minor mode is on, the fonts of the current line will be
;; updated with every insertion or deletion.
;;
;; To define new reserved words or other patterns to highlight, use
;; the `font-lock-keywords' variable.  This should be mode-local.
;;
;; To turn this on automatically, add this to your .emacs file:
;;
;;	(setq emacs-lisp-mode-hook '(lambda () (font-lock-mode 1)))
;;
;; On a Sparc2, the initial fontification takes about 12 seconds for a 120k
;; file of C code, using the default configuration.  You can speed this up
;; substantially by removing some of the patterns that are highlighted by
;; default.  Fontifying lisp code is significantly faster, because lisp has a
;; more regular syntax than C, so the expressions don't have to be as hairy.


(or (find-face 'font-lock-comment-face)
    (make-face 'font-lock-comment-face))
(or (face-differs-from-default-p 'font-lock-comment-face)
    (copy-face 'italic 'font-lock-comment-face))

(or (find-face 'font-lock-doc-string-face)
    (make-face 'font-lock-doc-string-face))
(or (face-differs-from-default-p 'font-lock-doc-string-face)
    (copy-face 'font-lock-comment-face 'font-lock-doc-string-face))

(or (find-face 'font-lock-string-face)
    (make-face 'font-lock-string-face))
(or (face-differs-from-default-p 'font-lock-string-face)
    (progn
      (copy-face 'font-lock-doc-string-face 'font-lock-string-face)
      (set-face-underline-p 'font-lock-string-face t)))

(or (find-face 'font-lock-function-name-face)
    (make-face 'font-lock-function-name-face))
(or (face-differs-from-default-p 'font-lock-function-name-face)
    (copy-face 'bold-italic 'font-lock-function-name-face))

(or (find-face 'font-lock-keyword-face)
    (make-face 'font-lock-keyword-face))
(or (face-differs-from-default-p 'font-lock-keyword-face)
    (copy-face 'bold 'font-lock-keyword-face))


(defvar font-lock-keywords nil
  "*The keywords to highlight.
If this is a list, then elements may be of the forms:

  \"string\"			  ; a regexp to highlight in the 
				  ;  `font-lock-keyword-face'.
  (\"string\" . integer)  	  ; match N of the regexp will be highlighted
  (\"string\" . face-name)	  ; use the named face
  (\"string\" integer face-name)    ; both of the above
  (\"string\" integer face-name t)  ; this allows highlighting to overlap
				  ;  with already-highlighted regions.

These regular expressions should not match text which spans lines.  Multi-line
patterns will be correctly fontified when \\[font-lock-fontify-buffer] is used,
but will not be matched by the auto-fontification that font-lock-mode does,
since it looks at only one line at a time.

Be careful composing regexps for this list; the wrong pattern can dramatically
slow things down!")

(defvar font-lock-keywords-case-fold-search nil
  "*Whether the strings in `font-lock-keywords' should be case-folded.")

(defvar font-lock-verbose t
  "*Whether font-lock-fontify-buffer should print status messages.")

(defvar font-lock-mode-hook nil
  "*Function or functions to run on entry to font-lock-mode.")

;;; To fontify the whole buffer, we just go through it a character at a time,
;;; and create new extents when necessary (the extents we create span lines.)
;;;
;;; Each time a modification happens to a line, we remove all of the extents
;;; on that line (splitting line-spanning extents as necessary) and recompute
;;; the contexts for every character on the line.  This means that, as the
;;; user types, we repeatedly go back to the beginning of the line, doing more
;;; work the longer the line gets.  This happens in the buffer-syntactic-
;;; context subr, so it's plenty fast.
;;;
;;; We redo the whole line because that's a lot easier than dealing with the
;;; hair of modifying possibly-overlapping extents, and extents whose 
;;; endpoints were moved by the insertion we are reacting to.
;;;
;;; Extents as they now exist are not a good fit for this project, because
;;; extents talk about properties of *regions*, when what we want to talk
;;; about here are properties of *characters*.  

(defsubst font-lock-context-face (context depth)
  (cond ((eq context 'comment) 'font-lock-comment-face)
	((eq context 'block-comment) 'font-lock-comment-face)
	((eq context 'string)
	 (if (= depth 1)
	     ;; really we should only use this if in position 3 depth 1, but
	     ;; that's too expensive to compute.
	     'font-lock-doc-string-face
	   'font-lock-string-face))
	(t nil)))


(defun font-lock-fontify-region (start end)
  (goto-char start)
  (if (> end (point-max)) (setq end (point-max)))
  (syntactically-sectionize start end
    (function
     (lambda (extent context depth)
       (set-extent-face extent (font-lock-context-face context depth))))
   'font-lock))

(defun font-lock-unfontify-region (beg end)
  ;; First delete all extents on this line (really, in this region).
  ;; If extents span the line (region), divide them first so that
  ;; previous and following lines are unaffected.
  (let (s e extent2)
    (map-extents
     (function
      (lambda (extent ignore)
	(if (not (eq 'font-lock (extent-data extent)))
	    nil				; if it's not ours, leave it alone...
	  (setq s (extent-start-position extent)
		e (extent-end-position extent))
	  (cond ((< s beg)		; starts before line
		 (set-extent-endpoints extent s (1- beg))
		 (if (> e (1+ end))	; ...and ends after line
		     (progn
		       (setq extent2 (make-extent (1+ end) e))
		       (set-extent-face extent2 (extent-face extent))
		       (set-extent-data extent2 (extent-data extent)))))
		((> e (1+ end))		; starts on line and ends after
		 (set-extent-endpoints extent (1+ end) e))
		(t			; contained on line
		 (delete-extent extent))))))
     (current-buffer) beg end nil)))


(defun font-lock-after-change-function (beg end old-len)
  ;; called when any modification is made to buffer text.
  (save-excursion
    (let ((data (match-data)))
      (goto-char beg)
      (if (or (> old-len 0)		; Deletions mean the cache is invalid.
	      (= (preceding-char) ?\n)	; Insertions at bol/bob mean that the
	      (bobp))			; bol cache might be invalid.
	  (buffer-syntactic-context-flush-cache))
      (goto-char end)
      (end-of-line)
      (setq end (point))
      (goto-char beg)
      (beginning-of-line)
      (setq beg (point))
      (font-lock-unfontify-region beg end)
      (font-lock-fontify-region beg (1+ end))
      (font-lock-hack-keywords beg end)
      ;; it would be bad if `insert' were to stomp the match data...
      (store-match-data data))))


;;; Fontifying arbitrary patterns

(defsubst font-lock-any-extents-p (start end)
  (catch 'done
    (map-extents (function (lambda (extent ignore)
			     (if (eq 'font-lock (extent-data extent))
				 (throw 'done t))))
		 (current-buffer) start end nil)
    nil))

(defun font-lock-hack-keywords (start end &optional loudly)
  (goto-char start)
  (let ((case-fold-search font-lock-keywords-case-fold-search)
	(rest font-lock-keywords)
	(count 0)
	str match face s e extent allow-overlap-p)
    (while rest
      (goto-char start)
      (cond ((consp (car rest))
	     (setq str (car (car rest)))
	     (cond ((consp (cdr (car rest)))
		    (setq match (car (cdr (car rest)))
			  face (car (cdr (cdr (car rest))))
			  allow-overlap-p (car (cdr (cdr (cdr (car rest)))))))
		   ((symbolp (cdr (car rest)))
		    (setq match 0 allow-overlap-p nil
			  face (cdr (car rest))))
		   (t
		    (setq match (cdr (car rest))
			  allow-overlap-p nil
			  face 'font-lock-keyword-face))))
	    (t
	     (setq str (car rest) match 0 allow-overlap-p nil
		   face 'font-lock-keyword-face)))
      (while (re-search-forward str end t)
	(setq s (match-beginning match)
	      e (match-end match))
	;; don't fontify this keyword if we're already in some other context.
	(or (if allow-overlap-p nil (font-lock-any-extents-p s e))
	    (progn
	      (setq extent (make-extent s e))
	      (set-extent-face extent face)
	      (set-extent-data extent 'font-lock))))
      (if loudly (message (format "Fontifying buffer... (regexps...%s)"
				  (make-string (setq count (1+ count)) ?.))))
      (setq rest (cdr rest)))))


;; The user level functions

(defvar font-lock-mode nil) ; for modeline
(or (assq 'font-lock-mode minor-mode-alist)
    (nconc minor-mode-alist
	   (list '(font-lock-mode " Font-Lock"))))

(defvar font-lock-fontified nil) ; whether we have hacked this buffer
(put 'font-lock-fontified 'permanent-local t)

(defun font-lock-mode (&optional arg)
  "Toggle Font Lock Mode.
With arg, turn font-lock mode on if and only if arg is positive.
In the font-lock minor mode, text is fontified as you type it:

 - comments are displayed in font-lock-comment-face;
 - strings are displayed in font-lock-string-face;
 - documentation strings are displayed in font-lock-doc-string-face;
 - function and variable names in their defining forms are displayed
   in font-lock-function-name-face;
 - and certain other expressions are displayed in other faces
   according to the value of the variable `font-lock-keywords'.

When font-lock mode is turned on/off, the buffer is fontified/defontified.
To fontify a buffer without having newly typed text become fontified, you
can use \\[font-lock-fontify-buffer]."
  (interactive "P")
  (let ((on-p (if (null arg)
		  (not font-lock-mode)
		(> (prefix-numeric-value arg) 0))))
    (or (memq after-change-function
	      '(nil font-lock-after-change-function))
	(error "after-change-function is %s" after-change-function))
    (set (make-local-variable 'after-change-function)
	 (if on-p 'font-lock-after-change-function nil))
    (set (make-local-variable 'font-lock-mode) on-p)
    (cond (on-p
	   (run-hooks 'font-lock-mode-hook)
	   (or font-lock-fontified (font-lock-fontify-buffer)))
	  (font-lock-fontified
	   (setq font-lock-fontified nil)
	   (font-lock-unfontify-region (point-min) (point-max))))
    (redraw-mode-line)))


(defun font-lock-fontify-buffer ()
  "Fontify the current buffer the way `font-lock-mode' would:

 - comments are displayed in font-lock-comment-face;
 - strings are displayed in font-lock-string-face;
 - documentation strings are displayed in font-lock-doc-string-face;
 - function and variable names in their defining forms are displayed
   in font-lock-function-name-face;
 - and certain other expressions are displayed in other faces
   according to the value of the variable `font-lock-keywords'.

This can take a while for large buffers."
  (interactive)
  (let ((was-on font-lock-mode)
	(font-lock-verbose (or font-lock-verbose (interactive-p))))
    (if font-lock-verbose (message "Fontifying buffer..."))
    ;; Turn it on to run hooks and get the right font-lock-keywords.
    (or was-on (font-lock-mode 1))
    (map-extents (function (lambda (x y)
			     (if (eq 'font-lock (extent-data x))
				 (delete-extent x))))
		 (current-buffer) (point-min) (point-max) nil)
    (if font-lock-verbose (message "Fontifying buffer... (syntactically...)"))
    (buffer-syntactic-context-flush-cache)
    (save-excursion
      (font-lock-fontify-region (point-min) (point-max))
      (if font-lock-verbose (message "Fontifying buffer... (regexps...)"))
      (font-lock-hack-keywords (point-min) (point-max) font-lock-verbose))
    (or was-on (font-lock-mode 0)) ; turn it off if it was off.
    (set (make-local-variable 'font-lock-fontified) t)
    (if font-lock-verbose (message "Fontifying buffer... done."))
    ))


;;; Lisp and C mode interface.
;;; This stuff really belongs in lisp-mode.el and c-mode.el.

(defconst lisp-font-lock-keywords
 '(("^(def[-a-z]+\\s +\\(\\S +\\)" 1 font-lock-function-name-face)
   ;; Too gaudy for me, ma!
;   ("(\\(cond\\|if\\|when\\|unless\\|[ec]?\\(type\\)?case\\)[ \t\n]" . 1)
;   ("(\\(while\\|do\\|let*?\\|flet\\|labels\\|prog[nv12*]?\\)[ \t\n]" . 1)
;   ("(\\(catch\\|\\throw\\|block\\|return\\|return-from\\)[ \t\n]" . 1)
;   ("(\\(save-restriction\\|save-window-restriction\\)[ \t\n]" . 1)
;   ("(\\(save-excursion\\|unwind-protect\\|condition-case\\)[ \t\n]" . 1)
   ;; highlight CL keywords
   ("\\s :\\(\\sw\\|\\s_\\)+\\>" . 1)
   ;; highlight function names in emacs-lisp docstrings
;   ("\\\\\\\\\\[\\([^\]\n]+\\)]" 1 font-lock-keyword-face t)
   ;; highlight words inside `' which tend to be function names
;   ("`\\([^' \n\t][^' \n\t][^' \n\t]+\\)'" 1 font-lock-keyword-face t)
   ))

(defvar c-font-lock-keywords
  (let ((storage "auto\\|extern\\|register\\|static\\|volatile")
	(prefixes "unsigned\\|short\\|long")
	(types (concat "int\\|char\\|float\\|double\\|void\\|struct\\|"
		       "union\\|enum\\|typedef")))
    (list
;     ;; Look ma, no taste!
;     storage
;     (list (concat "\\(" storage "\\)?\\s *"
;		   "\\(" prefixes "\\)?\\s *"
;		   "\\(" types "\\)\\s +"
;		   "\\(\\(\\sw\\|\\s_\\|[*&]\\)+\\)")
;	   4 'font-lock-function-name-face)
;     (cons (concat
;	    "[ \t]\\("
;	    (mapconcat 'identity
;	     '("for" "while" "do" "return" "goto" "case" "break" "switch")
;	     "\\|")
;	    "\\)[ \t\n(){};,]")
;	   1)

     ;; fontify preprocessor directives as comments.
     '("^#[ \t]*[a-z]+" . font-lock-comment-face)

     ;; fontify names being defined.
     '("^#[ \t]*define[ \t]+\\(\\(\\sw\\|\\s_\\)+\\)" 1
       font-lock-function-name-face)

     ;; fontify the filename in #include <...> as a string.
     '("^#[ \t]*include[ \t]+<\\([^>\n]+\\)>" 1 font-lock-string-face)

     ;; fontify case targets and goto-tags.  This is too slow.
;     "\\(\\sw\\|\\s_\\)+:"

     ;; This is much faster because it's anchored on the left, but it
     ;; doesn't do `goto' targets.  
     '("case[ \t]+\\(\\sw\\|\\s_\\)+:". 1)
     '("\\<\\(default\\):". 1)

     ;; fontify the names of functions being defined.
     ;; I think this should be fast because it's anchored at bol, but it's not.
     (list (concat
	    "^\\(\\(\\sw\\|\\s_\\)+[ \t]+\\)?"	; type specs; there can be no
	     "\\(\\(\\sw\\|\\s_\\)+[ \t]+\\)?"	; more than 3 tokens, right?
	     "\\(\\(\\sw\\|\\s_\\)+[ \t]+\\)?"
	     "\\(\\*+[ \t]*\\)?"		; pointer
	     "\\(\\sw\\|\\s_\\)+[ \t]*(")	; name
	   8 'font-lock-function-name-face)

     ;; This is faster but not by much.  I don't see why not.
;     '("^\\(\\sw\\|\\s_\\)+[ \t]*(" 1 font-lock-function-name-face)

     ;; Fontify structure names
     (list (concat "^\\(typedef[ \t]+struct\\|struct\\|static[ \t]+struct\\)"
		   "[ \t]+\\(\\sw\\|\\s_\\)+[ \t]*\\(\{\\|$\\)")
	   2 'font-lock-function-name-face)

     ;; Fontify variables declared with structures, or typedef names.
;     '("}[ \t*]*\\(\\sw\\|\\s_\\)+[ \t]*[,;]" 1 font-lock-function-name-face)
     )))

;; Kludge
(defun dummy-font-lock-mode-hook ()
  (cond ((memq major-mode '(lisp-mode emacs-lisp-mode))
	 (set (make-local-variable 'font-lock-keywords)
	      lisp-font-lock-keywords))
	((memq major-mode '(c-mode c++-mode))
	 (set (make-local-variable 'font-lock-keywords)
	      c-font-lock-keywords))
	))

(add-hook 'font-lock-mode-hook 'dummy-font-lock-mode-hook)

From help-lucid-emacs-request@lucid.com  Fri Oct 16 18:23:41 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01674; Fri, 16 Oct 92 18:23:41 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA10871g; Fri, 16 Oct 92 18:19:37 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA24240; Fri, 16 Oct 92 21:21:06 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA24236; Fri, 16 Oct 92 21:21:05 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!rational.com!rational!carney
From: carney@rocky.rational.com (Mike Carney)
Subject: Re: font-lock and pending-del
In-Reply-To: jwz@lucid.com's message of Fri, 16 Oct 1992 17:18:48 PDT
Message-Id: <CARNEY.92Oct16174158@rocky.rational.com>
Organization: Rational, Santa Clara, CA
References: <CARNEY.92Oct16094658@rocky.rational.com>
	<GRUNWALD.92Oct16172814@mumble.cs.colorado.edu>
	<9210170018.AA20539@thalidomide.lucid>
Date: Sat, 17 Oct 1992 01:41:58 GMT
Lines: 31
Xref: uunet alt.lucid-emacs.help:568
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

> 
> In article <9210170018.AA20539@thalidomide.lucid> jwz@lucid.com (Jamie Zawinski) writes:
> 
>    Here's a version of font-lock without the query-replace problem.  
> 

It works great! Thanks a bunch :-)


>    Calling (zmacs-deactivate-region) is the wrong thing, try binding
>    zmacs-regions to nil instead.
> 
> 	   -- Jamie

Thanks for the info, I'll give that a try too. However,
zmacs-deactive-region didn't seem to have any strange side effects?

Thanks again.
--
 __________________________________________
|                         ______+          |
|   Michael D. Carney    <  M   |  \+/     |
|   carney@rational.com  <___C__| _<=>_    |                      
|                               0/ .[\ ]   |
|   "Remember...                \/[.[\\]   |
|    no matter where you        | /_\_\/   |
|    go, there you are" -B.B    | [] []    |
|_______________________________|_d]_[b____|




From help-lucid-emacs-request@lucid.com  Fri Oct 16 18:40:00 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA01699; Fri, 16 Oct 92 18:40:00 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA10924g; Fri, 16 Oct 92 18:37:55 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA24609; Fri, 16 Oct 92 21:39:23 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA24605; Fri, 16 Oct 92 21:39:22 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!ferkel.ucsb.edu!taco!rock!concert!uvaarpa!caen!uwm.edu!cs.utexas.edu!natinst.com!news.dell.com!swrinde!elroy.jpl.nasa.gov!ufo!Aig.Jpl.Nasa.Gov!rouquett
From: rouquett@ai-cyclops.jpl.nasa.gov (Nicolas Rouquette)
Subject: Ilisp mode: edit-definitions-lisp broken
Message-Id: <1992Oct16.231125.22430@jpl-devvax.jpl.nasa.gov>
Nntp-Posting-Host: ai-cyclops
Reply-To: rouquett@ai-cyclops.jpl.nasa.gov
Organization: NASA/Jet Propulsion Laboratory
Date: Fri, 16 Oct 1992 23:11:25 GMT
Lines: 11
Xref: uunet alt.lucid-emacs.help:570
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I'm using lemacs 19.2 on sunos 4.1.{1,2} taken fron labrea.
edit-definitions-lisp (M-.) causes an error: Wrong type of argument: keymapp, nil
whenever I try to use it. On the other hand, search-lisp (M-?) works. 
Does anyone have any idea what isn't set properly for M-. to work?



-- 
----------Nicolas Rouquette----------rouquett@aig.jpl.nasa.gov
    Artificial Intelligence Group
      Jet Propulsion Laboratory

From help-lucid-emacs-request@lucid.com  Sat Oct 17 05:58:34 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA03577; Sat, 17 Oct 92 05:58:34 PDT
Received: by heavens-gate.lucid.com id AA11549g; Sat, 17 Oct 92 05:55:25 PDT
Received: from moebius.loria.fr by heavens-gate.lucid.com id AA11545g; Sat, 17 Oct 92 05:55:14 PDT
Received: by moebius.loria.fr id AA07928
  (5.65c+/IDA-1.4.3 for help-lucid-emacs@lucid.com); Sat, 17 Oct 92 13:56:40 +0100
Date: Sat, 17 Oct 92 13:56:40 +0100
From: Guido Bosch <Guido.Bosch%loria.fr@lucid.com>
Message-Id: <9210171256.AA07928@moebius.loria.fr>
To: help-lucid-emacs@lucid.com
Subject: zmacs-regions and `popup-menu'
Reply-To: Guido BOSCH <bosch%loria.fr@lucid.com>

How can I prevent `popup-menu' from desactivating the primary
selection when zmacs-regions is on? In the following example, the
eval-region command fails because the region is desactivated by the
function `popup-menu', in spite of the variable `zmacs-region-stays'
being `t':

------------------------- *scratch* -------------------------
(define-key lisp-interaction-mode-map 'button3 'test-menu)

(defun test-menu (event)
  (interactive "e")
  (let ((zmacs-region-stays t))
    (popup-menu
     '("Emacs Lisp"
       ["Eval region" eval-region t]))))

--------------------------------------------------------------

An other problem with `popup-menu': Lucid Emacs breaks down
immediately with "Fatal error (10).Bus error", if you eval the
following form (please save your buffers before trying it out 8-):

(popup-menu
     '("Emacs Lisp"
       ["Eval region" eval-region (car '(a b c))]))


Guido

From help-lucid-emacs-request@lucid.com  Sat Oct 17 06:51:52 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA03635; Sat, 17 Oct 92 06:51:52 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA11622g; Sat, 17 Oct 92 06:49:11 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA06934; Sat, 17 Oct 92 09:50:42 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA06930; Sat, 17 Oct 92 09:50:41 -0400
Path: uunet!charon.amdahl.com!amdahl!JUTS!climb!tlp00
From: tlp00%climb.as@lucid.com (Tibor Polgar)
Newsgroups: alt.lucid-emacs.help
Subject: Re: 19.3 and Motif
Message-Id: <742V02FN26nn01@JUTS.ccc.amdahl.com>
Date: 17 Oct 92 04:15:08 GMT
Reply-To: tlp00%climb.as@lucid.com
Organization: Amdahl Corporation
Lines: 12
Xref: uunet alt.lucid-emacs.help:574
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


With the great completion highlighting in 19.3, I was wondering how to use it to 
quickly edit a dired file.   Just move the mouse pointer over the file, click button2
and boom i'm editting the file.   
    My questions specificly are:
       1)  What dired_blah function do i call to edit/read-dir that i can bind to a
            mouse button.   How do i pick up the file name to pass to the function??
       2)   How does the font_lock(?) and completion/buffer list screens key in on
             what file is "hot"?   I can't get the key bindings out of lemacs because
            after i get through rebinding, C-h B crashes lemacs..... bug i guess.

All suggestions and help are greatly appreciated.

From help-lucid-emacs-request@lucid.com  Sat Oct 17 08:52:24 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA03888; Sat, 17 Oct 92 08:52:24 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA11774g; Sat, 17 Oct 92 08:50:12 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA25413; Sat, 17 Oct 92 11:51:43 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA25409; Sat, 17 Oct 92 11:51:42 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!boulder!news!grunwald
From: grunwald@foobar.cs.colorado.edu (Dirk Grunwald)
Subject: Re: 19.3 and Motif
In-Reply-To: tlp00@climb.as's message of 17 Oct 92 04:15:08 GMT
Message-Id: <GRUNWALD.92Oct17094640@foobar.cs.colorado.edu>
Lines: 25
Nntp-Posting-Host: foobar.cs.colorado.edu
Reply-To: grunwald@foobar.cs.colorado.edu
Organization: University of Colorado at Boulder
References: <742V02FN26nn01@JUTS.ccc.amdahl.com>
Date: Sat, 17 Oct 1992 15:46:46 GMT
Xref: uunet alt.lucid-emacs.help:575
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

I use this.

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Dired hacks
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;; Denis GIROU - 30 Jul. 1992
;;; From an idea of Russell Ritchie, Scottish HCI Centre,
;;;      <russell@uk.ac.strath.hci> (July 88) 
(defun x-mouse-inspect-file (arg)
  "Inspect the file or the subdirectory the mouse is pointing at."
  (interactive "@e")
  (mouse-set-point arg)
  (let ((filename (dired-get-filename)))
       (if (save-excursion
           (beginning-of-line)
	   (looking-at " *d"))	; If it's a directory use dired on it.
       (dired-maybe-insert-subdir filename)
       (find-file filename))))

(defun dirk::lucid-dired-load-hook ()
  (define-key dired-mode-map 'button2 'x-mouse-inspect-file)
)

(add-hook 'dired-mode-hook 'dirk::lucid-dired-load-hook)

From help-lucid-emacs-request@lucid.com  Sat Oct 17 13:26:43 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA04443; Sat, 17 Oct 92 13:26:43 PDT
Received: by heavens-gate.lucid.com id AA12117g; Sat, 17 Oct 92 13:22:18 PDT
Received: from thalidomide.lucid ([192.31.212.116]) by heavens-gate.lucid.com id AA12113g; Sat, 17 Oct 92 13:22:09 PDT
Received: by thalidomide.lucid (4.1/SMI-4.1)
	id AA23174; Sat, 17 Oct 92 13:23:47 PDT
Date: Sat, 17 Oct 92 13:23:47 PDT
Message-Id: <9210172023.AA23174@thalidomide.lucid>
X-Windows: It could happen to you.
From: Jamie Zawinski <jwz@lucid.com>
Sender: jwz%thalidomide@lucid.com
To: Guido BOSCH <bosch%loria.fr@lucid.com>
Cc: help-lucid-emacs@lucid.com
Subject: Re: zmacs-regions and `popup-menu'
In-Reply-To: Guido Bosch's message of Sat 17-Oct-92 13:56:40 +0100 <9210171256.AA07928@moebius.loria.fr>
References: <9210171256.AA07928@moebius.loria.fr>

In message <9210171256.AA07928@moebius.loria.fr> Guido Bosch wrote:
>
> How can I prevent `popup-menu' from desactivating the primary
> selection when zmacs-regions is on? In the following example, the
> eval-region command fails because the region is desactivated by the
> function `popup-menu', in spite of the variable `zmacs-region-stays'
> being `t':

You need to globally setq it, not simply bind it.  I'm going to change
the `popup-menu' function to do this automatically.

	-- Jamie

From help-lucid-emacs-request@lucid.com  Sun Oct 18 20:27:34 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA08348; Sun, 18 Oct 92 20:27:34 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA13663g; Sun, 18 Oct 92 20:24:00 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA11490; Sun, 18 Oct 92 23:25:34 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA11486; Sun, 18 Oct 92 23:25:25 -0400
Path: uunet!usc!wupost!sdd.hp.com!cs.utexas.edu!sun-barr!decwrl!deccrl!news.crl.dec.com!amber!e2big.mko.dec.com!pa.dec.com!oct17.dfe.dec.com!ryn.mro4.dec.com!ryn.mro4.dec.com!pierson
From: pierson@kukri.mps.mlo.dec.com (dan pierson)
Newsgroups: gnu.emacs.sources,alt.lucid-emacs.help
Subject: Re: Mail enhancements, was Re: How to get '>' with C-c C-y in rmail-mode
Message-Id: <PIERSON.92Oct16153453@kukri.mps.mlo.dec.com>
Date: 16 Oct 92 19:34:53 GMT
References: <sledge.719066501@clustrol> <NICKEL.92Oct14210043@desaster.cs.tu-berlin.de>
	<PLUMMER.92Oct14182812@cilantro.cs.swarthmore.edu>
	<1992Oct15.074307.21443@daimi.aau.dk>
	<WARSAW.92Oct15102234@anthem.nlm.nih.gov>
	<NEAL.92Oct16094149@neal.ctd.comsat.com>
Organization: Digital Equipment Corporation
Lines: 23
In-Reply-To: neal@ctd.comsat.com's message of Fri, 16 Oct 1992 14:41:49 GMT
Xref: uunet gnu.emacs.sources:1272 alt.lucid-emacs.help:577
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


   From: neal@ctd.comsat.com (Neal Becker)

   Only one problem.  So far sc-2.2 fails miserably with
   lucid-emacs-19.3.  Anyone got it working?

There are two problems, one easy, one hard.

Easy one: Change all uses of
    	    (mark)
    	  to
    	    (let ((zmacs-regions nil)) (mark))
    	  Jamie's mentioned this a lot.

Hard one: sc-spoogify-docstring depends on the internal representation
    	  of function objects.  That's changed to, I think, an opaque
    	  type with no access functions.  I just commented out the (only)
    	  call of it in sc-cite-original.

                                            dan
--
Dan L. Pierson          Digital Equipment Corporation
pierson@crl.dec.com     Massively Parallel Systems Group

From help-lucid-emacs-request@lucid.com  Mon Oct 19 01:37:09 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA09402; Mon, 19 Oct 92 01:37:09 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA13942g; Mon, 19 Oct 92 01:33:53 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA06134; Mon, 19 Oct 92 04:35:28 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA06130; Mon, 19 Oct 92 04:35:25 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!mcsun!sunic!dkuug!daimi!lynbech
From: lynbech%daimi.aau.dk@lucid.com (Christian Lynbech)
Subject: Re: Running out of swap space
Message-Id: <1992Oct19.082854.7848@daimi.aau.dk>
Organization: DAIMI: Computer Science Department, Aarhus University, Denmark
References: <JAIN.92Oct8140300@alpine.jpl.nasa.gov> <1992Oct16.121209.28296@netcom.com>
Date: Mon, 19 Oct 92 08:28:54 GMT
Lines: 40
Xref: uunet alt.lucid-emacs.help:578
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

ltd@netcom.com (Larry Drebes) writes:

>From article <JAIN.92Oct8140300@alpine.jpl.nasa.gov>, by jain@telerobotics.jpl.nasa.gov (Abhinandan Jain):
>> 
>> I use Lucid Emacs on a Sun SparcStation IPC. I normally start it up once
>> and keep it running over a number of days. However, I run out of swap
>> space after a period of time.
>> 
>> Am I missing something, or is this the normal behavior for Emacs? Thanks
>> for your help.

>yup, this is not limited to lemacs, a plain old boring emacs18 
>will do this also.  it is a pain to have to exit and restart, especially
>if you have lot's of windows with many paths.  every couple of days when
>i restart emacs i think about writing a small elisp script to save all 
>the info for each buffer (all faces, window & icon info...) to be re-loaded
>later (sort of like the old sunview toolplaces).  i think between the
>X server & emacs everything can be accessed -- anyone care to comment?

[...stuff deleted...]

You may want to check out saveconf.el (lisp/packages/) of your emacs
distribution, though I don't know how much of the fancy stuff it will save, but
it is supposed to solve the above problem.



------------------------------------------------------------------------------
Christian Lynbech

DAIMI						office: R0.32   phone: 5034
University of Aarhus,DK-Denmark                 email: lynbech@daimi.aau.dk
------------------------------------------------------------------------------
			  EMACS, The One True Editor                       


Hit the philistines three times over the head with the Elisp reference manual.

                                        - petonic@hal.com (Michael A. Petonic)


From help-lucid-emacs-request@lucid.com  Mon Oct 19 07:23:07 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA10857; Mon, 19 Oct 92 07:23:07 PDT
Received: by heavens-gate.lucid.com id AA14304g; Mon, 19 Oct 92 07:19:36 PDT
Received: from rip.hrb.com by heavens-gate.lucid.com id AA14300g; Mon, 19 Oct 92 07:19:25 PDT
Received: from ICF2.HRB.COM by rip.hrb.com (PMDF #2315 ) id
 <01GQ4O5DRE0W000I6F@rip.hrb.com>; Mon, 19 Oct 1992 10:20:49 EST
Received: from icf.hrb.com by icf.hrb.com (PMDF #2315 ) id
 <01GQ4NXL721S9KMTI6@icf.hrb.com>; Mon, 19 Oct 1992 10:20:32 EST
Date: 19 Oct 1992 10:20:32 -0500 (EST)
From: "Eric L. Schott" <ELS@icf.hrb.com>
Subject: Re: 19.3 and Motif
To: help-lucid-emacs@lucid.com
Message-Id: <01GQ4NXL7LC29KMTI6@icf.hrb.com>
X-Vms-To: IN%"help-lucid-emacs@lucid.com"
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; CHARSET=US-ASCII
Content-Transfer-Encoding: 7BIT

>With the great completion highlighting in 19.3, I was wondering how to use
>it to quickly edit a dired file.   Just move the mouse pointer over the file,
>click

I do the following:  It behaves like buffer menu

(define-key dired-mode-map 'button2
      (function (lambda () (interactive)
		       (mouse-set-point last-command-event)
			           (dired-find-file)
					)))
					
(add-hook 'dired-mode-hook
      (function
             (lambda ()
		 (require 'mode-motion)
		     (setq mode-motion-hook 'mode-motion-highlight-line)
			 )))

----
Eric L. Schott,    HRB Systems, Inc.    814/238-4311     els@icf.hrb.com
  "As we acquire more knowledge, things do not become more comprehensible
   but more mysterious."                  Albert Schweitzer, "Paris Notes"

From help-lucid-emacs-request@lucid.com  Mon Oct 19 07:39:08 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA10908; Mon, 19 Oct 92 07:39:08 PDT
Received: by heavens-gate.lucid.com id AA14330g; Mon, 19 Oct 92 07:36:15 PDT
Received: from moebius.loria.fr by heavens-gate.lucid.com id AA14325g; Mon, 19 Oct 92 07:35:42 PDT
Received: by moebius.loria.fr id AA00544
  (5.65c+/IDA-1.4.3 for help-lucid-emacs@lucid.com); Mon, 19 Oct 92 15:33:43 +0100
Date: Mon, 19 Oct 92 15:33:43 +0100
From: Guido Bosch <Guido.Bosch%loria.fr@lucid.com>
Message-Id: <9210191433.AA00544@moebius.loria.fr>
To: help-lucid-emacs@lucid.com
Subject: mode-motion+ announce
Reply-To: Guido BOSCH <bosch%loria.fr@lucid.com>

Here is the 19.3 version of my mode motion package. I renamed it in
`mode-motion+' because it is now an expansion of Jamies mode-motion.el
that is shipped with the the 19.3 distribution. Here is the README
file. The package follows in a seperate mailing. 

Please send me your comments, bug fixes, flames etc.

	Guido

------------------------------- README -------------------------------
This is the README file of the mode-motion+ package. mode-motion+ is
ment to be an extension of .../lisp/prim/mode-motion.el in the Lucid
Emacs 19.3 distribution.

This package is for Lucid Emacs 19.3 (or later).

Features/improvements w.r.t. standard mode-motion.el
====================================================
  
* More available mode motion handlers:
  ------------------+------------+---------+--------------------------
      entity        | highlight  |  cursor | motion handler
  ------------------+------------+---------+--------------------------
  character         | background |  stays  | m-t-h-char (*)
  symbol            | background |  stays  | m-t-h-symbol
  filename          | background |  stays  | m-t-h-filename
  whole line        | background |  stays  | m-t-h-whole-line
  visible line text | background |  stays  | m-t-h-visible-line
  visible line text | background | follows | m-t-h-visible-line-follow
  syntax structure  | background |  stays  | m-t-h-thing
  syntax structure  |    bold    |  stays  | m-t-h-thing-bold
  character         |    ----    | follows | mouse-track-pointer
  ------------------+------------+---------+--------------------------
 (*) `m-t-h' is an abbreviation for mouse-track-highlight

* Default mode motion handler (mouse-track-highlight-thing-bold)

* Better matching of sexpressions due to thing.el 

* Mouse motion handlers that make point follow the mouse.
    This is useful for "line modes" (vm-summary, dired, gnus etc.), with
    commands that are sensitive to the cursor position.

* The cursor glyph `top_left_arrow' is used when highlighting is
  active.

* Improvement of minibuffer completion highlighting.
    Selection is now sensitive to partially typed minibuffer input.
    Matching of selectable symbols has been improved (but see the
    to-do-list). 

* Copy and cut-and-past of highlighted regions:
  - meta middle mouse copies the highlighted region to the cursor
  - meta shift middle mouse cuts the highlighted region and copies it
    to the cursor.
  This also works during non-completing minibuffer input. 
	  
* User level commands to describe, change and play around with mode 
  motion handlers:
	  M-x list-mode-motion-handlers	
	  M-x set-mode-motion-handler
	  M-x try-mode-motion-handlers (still bogus)


Installation
============

mode-motion+  is distributed as a uuencoded and compressed tar file,

		mode-motion+.tar.Z.uu

Uudecode, uncompress and extract the files from the tar. 
The contents of the tar file is: 

mode-motion+/README
mode-motion+/mode-motion+.el
mode-motion+/mode-motion+.elc
mode-motion+/mode-motion-handlers.el
mode-motion+/mode-motion-handlers.elc
mode-motion+/thing.el
mode-motion+/thing.elc
mode-motion+/x-mouse-patch.el
mode-motion+/x-mouse-patch.elc

Put the mode-motion+ directory in the lisp directory of Lucid Emacs, or
put the .el and .elc files in an other, already existing directory at
the same place.

Put the following line in your .emacs or in default.el and save it:

		(require 'mode-motion+)	

Evaluate the above expression (put the cursor behind the closing paren
and type C-x C-e) or restart Lucid GNU Emacs. 

Now symbols and parenthesed expressions should be highlighted when the
mouse moves over. If nothing obvious happens, then you probably use
a bold font as default. In this case, type

	M-x set-mode-motion-handler mouse-track-highlight-thing

to obtain a more visible default highlight behavior. You might want to replace
permanently the `mouse-track-highlight-thing-bold' handlers by
`mouse-track-highlight-thing'. This can be done in the file
"mode-motion+.el" by changing the line

(setq-default mode-motion-hook 'mouse-track-highlight-thing-bold)

into

(setq-default mode-motion-hook 'mouse-track-highlight-thing)


See the file "mode-motion+.el" for examples how to custommize
modes.


Type `M-x set-mode-motion-handler' to change locally the motion
behavior in the current buffer.

Type `M-x list-mode-motion-handlers' to display a list of all
available mode motion handlers.

Type `M-x try-mode-motion-handlers' to get a quick demo that
circulates through all mode motion handlers (this function is still
rather bogus). 


Known bugs/To do list
=====================

* Highlighting the line the mouse is behind.

* Highlight completion doesn't work with the find-file-commands of
  ange-ftp.  (possible fix: if ange-ftp is loaded, don't call
  `try-completion' to validate the file name for real ftp file names).

* Highlight completion still doesn't recognize items that contain
  blanks (buffer names. Generally, not all completable symbols can be
  recognized, because the (purely syntactic) matching of highlight
  item candidates is not smart enough to cover all cases. Information
  from the completion table should be used directly, but this seems to
  be to expensive for a mode motion handler. 

* The function `try-mode-motion-handlers' seems to damage
  `mode-motion-extent' when switching between the handlers.



Send comments, remarks, bug fixes etc. to Guido Bosch <bosch@loria.fr>.

From help-lucid-emacs-request@lucid.com  Mon Oct 19 07:39:16 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA10912; Mon, 19 Oct 92 07:39:16 PDT
Received: by heavens-gate.lucid.com id AA14334g; Mon, 19 Oct 92 07:36:28 PDT
Received: from uu3.psi.com by heavens-gate.lucid.com id AA14326g; Mon, 19 Oct 92 07:36:11 PDT
Received: by uu3.psi.com (5.65b/4.0.071791-PSI/PSINet)
	id AA14415; Mon, 19 Oct 92 10:37:31 -0400
Received: from zoo.master (zoo.ARPA) by redacam.redac.com (4.1/3.2.083191-Racal-Redac Inc.)
	id AA00928; Mon, 19 Oct 92 10:35:23 EDT
Received: by zoo.master (4.1/SMI-4.1)
	id AA05258; Mon, 19 Oct 92 10:35:47 EDT
Date: Mon, 19 Oct 92 10:35:47 EDT
From: leon@redacam.redac.com (Leon Gordon)
Message-Id: <9210191435.AA05258@zoo.master>
To: help-lucid-emacs@lucid.com
Subject: problem with subprocesses


hi -

	We have been running lucid 19.3 for a little while now, and we 
	really like it, however we are having a real problem with 
	asynchronous subprocesses.  In particular:
	
		1) when running subprocess like shell, compile, etc., text sent to 
		   the subprocess is echoed and text coming back has gratuitous
		   ^M's in it.  I can fix this on a case by case basis by writing
		   filters for the elisp, but I would prefer to find a global
		   fix.
		   
		2) the gnuserv package also has the ^M problem, but it seems to 
		   have some additional problems as well - the server crashes
		   after the first task it completes!  Filtering ^M's
		   doesn't solve the problem

	Neither of these problems occurs with raw gnu emacs or with epoch; I 
	assume they are related to the new input model that lucid uses. We are 
	running sunos 4.1.1.
	
	I would really appreciate any suggestions on this - I'd hate to go 
	back to epoch :-( 
	
			thanks,
			
					leon

=============================================================================	
Leon Gordon, Princ. Engr.   |  Internet:  leon@redacam.redac.com
Racal-Redac                 | 
1000 Wyckoff Ave.           |  VOICE:  201-848-8000   ext. 322
Mahwah, New Jersey 07430    |  FAX:  201-848-8189
	

From help-lucid-emacs-request@lucid.com  Mon Oct 19 07:41:55 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA10930; Mon, 19 Oct 92 07:41:55 PDT
Received: by heavens-gate.lucid.com id AA14343g; Mon, 19 Oct 92 07:39:25 PDT
Received: from moebius.loria.fr by heavens-gate.lucid.com id AA14335g; Mon, 19 Oct 92 07:37:44 PDT
Received: by moebius.loria.fr id AA00547
  (5.65c+/IDA-1.4.3 for help-lucid-emacs@lucid.com); Mon, 19 Oct 92 15:35:48 +0100
Date: Mon, 19 Oct 92 15:35:48 +0100
From: Guido Bosch <Guido.Bosch%loria.fr@lucid.com>
Message-Id: <9210191435.AA00547@moebius.loria.fr>
To: help-lucid-emacs@lucid.com
Subject: mode-motion+
Reply-To: Guido BOSCH <bosch%loria.fr@lucid.com>

----------------------- mode-motion+.tar.Z.uu -----------------------
begin 644 mode-motion+.tar.Z
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
EJB[$-\7U9JQ^Q,_J\O02/VR79=I[2J_2K_0L?4OOTK_T,#W0"L:C
 
end
	

From help-lucid-emacs-request@lucid.com  Mon Oct 19 11:37:14 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA11745; Mon, 19 Oct 92 11:37:14 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA14943g; Mon, 19 Oct 92 11:34:40 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA23176; Mon, 19 Oct 92 14:36:05 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA23172; Mon, 19 Oct 92 14:35:59 -0400
Path: uunet!mcsun!uknet!axion!gssec.bt.co.uk!russell
From: russell@gssec.bt.co.uk (Russell Ritchie)
Newsgroups: alt.lucid-emacs.help
Subject: Dired hacks for 19.3 Lucid Emacs
Message-Id: <RUSSELL.92Oct19113227@glencoe.gssec.bt.co.uk>
Date: 19 Oct 92 10:32:27 GMT
References: <742V02FN26nn01@JUTS.ccc.amdahl.com>
	<GRUNWALD.92Oct17094640@foobar.cs.colorado.edu>
Organization: BT Glasgow Systems and Software Engineering Centre, Scotland.
Lines: 11
In-Reply-To: grunwald@foobar.cs.colorado.edu's message of 17 Oct 92
Xref: uunet alt.lucid-emacs.help:583
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <GRUNWALD.92Oct17094640@foobar.cs.colorado.edu> 
grunwald@foobar.cs.colorado.edu (Dirk Grunwald) writes:

> I use this.
> ;;; Denis GIROU - 30 Jul. 1992
> ;;; From an idea of Russell Ritchie, Scottish HCI Centre,
> ;;;      <russell@uk.ac.strath.hci> (July 88) 

It's nice to see I've been remembered...  I have a `dired-lucid.el' that
does this sort of thing (and a little more :-).  It's just about ready to
go, I'd be interested in beta-testers before scaring the world though...

From help-lucid-emacs-request@lucid.com  Mon Oct 19 14:49:50 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA12423; Mon, 19 Oct 92 14:49:50 PDT
Received: by heavens-gate.lucid.com id AA15532g; Mon, 19 Oct 92 14:47:15 PDT
Received: from uu2.psi.com by heavens-gate.lucid.com id AA15528g; Mon, 19 Oct 92 14:46:48 PDT
Received: from rutherford.stsi.com by uu2.psi.com (5.65b/4.0.071791-PSI/PSINet)
	id AA09661; Mon, 19 Oct 92 17:48:08 -0400
Received: from sbi.sbi.com by internet.sbi.com (4.1/SMI-4.1)
	id AA17026; Mon, 19 Oct 92 17:48:04 EDT
Received: from quark.sbi.com by sbi.sbi.com (4.1/SMI-4.1)
	id AA15557; Mon, 19 Oct 92 17:48:04 EDT
Received: from silver.elements_CO by quark.sbi.com (4.1/SMI-4.1)
	id AA24310; Mon, 19 Oct 92 17:46:54 EDT
Date: Mon, 19 Oct 92 17:46:54 EDT
From: rwk@quark.sbi.com (Richard W. Kreutzer Consultant)
Message-Id: <9210192146.AA24310@quark.sbi.com>
Received: by silver.elements_CO (4.1/SMI-4.1)
	id AA06089; Mon, 19 Oct 92 17:48:02 EDT
To: help-lucid-emacs@lucid.com
Subject: undo

Can someone please tell me how to bind C-DEL to undo in my .emacs file?

	(global-set-key "\C-DEL" 'undo)

does not work.

Thanks,

Dick

From help-lucid-emacs-request@lucid.com  Tue Oct 20 01:34:40 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA13730; Tue, 20 Oct 92 01:34:40 PDT
Received: by heavens-gate.lucid.com id AA16657g; Tue, 20 Oct 92 01:31:29 PDT
Received: from moebius.loria.fr by heavens-gate.lucid.com id AA16653g; Tue, 20 Oct 92 01:31:16 PDT
Received: by moebius.loria.fr id AA01361
  (5.65c+/IDA-1.4.3 for help-lucid-emacs@lucid.com); Tue, 20 Oct 92 09:32:16 +0100
Date: Tue, 20 Oct 92 09:32:16 +0100
From: Guido Bosch <Guido.Bosch%loria.fr@lucid.com>
Message-Id: <9210200832.AA01361@moebius.loria.fr>
To: Tony.Bennett@East.Sun.COM (Tony E. Bennett)
Cc: help-lucid-emacs@lucid.com
Subject: Re: mode-motion+ problem switching cursors
In-Reply-To: <9210191826.AA27769@sunpix.East.Sun.COM>
References: <9210191826.AA27769@sunpix.East.Sun.COM>
Reply-To: Guido BOSCH <bosch%loria.fr@lucid.com>

Tony E. Bennett writes:
 > When using this, the pointer glyph changes in a very
 > annoying way, as it moves.
 > 
 > For example, if I put pointer on word 'pointer' here, it
 > will be bold'd. When I move pointer horizontally toward
 > the next word, the pointer glyph changes to another
 > character when it hits the whitespace. 

Changing pointer glyph when over a highlighted text zone is an
intended behavior of mode-motion+. You might have noticed that even
buffer permanent highlight extents (e.g., the hotbuttons in info or
webster mode) behave the same when mode-motion+ is loaded.

The idea behind is that whenever the cursor has its "selection shape",
you can do sth. with the selected region, just by clicking with some
mouse button. mode-motion+ provides two additional mouse button
bindigs for this: 

	meta middle mouse -> copy region to point
	shift meta middle mouse -> move region to point

This is one of the most powerful features of mode-motion+. Changing
the cursor glyph to the usual thin text cursor when pointing at
whitespaces just means: there is nothing to select.

If this behavior is too anoying for you in most of the modes, change
the following line in mode-motion+.el (this removes the default motion
handler):

(setq-default mode-motion-hook nil)

 > It also seems to change as I move it across a word, but the change
 > is so quickly restored, it is barely noticeable.

This could possibly be avoided. I will have a look at it. 


	Guido


From help-lucid-emacs-request@lucid.com  Tue Oct 20 10:56:20 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA15664; Tue, 20 Oct 92 10:56:20 PDT
Received: by heavens-gate.lucid.com id AA00697g; Tue, 20 Oct 92 10:52:03 PDT
Received: from windrider.llnl.gov by heavens-gate.lucid.com id AA00693g; Tue, 20 Oct 92 10:51:55 PDT
Received: by windrider.llnl.gov (4.1/LLNL-1.18)
	id AA13533; Tue, 20 Oct 92 10:54:49 PDT
Date: Tue, 20 Oct 92 10:54:49 PDT
From: jeh@windrider.llnl.gov (Jose E. Hernandez)
Message-Id: <9210201754.AA13533@windrider.llnl.gov>
To: help-lucid-emacs@lucid.com



Hi I just transfered the emacs stuff (version 19.3) and everything works fine
except for some definitions of the following form,

(define-key mouse-map x-button-c-left-up 'my-eval-defun)

This works fine under version 18.55.  How do I do this with your version.


thank you!

Jose E. Hernandez
Lawrence Livermore National Laboratory
L-156  POBox 808 Livermore, CA 94550
Email: jeh@llnl.gov
Phone: (510) 423-2160
Fax: (510) 422-3013

From help-lucid-emacs-request@lucid.com  Tue Oct 20 12:52:41 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA16114; Tue, 20 Oct 92 12:52:41 PDT
Received: by heavens-gate.lucid.com id AA01373g; Tue, 20 Oct 92 12:50:01 PDT
Received: from moebius.loria.fr by heavens-gate.lucid.com id AA01361g; Tue, 20 Oct 92 12:49:02 PDT
Received: by moebius.loria.fr id AA02588
  (5.65c+/IDA-1.4.3 for help-lucid-emacs@lucid.com); Tue, 20 Oct 92 20:50:31 +0100
Date: Tue, 20 Oct 92 20:50:31 +0100
From: Guido Bosch <Guido.Bosch%loria.fr@lucid.com>
Message-Id: <9210201950.AA02588@moebius.loria.fr>
To: help-lucid-emacs@lucid.com
Subject: Automatic generation of mode specific menus
Reply-To: Guido BOSCH <bosch%loria.fr@lucid.com>


Here is a package that creates automatically mode specific menus. It
is also useful for creating own, hand-written ones

This hopfully will fill a lot of gaps left on button3 in local
keymaps.

Enjoy

	Guido

---------------------------- mode-menu.el ----------------------------
;;   -*- Mode: emacs-lisp; Mode: Font-lock -*-
;; 
;; Automatic generation of mode specific popup menus
;; 
;; Copyright (C) 1992 Guido Bosch <Guido.Bosch@loria.fr>

;; This file is written in GNU Emacs Lisp, but not (yet) part of GNU Emacs.

;; The software contained in this file is free software; you can
;; redistribute it and/or modify it under the terms of the GNU General
;; Public License as published by the Free Software Foundation; either
;; version 2, or (at your option) any later version.

;; GNU Emacs is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
;; GNU General Public License for more details.

;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING.  If not, write to
;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
;; 
;; Please send bugs and comments to the above address
;;
;; <DISCLAIMER>
;; This program is still under development.  Neither the author nor
;; CRIN-INRIA accepts responsibility to anyone for the consequences of
;; using it or for whether it serves any particular purpose or works
;; at all.


; Change History
; 
; $Log: mode-menu.el,v $
; Revision 1.1  1992/10/20  19:45:50  bosch
; Automatic generation of mode specific popup menus.
; For Lucid Emacs version 19.3 (or later).
;
;

;; INTRODUCTION:
;; -------------
;; This package adds mode specific generic popup menus to Lucid GNU
;; Emacs. It binds, in the global map, button3 to the function
;; `mode-menu', which first looks in a mode alist for a popup menu to
;; expose. If there isn't one, it is computed, using information from
;; the current local keymap, and stored in the alist, which thus
;; serves as a cash memory for the next call to mode-menu.
;;
;; Each newly created menu is automatically added in front of the
;; buffer local menubar. All local menubars share the default-menubar
;; structure in their tail, such that adding a menu at a later
;; position will make it visible in all modes.
;;
;; Hand-written mode specific menus, that usually are on button3 of
;; the corresponding local keymap will override the generic
;; `mode-menu'.
;;
;; The automatic computation of menus yields good results for small
;; and middle keymaps, but those of big modes (such as TeX, dired,
;; gnus, vm etc) produce large and unwieldy menus. In this case, the
;; only solution is re-writing a menu by hand. Mode-menu, however,
;; provides a help to do so: The command
;; 
;; 		M-x mode-menu-elisp-code
;; 
;; will prompt for a valid keymap and insert, in a new buffer, the
;; complete Emacs Lisp definition of the generic menu, together with
;; the activating mouse command and its local binding in the
;; corresponding keymap.  You then have to edit the definition and to
;; make it availabe when the mode is autoloaded (mode hooks are very
;; good for that)


;; INSTALLATION:
;; ------------
;; To install, just load it with
;; (require 'mode-menu)
;;
;; It also can be made autoloadable with
;; (autoload 'mode-menu "mode-menu" nil t)
;; (autoload 'mode-menu-elisp-code "mode-menu" nil t)
;; (global-set-key 'button3 'mode-menu)
;;

;; TO DO LIST:
;; -----------
;;
;; o Recognize unnamed functions and keyboard macros in keymaps 
;;   
;; o Eliminate dublicated entries of commands that have more than one 
;;   key binding in the same map
;;
;; o Cut down too large sub-menus by reorganizing recursively.
;;
;; o Try to cut more equally large menus during splitting. 

(require 'cl)
(provide 'mode-menu)


;;; User options
(defvar mode-menu-min-items-per-submenu 7
  "*The minimal number of entries that must be in a prefix-keymap to be 
put in a own submenu. Smaller keymaps are merged into the parent menu.")

(defvar mode-menu-max-size 25
  "*Maximal number of items allowed in one button menu.
If A keymap is longer, a continuation subtable is created at the end.")


;; Variables
(defvar  mode-menu-dont-show-in-menu 
  '(self-insert-command
    picture-self-insert
    digit-argument
    negative-argument
    undefined
    sendmail-self-insert-command)
  "Functions that are not listed in the menu, even if there is 
a keymap entry for.")

(defvar mode-menu-alist nil
  ;; Yes Jamie, again an alist. Do you always know a way how to
  ;; replace it by buffer local variables? (8-)
  "List with entries of the form \(<major-mode> . <generic mode menu>\)")



;; User interface
(global-set-key 'button3 'mode-menu)

(defun mode-menu (event)
  "Popup the generic mode menu. If it doesn't exist yet,  creat id."
  (interactive "@e")

  (let ((entry (assq major-mode mode-menu-alist))
	menu)

    (if entry
	(setq menu (cdr entry))
      (or (current-local-map) (error "No current local map."))
      (message "Creating generic mode menu for %s" major-mode)
      (push
       (cons major-mode
	     (setq menu
		   (mode-menu-from-keymap
		    (current-local-map)
		    (mode-menu-title major-mode))))
       mode-menu-alist)

      ;; all buffer local menubars will share the *same* default
      ;; menubar structure. 
      (set-buffer-menubar (cons menu default-menubar)))
    (popup-menu menu)
    (message "")))


(defun mode-menu-title (symbol)
  "Make a (hopefully) short string from SYMBOL (the mjor mode, usually)."
  (let* ((name (capitalize (symbol-name symbol))))

    (if (string-match "-mode" name)
	(setq name
	      (concat (substring name 0 (match-beginning 0))
		      (substring name (match-end 0)))))
    name))

;;(mode-menu-title major-mode)

(defun mode-menu-elisp-code (mode-map)
  "Ask for a keymap or a variable with a keymap as value,
transform it into a popup menu and insert it properly indented
into the current buffer at point."
  (interactive
   (list (intern-soft
	  (completing-read
	   "Mode map: "
	   obarray
	   '(lambda (x)
	      (or (keymapp x)
		  (and (boundp x)
		       (keymapp (symbol-value x)))))
	   t nil))))

  (let* ((mode-map-name (symbol-name mode-map))
	 (buffer (get-buffer-create (concat mode-map-name "-menu.el")))
	 (menu-var (concat mode-map-name "-menu"))
	 (mode-name-guess
	  (if (string-match "-" mode-map-name)
	      (capitalize (substring mode-map-name 0 (match-beginning 0)))
	    "<Mode>")))

    (pop-to-buffer buffer)
    (erase-buffer)
    (emacs-lisp-mode)
    (insert ";; -*- Mode: Emacs-Lisp -*-\n")
    (insert
     (format
      ";;\n;; Automatically generated mode menu for `%s'.\n;;\n"
      mode-map))
    (insert (format "\n(defvar %s\n  '" menu-var))
    (mode-menu-pp
     (mode-menu-from-keymap mode-map mode-name-guess))
    (insert (format ")\n\n\(defun %s \(e\)
  \(interactive \"@e\"\)
  \(popup-menu %s\)\)\n\n
\(define-key %s 'button3 '%s\)\n\n"
		    menu-var menu-var  mode-map-name menu-var))))


;; internal functions
(defun mode-menu-pp (menu &optional buffer)
  "Pretty print MENU in BUFFER \(default: current buffer\)."

  (or buffer (setq buffer (current-buffer)))
  (princ "(" buffer)
  (dolist (entry menu)
    (if (consp entry)
	(mode-menu-pp entry buffer)
      (prin1 entry buffer)
      (newline-and-indent)))
  (princ ")" buffer))


(defun mode-menu-from-keymap (mode-map title)
  "Create a popup menu with the command entries of MODE-MAP and title
TITLE.  If a sub-keymap containes more than
`mode-menu-min-items-per-submenu' entries, put them into a proper
submenu. If the main menu containes more than `mode-menu-max-size' items, 
put the rest in one (ore more) continuing submenus."

  (cons title
   (mode-menu-cut-long-table
    (mode-menu-reorganize-table
     (mode-menu-keymap-to-menu mode-map)))))


(defsubst item-label (item)
  (aref item 0))

(defsubst item-entry (item)
  (aref item 1))

(defun mode-menu-reorganize-table (table)
  "Reorganizes TABLE in the following way: All submenus with 
fewer than  `mode-menu-min-items-per-submenu' entries are 
merged into the surrounding table."

  (do* ((rest table (rest rest))
        (entry (first rest) (first rest)))
      ((null rest))
    (when (consp  entry);; table
      (setf (rest entry) (mode-menu-reorganize-table  (rest entry)))

      ;; reorganize sub-table recursively
      (if (< (length (rest entry)) mode-menu-min-items-per-submenu)
          (let ((rest-rest (rest rest))
                (submenu (rest entry)))
	    (if (= 1 (length submenu))
		(setf (first rest) (first submenu))
	      (setf (first rest) (first submenu))
	      (setf (rest rest) (rest submenu))
	      (setf (rest (last submenu)) rest-rest))
	    ))))

   (sort table 'mode-menu-entry-lesser))


(defun mode-menu-cut-long-table (table)
  "Shortens a a menu with more then `mode-menu-max-size' items
by creating one or more \"More ... \" submenus."
  (let ((count 1)
	(rest table))
    (while (and rest (< count mode-menu-max-size))
      (setq count (1+ count)
	    rest (cdr rest)))
    (if rest
	(let ((continue (cons (car rest) (cdr rest))))
	  (rplacd rest nil)
	  (rplaca rest (cons "More"
			     (mode-menu-cut-long-table continue))))))
  table)

(defun mode-menu-entry-lesser (e1 e2)
  "Predicate that compares two menu entries E1 and E2 for beeing lesser: 
If E1 and E2 are both flat entries or subtables, apply `string-lessp' 
to the  entry labls. If one of them is a flat entry and the other 
a subtable, the  flat entry is smaller."

  (if (consp e1) 
      (if (consp e2) ; e1 & e2 subtables
	  (string-lessp (first e1) (first e2)) ;compare their titles
	'nil) 
    (if (consp e2) 
	't ; e1 not sub but e2
  (string-lessp (item-label e1) (item-label e2)))))

;; (mode-menu-show-keymap (current-local-map) "Current local map")

(defun mode-menu-keymap-to-menu (keymap &optional prefix-string)
  (let (table)
    (delq
     'nil
     (cond ((keymapp keymap)
	    (map-keymap
	     '(lambda (key-description binding)
		(push (mode-menu-make-entry
		       key-description binding prefix-string)
		      table))
	     keymap)
	    table)

	   ((and (not (null keymap))(symbolp keymap) (boundp keymap))
	    (mode-menu-keymap-to-menu (symbol-value keymap)))

	   (t
	    (error "Not a keymap: %s" keymap))))))


;; (mode-menu-keymap-to-menu emacs-lisp-mode-map)


(defun mode-menu-make-entry (index entry prefix-string)
  "Return a list that serves as entry in a menu description table. 
Arguments are: 
 INDEX		- the character position in the surrounding keymap
 ENTRY		- the keymap entry at that place
 PREFIX-STRING	- string indicating the prefix characters of that entry"

  (cond
   ((null entry) nil)
   
   ((symbolp entry)
    (cond

     ;; don't put undesired commands in the menu
     ((memq entry mode-menu-dont-show-in-menu) nil)

     ;; 
     ((fboundp entry)

      (if (keymapp (symbol-function entry))
	  ;; keymap entry 
	  (let ((intermediate-table
		 (mode-menu-keymap-to-menu
		  (symbol-function entry)
		  (concat prefix-string
			  (single-key-description index) " "))))
	    (if intermediate-table	; allows only entries
		(cons			; for which there is a defined table.
		 (concat
		  prefix-string (single-key-description index) " Prefix")
		 intermediate-table)))

	;; command entry
	(vector (mode-menu-make-command-name-string (symbol-name entry))
		entry
		't)))

     ((boundp entry);; prefix keymap
      (error "keymap entry is a variable")
      (let ((intermediate-table
	     (mode-menu-keymap-to-menu
	      (symbol-value entry)
	      (concat (single-key-description index))))
	    )
	(if intermediate-table		; allows only entries
	    (list
	     (concat 
	      (single-key-description index) " Prefix Keymap")
	     intermediate-table))))

     (t
      (vector (concat "Bogus entry: " (symbol-name entry)) entry 't))))

   ((stringp entry);; Keybord Macro
    nil)
					;    (list "Keybord Macro"
					;          (concat prefix-string (single-key-description index))
					;          entry))


   ((keymapp entry)
    (let ((intermediate-table
	   (mode-menu-keymap-to-menu
	    entry 
	    (concat prefix-string 
		    (single-key-description index) " "))))

      (if intermediate-table		; allows only entries
	  (cons				; for which there is a defined table.
	   (concat
	    prefix-string (single-key-description index) " Prefix")
	   intermediate-table))))

   ((and (listp entry) (eq 'lambda (car entry)));; (lambda (...) ...)
    nil)
					;    ;; (functionp entry)
					;    (list "Unnamed Function"
					;          (concat prefix-string (single-key-description index))
					;          entry))
	
   (t (error "unknown keymap entry: %s" entry))))


(defun mode-menu-make-command-name-string (string)
  ;; in order to not change the real symbol names 
  (setq string (copy-sequence string))

  (dotimes (i (length string))
    (if (memq  (aref string i) '(?- ?: ?-))
	(setf (aref string i) ? )))
    (capitalize string))








From help-lucid-emacs-request@lucid.com  Tue Oct 20 13:26:43 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA16223; Tue, 20 Oct 92 13:26:43 PDT
Received: by heavens-gate.lucid.com id AA01373g; Tue, 20 Oct 92 12:50:01 PDT
Site: 
Received: from moebius.loria.fr by heavens-gate.lucid.com id AA01361g; Tue, 20 Oct 92 12:49:02 PDT
Received: by moebius.loria.fr id AA02588
  (5.65c+/IDA-1.4.3 for help-lucid-emacs@lucid.com); Tue, 20 Oct 92 20:50:31 +0100
Date: Tue, 20 Oct 92 20:50:31 +0100
From: Guido Bosch <Guido.Bosch%loria.fr@lucid.com>
Message-Id: <9210201950.AA02588@moebius.loria.fr>
To: help-lucid-emacs@lucid.com
Subject: Automatic generation of mode specific menus
Reply-To: Guido BOSCH <bosch%loria.fr@lucid.com>


Here is a package that creates automatically mode specific menus. It
is also useful for creating own, hand-written ones

This hopfully will fill a lot of gaps left on button3 in local
keymaps.

Enjoy

	Guido

---------------------------- mode-menu.el ----------------------------
;;   -*- Mode: emacs-lisp; Mode: Font-lock -*-
;; 
;; Automatic generation of mode specific popup menus
;; 
;; Copyright (C) 1992 Guido Bosch <Guido.Bosch@loria.fr>

;; This file is written in GNU Emacs Lisp, but not (yet) part of GNU Emacs.

;; The software contained in this file is free software; you can
;; redistribute it and/or modify it under the terms of the GNU General
;; Public License as published by the Free Software Foundation; either
;; version 2, or (at your option) any later version.

;; GNU Emacs is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
;; GNU General Public License for more details.

;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING.  If not, write to
;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
;; 
;; Please send bugs and comments to the above address
;;
;; <DISCLAIMER>
;; This program is still under development.  Neither the author nor
;; CRIN-INRIA accepts responsibility to anyone for the consequences of
;; using it or for whether it serves any particular purpose or works
;; at all.


; Change History
; 
; $Log: mode-menu.el,v $
; Revision 1.1  1992/10/20  19:45:50  bosch
; Automatic generation of mode specific popup menus.
; For Lucid Emacs version 19.3 (or later).
;
;

;; INTRODUCTION:
;; -------------
;; This package adds mode specific generic popup menus to Lucid GNU
;; Emacs. It binds, in the global map, button3 to the function
;; `mode-menu', which first looks in a mode alist for a popup menu to
;; expose. If there isn't one, it is computed, using information from
;; the current local keymap, and stored in the alist, which thus
;; serves as a cash memory for the next call to mode-menu.
;;
;; Each newly created menu is automatically added in front of the
;; buffer local menubar. All local menubars share the default-menubar
;; structure in their tail, such that adding a menu at a later
;; position will make it visible in all modes.
;;
;; Hand-written mode specific menus, that usually are on button3 of
;; the corresponding local keymap will override the generic
;; `mode-menu'.
;;
;; The automatic computation of menus yields good results for small
;; and middle keymaps, but those of big modes (such as TeX, dired,
;; gnus, vm etc) produce large and unwieldy menus. In this case, the
;; only solution is re-writing a menu by hand. Mode-menu, however,
;; provides a help to do so: The command
;; 
;; 		M-x mode-menu-elisp-code
;; 
;; will prompt for a valid keymap and insert, in a new buffer, the
;; complete Emacs Lisp definition of the generic menu, together with
;; the activating mouse command and its local binding in the
;; corresponding keymap.  You then have to edit the definition and to
;; make it availabe when the mode is autoloaded (mode hooks are very
;; good for that)


;; INSTALLATION:
;; ------------
;; To install, just load it with
;; (require 'mode-menu)
;;
;; It also can be made autoloadable with
;; (autoload 'mode-menu "mode-menu" nil t)
;; (autoload 'mode-menu-elisp-code "mode-menu" nil t)
;; (global-set-key 'button3 'mode-menu)
;;

;; TO DO LIST:
;; -----------
;;
;; o Recognize unnamed functions and keyboard macros in keymaps 
;;   
;; o Eliminate dublicated entries of commands that have more than one 
;;   key binding in the same map
;;
;; o Cut down too large sub-menus by reorganizing recursively.
;;
;; o Try to cut more equally large menus during splitting. 

(require 'cl)
(provide 'mode-menu)


;;; User options
(defvar mode-menu-min-items-per-submenu 7
  "*The minimal number of entries that must be in a prefix-keymap to be 
put in a own submenu. Smaller keymaps are merged into the parent menu.")

(defvar mode-menu-max-size 25
  "*Maximal number of items allowed in one button menu.
If A keymap is longer, a continuation subtable is created at the end.")


;; Variables
(defvar  mode-menu-dont-show-in-menu 
  '(self-insert-command
    picture-self-insert
    digit-argument
    negative-argument
    undefined
    sendmail-self-insert-command)
  "Functions that are not listed in the menu, even if there is 
a keymap entry for.")

(defvar mode-menu-alist nil
  ;; Yes Jamie, again an alist. Do you always know a way how to
  ;; replace it by buffer local variables? (8-)
  "List with entries of the form \(<major-mode> . <generic mode menu>\)")



;; User interface
(global-set-key 'button3 'mode-menu)

(defun mode-menu (event)
  "Popup the generic mode menu. If it doesn't exist yet,  creat id."
  (interactive "@e")

  (let ((entry (assq major-mode mode-menu-alist))
	menu)

    (if entry
	(setq menu (cdr entry))
      (or (current-local-map) (error "No current local map."))
      (message "Creating generic mode menu for %s" major-mode)
      (push
       (cons major-mode
	     (setq menu
		   (mode-menu-from-keymap
		    (current-local-map)
		    (mode-menu-title major-mode))))
       mode-menu-alist)

      ;; all buffer local menubars will share the *same* default
      ;; menubar structure. 
      (set-buffer-menubar (cons menu default-menubar)))
    (popup-menu menu)
    (message "")))


(defun mode-menu-title (symbol)
  "Make a (hopefully) short string from SYMBOL (the mjor mode, usually)."
  (let* ((name (capitalize (symbol-name symbol))))

    (if (string-match "-mode" name)
	(setq name
	      (concat (substring name 0 (match-beginning 0))
		      (substring name (match-end 0)))))
    name))

;;(mode-menu-title major-mode)

(defun mode-menu-elisp-code (mode-map)
  "Ask for a keymap or a variable with a keymap as value,
transform it into a popup menu and insert it properly indented
into the current buffer at point."
  (interactive
   (list (intern-soft
	  (completing-read
	   "Mode map: "
	   obarray
	   '(lambda (x)
	      (or (keymapp x)
		  (and (boundp x)
		       (keymapp (symbol-value x)))))
	   t nil))))

  (let* ((mode-map-name (symbol-name mode-map))
	 (buffer (get-buffer-create (concat mode-map-name "-menu.el")))
	 (menu-var (concat mode-map-name "-menu"))
	 (mode-name-guess
	  (if (string-match "-" mode-map-name)
	      (capitalize (substring mode-map-name 0 (match-beginning 0)))
	    "<Mode>")))

    (pop-to-buffer buffer)
    (erase-buffer)
    (emacs-lisp-mode)
    (insert ";; -*- Mode: Emacs-Lisp -*-\n")
    (insert
     (format
      ";;\n;; Automatically generated mode menu for `%s'.\n;;\n"
      mode-map))
    (insert (format "\n(defvar %s\n  '" menu-var))
    (mode-menu-pp
     (mode-menu-from-keymap mode-map mode-name-guess))
    (insert (format ")\n\n\(defun %s \(e\)
  \(interactive \"@e\"\)
  \(popup-menu %s\)\)\n\n
\(define-key %s 'button3 '%s\)\n\n"
		    menu-var menu-var  mode-map-name menu-var))))


;; internal functions
(defun mode-menu-pp (menu &optional buffer)
  "Pretty print MENU in BUFFER \(default: current buffer\)."

  (or buffer (setq buffer (current-buffer)))
  (princ "(" buffer)
  (dolist (entry menu)
    (if (consp entry)
	(mode-menu-pp entry buffer)
      (prin1 entry buffer)
      (newline-and-indent)))
  (princ ")" buffer))


(defun mode-menu-from-keymap (mode-map title)
  "Create a popup menu with the command entries of MODE-MAP and title
TITLE.  If a sub-keymap containes more than
`mode-menu-min-items-per-submenu' entries, put them into a proper
submenu. If the main menu containes more than `mode-menu-max-size' items, 
put the rest in one (ore more) continuing submenus."

  (cons title
   (mode-menu-cut-long-table
    (mode-menu-reorganize-table
     (mode-menu-keymap-to-menu mode-map)))))


(defsubst item-label (item)
  (aref item 0))

(defsubst item-entry (item)
  (aref item 1))

(defun mode-menu-reorganize-table (table)
  "Reorganizes TABLE in the following way: All submenus with 
fewer than  `mode-menu-min-items-per-submenu' entries are 
merged into the surrounding table."

  (do* ((rest table (rest rest))
        (entry (first rest) (first rest)))
      ((null rest))
    (when (consp  entry);; table
      (setf (rest entry) (mode-menu-reorganize-table  (rest entry)))

      ;; reorganize sub-table recursively
      (if (< (length (rest entry)) mode-menu-min-items-per-submenu)
          (let ((rest-rest (rest rest))
                (submenu (rest entry)))
	    (if (= 1 (length submenu))
		(setf (first rest) (first submenu))
	      (setf (first rest) (first submenu))
	      (setf (rest rest) (rest submenu))
	      (setf (rest (last submenu)) rest-rest))
	    ))))

   (sort table 'mode-menu-entry-lesser))


(defun mode-menu-cut-long-table (table)
  "Shortens a a menu with more then `mode-menu-max-size' items
by creating one or more \"More ... \" submenus."
  (let ((count 1)
	(rest table))
    (while (and rest (< count mode-menu-max-size))
      (setq count (1+ count)
	    rest (cdr rest)))
    (if rest
	(let ((continue (cons (car rest) (cdr rest))))
	  (rplacd rest nil)
	  (rplaca rest (cons "More"
			     (mode-menu-cut-long-table continue))))))
  table)

(defun mode-menu-entry-lesser (e1 e2)
  "Predicate that compares two menu entries E1 and E2 for beeing lesser: 
If E1 and E2 are both flat entries or subtables, apply `string-lessp' 
to the  entry labls. If one of them is a flat entry and the other 
a subtable, the  flat entry is smaller."

  (if (consp e1) 
      (if (consp e2) ; e1 & e2 subtables
	  (string-lessp (first e1) (first e2)) ;compare their titles
	'nil) 
    (if (consp e2) 
	't ; e1 not sub but e2
  (string-lessp (item-label e1) (item-label e2)))))

;; (mode-menu-show-keymap (current-local-map) "Current local map")

(defun mode-menu-keymap-to-menu (keymap &optional prefix-string)
  (let (table)
    (delq
     'nil
     (cond ((keymapp keymap)
	    (map-keymap
	     '(lambda (key-description binding)
		(push (mode-menu-make-entry
		       key-description binding prefix-string)
		      table))
	     keymap)
	    table)

	   ((and (not (null keymap))(symbolp keymap) (boundp keymap))
	    (mode-menu-keymap-to-menu (symbol-value keymap)))

	   (t
	    (error "Not a keymap: %s" keymap))))))


;; (mode-menu-keymap-to-menu emacs-lisp-mode-map)


(defun mode-menu-make-entry (index entry prefix-string)
  "Return a list that serves as entry in a menu description table. 
Arguments are: 
 INDEX		- the character position in the surrounding keymap
 ENTRY		- the keymap entry at that place
 PREFIX-STRING	- string indicating the prefix characters of that entry"

  (cond
   ((null entry) nil)
   
   ((symbolp entry)
    (cond

     ;; don't put undesired commands in the menu
     ((memq entry mode-menu-dont-show-in-menu) nil)

     ;; 
     ((fboundp entry)

      (if (keymapp (symbol-function entry))
	  ;; keymap entry 
	  (let ((intermediate-table
		 (mode-menu-keymap-to-menu
		  (symbol-function entry)
		  (concat prefix-string
			  (single-key-description index) " "))))
	    (if intermediate-table	; allows only entries
		(cons			; for which there is a defined table.
		 (concat
		  prefix-string (single-key-description index) " Prefix")
		 intermediate-table)))

	;; command entry
	(vector (mode-menu-make-command-name-string (symbol-name entry))
		entry
		't)))

     ((boundp entry);; prefix keymap
      (error "keymap entry is a variable")
      (let ((intermediate-table
	     (mode-menu-keymap-to-menu
	      (symbol-value entry)
	      (concat (single-key-description index))))
	    )
	(if intermediate-table		; allows only entries
	    (list
	     (concat 
	      (single-key-description index) " Prefix Keymap")
	     intermediate-table))))

     (t
      (vector (concat "Bogus entry: " (symbol-name entry)) entry 't))))

   ((stringp entry);; Keybord Macro
    nil)
					;    (list "Keybord Macro"
					;          (concat prefix-string (single-key-description index))
					;          entry))


   ((keymapp entry)
    (let ((intermediate-table
	   (mode-menu-keymap-to-menu
	    entry 
	    (concat prefix-string 
		    (single-key-description index) " "))))

      (if intermediate-table		; allows only entries
	  (cons				; for which there is a defined table.
	   (concat
	    prefix-string (single-key-description index) " Prefix")
	   intermediate-table))))

   ((and (listp entry) (eq 'lambda (car entry)));; (lambda (...) ...)
    nil)
					;    ;; (functionp entry)
					;    (list "Unnamed Function"
					;          (concat prefix-string (single-key-description index))
					;          entry))
	
   (t (error "unknown keymap entry: %s" entry))))


(defun mode-menu-make-command-name-string (string)
  ;; in order to not change the real symbol names 
  (setq string (copy-sequence string))

  (dotimes (i (length string))
    (if (memq  (aref string i) '(?- ?: ?-))
	(setf (aref string i) ? )))
    (capitalize string))








From help-lucid-emacs-request@lucid.com  Tue Oct 20 13:57:32 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA16340; Tue, 20 Oct 92 13:57:32 PDT
Received: by heavens-gate.lucid.com id AA00377g; Tue, 20 Oct 92 13:55:15 PDT
Received: from moebius.loria.fr by heavens-gate.lucid.com id AA00373g; Tue, 20 Oct 92 13:53:17 PDT
Received: by moebius.loria.fr id AA02647
  (5.65c+/IDA-1.4.3 for help-lucid-emacs@lucid.com); Tue, 20 Oct 92 21:54:52 +0100
Date: Tue, 20 Oct 92 21:54:52 +0100
From: Guido Bosch <Guido.Bosch%loria.fr@lucid.com>
Message-Id: <9210202054.AA02647@moebius.loria.fr>
To: help-lucid-emacs@lucid.com
Subject: installing mode specific menubars 
Reply-To: Guido BOSCH <bosch%loria.fr@lucid.com>

I think it would be a good idea to install buffer local menubars in a
different way than it is done in gnus-lucid.el: (see the diff below)

Instead of making a copy of the default-menubar, the buffer specific
menu to be added should be pushed on it before `set-buffer-menubar'
makes it buffer local.

The effect is that the list structure of `default-menubar' can be
shared by many buffer local menubars, each of it just setting up its
own menu on top of it (see the mode-menu package I posted
before). This is not only more economic, but also allows further
modifications to be shared by buffer-local menubars (provided that
they have been done on the common structure part).

The only drawback I see is that buffer-local menu addings will
necessarily appear in front position, the sharable ones follow behind.

   Guido




***************
*** 231,242 ****
(defun gnus-install-menubar ()
    (if default-menubar
        (let ((menu (cond ((eq major-mode 'gnus-Group-mode) gnus-Group-menu)
  			((eq major-mode 'gnus-Subject-mode) gnus-Subject-menu)
 			(t (error "not GNUS Group or Subject mode")))))
! 	(set-buffer-menubar (copy-sequence default-menubar))
! 	(add-menu nil "GNUS" (cdr menu)))))
  

--- 231,243 ----
(defun gnus-install-menubar ()
    (if default-menubar
        (let ((menu (cond ((eq major-mode 'gnus-Group-mode) gnus-Group-menu)
  			((eq major-mode 'gnus-Subject-mode) gnus-Subject-menu)
 			((eq major-mode 'gnus-Article-mode) gnus-Article-menu)
 			(t (error "not GNUS Group or Subject mode"))))
! 	(set-buffer-menubar (cons (cons "GNUS" (cdr menu)) default-menubar)))))
  

From help-lucid-emacs-request@lucid.com  Wed Oct 21 03:40:32 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA18889; Wed, 21 Oct 92 03:40:32 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA02410g; Wed, 21 Oct 92 03:37:10 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA13227; Wed, 21 Oct 92 06:38:49 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA13223; Wed, 21 Oct 92 06:38:47 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!munnari.oz.au!metro!dmssyd.syd.dms.CSIRO.AU!crux.rp.CSIRO.AU!pjordan
From: pjordan%rp.CSIRO.AU@lucid.com (Patrick Jordan)
Subject: Wanted: lemacs for DECstation
Message-Id: <1992Oct21.021017.10379@rp.CSIRO.AU>
Nntp-Posting-Host: getafix
Organization: CSIRO Division of Radiophysics, NSW, Australia
Date: Wed, 21 Oct 1992 02:10:17 GMT
Lines: 22
Xref: uunet alt.lucid-emacs.help:589
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

Does anyone have a compiled version of lemacs for DECstations along the
lines of the compiled SPARC version. If so, could the make it available 
for ftp, or send it  to me.

Thanks.

-- 

Be seeing you!

Patrick.

------------------------------------------------------------------------------
Patrick Jordan                      |          _
CSIRO Division of Radiophysics      |        // \   I am not a number,
NSW, Australia                      |       /( 6 )  I am a free man.
pjordan@rp.csiro.au                 |      () \_/
------------------------------------------------------------------------------





From help-lucid-emacs-request@lucid.com  Wed Oct 21 03:52:58 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA18908; Wed, 21 Oct 92 03:52:58 PDT
Received: by heavens-gate.lucid.com id AA02429g; Wed, 21 Oct 92 03:49:50 PDT
Received: from moebius.loria.fr by heavens-gate.lucid.com id AA02419g; Wed, 21 Oct 92 03:47:35 PDT
Received: by moebius.loria.fr id AA03405
  (5.65c+/IDA-1.4.3 for help-lucid-emacs@lucid.com); Wed, 21 Oct 92 11:31:04 +0100
Date: Wed, 21 Oct 92 11:31:04 +0100
From: Guido Bosch <Guido.Bosch%loria.fr@lucid.com>
Message-Id: <9210211031.AA03405@moebius.loria.fr>
To: Jamie Zawinski <jwz@lucid.com>
Cc: help-lucid-emacs@lucid.com
Subject: Re: installing mode specific menubars 
In-Reply-To: <9210210945.AA03252@thalidomide.lucid>
References: <9210210936.AA17905@CIS.Prime.COM>
	<9210210945.AA03252@thalidomide.lucid>
Reply-To: Guido BOSCH <bosch%loria.fr@lucid.com>

Jamie Zawinski writes: 

 > It's actually going to end up being less efficient anyway: the cons
 > cells saved are trivial, while the amount of data that needs to be
 > recomputed by the code that redisplays the menubar will go up.  If
 > you change something on the right, only that part needs to be
 > modified.  If you change something ont the left, then the whole
 > menubar always needs to be recomputed/redrawn, because the
 > positions of the other itmes will have shifted.  Thus more widget
 > creation/destruction, and more X traffic.

The basic concern of my proposition was not really to spare two or
three cons cells, but the behavior on buffer local menubars. It is
very anoying that menus added to the default menubar (by some package
loaded later on, e.g.) do not appear in buffers that made a copy of it
before. 

  - Guido

From help-lucid-emacs-request@lucid.com  Wed Oct 21 20:31:11 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA21864; Wed, 21 Oct 92 20:31:11 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA04989g; Wed, 21 Oct 92 20:27:57 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA20213; Wed, 21 Oct 92 23:29:38 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA20209; Wed, 21 Oct 92 23:29:35 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!charon.amdahl.com!pacbell.com!sgiblab!munnari.oz.au!manuel.anu.edu.au!cs.anu.edu.au!csis!stuarth
From: stuarth%argo.csis.dit.csiro.au@lucid.com (Stuart Hungerford)
Subject: Can someone recommend a good RCS mode for lemacs?
Message-Id: <1992Oct22.000004.23594@csis.dit.csiro.au>
Organization: CSIRO Division of Information Technology
Date: Thu, 22 Oct 1992 00:00:04 GMT
Lines: 10
Xref: uunet alt.lucid-emacs.help:593
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

The subject says it all. I'm looking for an RCS mode I can use in Lucid
emacs. It would be great if it was integrated somehow with dired.

Stu

-- 
/-----------------------------------------------------------------------------\
| Stuart Hungerford | Internet : stuarth@csis.dit.csiro.au                    |
| CSIRO DIT         | Voice    : +61-6-2750941                                |
| Australia         | Fax      : +61-6-2571052                                |

From help-lucid-emacs-request@lucid.com  Wed Oct 21 20:44:52 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA21883; Wed, 21 Oct 92 20:44:52 PDT
Received: by heavens-gate.lucid.com id AA05002g; Wed, 21 Oct 92 20:42:38 PDT
Received: from newton.ncsa.uiuc.edu by heavens-gate.lucid.com id AA04998g; Wed, 21 Oct 92 20:42:25 PDT
Received: from wintermute.ncsa.uiuc.edu by newton.ncsa.uiuc.edu with SMTP id AA16913
  (5.65a/IDA-1.4.2 for help-lucid-emacs@lucid.com); Wed, 21 Oct 92 22:44:04 -0500
Received: by wintermute.ncsa.uiuc.edu (920110.SGI/911001.SGI)
	for @newton.ncsa.uiuc.edu:help-lucid-emacs@lucid.com id AA22939; Wed, 21 Oct 92 22:45:07 -0700
Date: Wed, 21 Oct 92 22:45:07 -0700
From: marca@ncsa.uiuc.edu (Marc Andreessen)
Message-Id: <9210220545.AA22939@wintermute.ncsa.uiuc.edu>
To: help-lucid-emacs@lucid.com
Subject: RCS mode....

An RCS mode should be available from ftp.cs.buffalo.edu in /pub/Emacs;
it's by Sebastian Kremer, the same guy who did the new Dired.

Marc


--
Marc Andreessen
Software Development Group
National Center for Supercomputing Applications
marca@ncsa.uiuc.edu


From help-lucid-emacs-request@lucid.com  Wed Oct 21 20:58:13 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA21913; Wed, 21 Oct 92 20:58:13 PDT
Received: by heavens-gate.lucid.com id AA05033g; Wed, 21 Oct 92 20:56:02 PDT
Received: from sunlight.Stanford.EDU by heavens-gate.lucid.com id AA05029g; Wed, 21 Oct 92 20:55:54 PDT
Received: from elaine21.Stanford.EDU by sunlight.Stanford.EDU (4.1/AIR-1.0)
	id AA29656; Wed, 21 Oct 92 20:57:34 PDT
Date: Wed, 21 Oct 92 20:57:34 PDT
From: erose@leland.stanford.edu
Message-Id: <9210220357.AA29656@sunlight.Stanford.EDU>
Received: by elaine21.Stanford.EDU (4.1/SMI-4.1)
	id AA19922; Wed, 21 Oct 92 20:57:34 PDT
To: help-lucid-emacs@lucid.com
Subject: Some comments on compiling for DecStation 5000/240 in Native Env.

I just compiled Lucid Emacs for a DecStation 5000/240 running Ultrix
4.2A, on a (semi) native environment.  I did have access to the Xaw
libraries which do not come standard with the OS.  Some workarounds
I had to do:

Settings: config.h

	Did not use GCC, used DEC's compiler (for the R3000) instead.
	Optimized at -O (-O2) seems to work ok.
	#include "s/s-bsd4-3.h" and #include "m/m-pmax.h"
	Comment out the GNU_MALLOC section
	define NEED_STRDUP and NEED_REMAINDER
	had to massage the -L and -I switches, this is site-dependent, though
	Used the standard LWLIB provided for the menus.

Fixed needed:

1)	alloc.c, the lines with
		extern int x_show_gc_cursor(struct screen*)
	and
		extern int X_show_normal_cursor(struct screen* s)
	need to be moved out of the {} enclosing scope.  I grouped them
	with
		extern unsigned long current_pointer_shape;
	and this compiles ok.  I think the DEC cc cannot handle extern
	definitions inside an enclosing scope.

2)	lwlib/lwlib.c: name_to_widget()
		char* real_name = (char*)alloca (length + 2); does not compile,
	the compiler points to the '+' token as being in error.
	I moved the "+ 2" part up to the decl of length giving:
		int length = strlen (name) + 2;
		char* real_name = (char*)alloca (length);

3)	Had to replace -lcurses with -lcursesX -ltermcap in the LIBES of the
	xmakefile.

---> I hope these will help you improve your code.  It looks great, seems
	to run well.  Thanks!

==> Feel free to ask any other questions about my machine, environment, etc.

-Eric

From help-lucid-emacs-request@lucid.com  Thu Oct 22 08:50:33 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA24213; Thu, 22 Oct 92 08:50:33 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA05942g; Thu, 22 Oct 92 08:47:42 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA14669; Thu, 22 Oct 92 11:49:23 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA14663; Thu, 22 Oct 92 11:49:20 -0400
Path: uunet!pipex!unipalm!uknet!edcastle!edcogsci!cogsci!rjc
From: rjc@cogsci.ed.ac.uk (Richard Caley)
Newsgroups: alt.lucid-emacs.help
Subject: gnuserv and mail messages
Message-Id: <RJC.92Oct21004921@daiches.cogsci.ed.ac.uk>
Date: 20 Oct 92 23:49:21 GMT
Distribution: alt
Organization: Human Communication Research Center
Lines: 886
Xref: uunet alt.lucid-emacs.help:596
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com


I've hacked a little more on gnuserv.el and the result is below. I
would post a patch on what I posted last time, but for the life of me
I can't find it, so here is the whole thing. The only big change is
that it withdraws the screens rather than deleting them when the
server-edit is over so that the next server-edit will re-use it.
depending on your window manager the screen may apear in the same
place again. This also means that it won't choke if this is the last
screen. 

This will probably only work with 19.2, I don't have 19.3 to try and
change the menubar code. Maybe someone else can come up with a good
compromise. 

As an extra-special-never-to-be-repeated offer, also included is a
first try at a mail message editing mode which I use in conjunction
with gnuserv to provide my mailer with an emacs interface. 

--
rjc@cogsci.ed.ac.uk			_O_
					 |<

#! /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 shell archive."
# Contents:  gnuserv-lucid.el mail-message.el
# Wrapped by rjc@daiches on Wed Oct 21 00:38:02 1992
PATH=/bin:/usr/bin:/usr/ucb ; export PATH
if test -f gnuserv-lucid.el -a "${1}" != "-c" ; then 
  echo shar: Will not over-write existing file \"gnuserv-lucid.el\"
else
echo shar: Extracting \"gnuserv-lucid.el\" \(14828 characters\)
sed "s/^X//" >gnuserv-lucid.el <<'END_OF_gnuserv-lucid.el'
X; Lisp Interface code between GNU Emacs and gnuserv.
X;
X; This file is part of GNU Emacs.
X;
X; Copying is permitted under those conditions described by the GNU
X; General Public License.
X;
X; Copyright (C) 1989 Free Software Foundation, Inc.
X;
X; Author: Andy Norman (ange@hplb.hpl.hp.com) based on
X;         'lisp/server.el' from the 18.52 GNU Emacs distribution.
X; Lucid adaptations by Richard Caley (rjc@cogsci.ed.ac.uk).
X;
X; Please mail bugs and suggestions to the author at the above address.
X
X
X(defconst gnuserv-rcs-header-id "$Header: /home/user1/rjc/lib/emacs/rjc-lisp/RCS/gnuserv-lucid.el,v 1.2 1992/10/20 23:36:18 rjc Exp $")
X
X(require 'menubar)
X(provide 'gnuserv)
X
X(defvar server-program "gnuserv"
X  "*The program to use as the edit server")
X
X(defvar server-process nil 
X  "the current server process")
X
X(defvar server-string ""
X  "the last input string from the server")
X
X(defvar current-client nil
X  "the client we are currently talking to")
X
X(defvar server-clients nil
X  "List of current server clients.
XEach element is (CLIENTID SCREEN BUFFER...) where CLIENTID is an integer
Xthat can be given to the server process to identify a client.
XWhen a buffer is killed, it is removed from this list.")
X
X(defvar server-buffer-clients nil
X  "List of clientids for clients requesting editing of current buffer.")
X
X(make-variable-buffer-local 'server-buffer-clients)
X(setq-default server-buffer-clients nil)
X(or (assq 'server-buffer-clients minor-mode-alist)
X    (setq minor-mode-alist (cons '(server-buffer-clients " Server") minor-mode-alist)))
X
X(defun server-log (string)
X  "If a *server* buffer exists, write STRING to it for logging purposes."
X  (if (get-buffer "*server*")
X      (save-excursion
X	(set-buffer "*server*")
X	(goto-char (point-max))
X	(insert string)
X	(or (bolp) (newline)))))
X
X
X(defun server-sentinel (proc msg)
X  (cond ((eq (process-status proc) 'exit)
X	 (server-log (message "Server subprocess exited")))
X	((eq (process-status proc) 'signal)
X	 (server-log (message "Server subprocess killed")))))
X
X
X(defun server-process-display-error (string)
X  "When an error has been reported from the server, display the error in a
Xpop-up window."
X  (let ((cur (selected-window))
X	(pop-up-windows t))
X    (pop-to-buffer (get-buffer-create "*server*"))
X    (set-window-start (selected-window) (point))
X    (server-log string)
X    (select-window cur)))
X    
X
X(defun server-process-filter (proc string)
X  "Process incoming requests from the server for GNU Emacs to do some actions."
X  (setq server-string (concat server-string string))
X  (if (string-match "\n$" server-string) ;wait till request ends with a newline
X      (if (string-match "^[0-9]+" server-string) ;client request id
X	(progn
X	  (server-log server-string)
X	  (let ((header (read-from-string server-string)))
X	    (setq current-client (car header))
X	    (condition-case oops
X		(eval (car (read-from-string server-string (cdr header))))
X	      (error (setq server-string "")
X		     (server-write-to-client current-client oops)
X		     (setq current-client nil)
X		     (signal (car oops) (cdr oops)))
X	      (quit (setq server-string "")
X		    (server-write-to-client current-client oops)
X		    (setq current-client nil)
X		    (signal 'quit nil)))
X	    (setq server-string "")))
X	(progn				;error string from server
X	  (server-process-display-error server-string)
X	  (setq server-string "")))))
X
X
X(defun server-release-outstanding-buffers ()
X  "Release all buffers that have clients waiting for them to be finished."
X  (interactive)
X  (while server-clients
X    (let ((buffer (nth 1 (car server-clients)))) ;need to do this for all buffers
X      (server-buffer-done buffer))))	; destructively modifies server-clients
X
X
X(defun server-start (&optional leave-dead)
X  "Allow this Emacs process to be a server for client processes.
XThis starts a server communications subprocess through which
Xclient \"editors\" can send editing commands to this Emacs job.
X
XPrefix arg means just kill any existing server communications subprocess."
X  (interactive "P")
X  ;; kill it dead!
X  (if server-process
X      (progn
X	(server-release-outstanding-buffers)
X	(set-process-sentinel server-process nil)
X	(condition-case ()
X	    (delete-process server-process)
X	  (error nil))))
X  ;; If we already had a server, clear out associated status.
X  (if leave-dead
X      nil
X    (if server-process
X	(server-log (message "Restarting server")))
X    (setq server-string "")
X    (setq current-client nil)
X    (let ((process-connection-type t))
X      (setq server-process (start-process "server" nil server-program)))
X    (set-process-sentinel server-process 'server-sentinel)
X    (set-process-filter server-process 'server-process-filter)
X    (process-kill-without-query server-process)))
X
X
X(defun server-write-to-client (client form)
X  "Write the given form to the given client via the server process."
X  (if (and client
X	   (eq (process-status server-process) 'run))
X      (let ((s (format "%s:%s\n" client form)))
X	(send-string server-process s)
X	(server-log s))))
X
X
X(defun server-eval (form)
X  "Evaluate form and return result to client."
X  (server-write-to-client current-client (eval form))
X  (setq current-client nil))
X
X
X(defun server-eval-quickly (form)
X  "Let client know that we've received the request, but eval the form
Xafterwards in order to not keep the client waiting."
X  (server-write-to-client current-client nil)
X  (setq current-client nil)
X  (eval form))
X
X(defvar gnuserv-screens nil
X  "Stack of screens")
X
X(defun gnuserv-create-screen (props)
X
X  "Reuse previous screens"
X
X  (if gnuserv-screens
X      (let ((screen (car gnuserv-screens)))
X	(setq gnuserv-screens (cdr gnuserv-screens))
X	(make-screen-visible screen)
X	)
X    (x-create-screen props)
X    )
X  )
X
X(defun gnuserv-delete-screen (screen)
X  
X  "Remove screen but remember it"
X
X  (setq gnuserv-screens (cons screen gnuserv-screens))
X  (make-screen-invisible screen)
X  )
X
X(defun server-make-window-visible ()
X  "Try to make this window even more visible."
X  (if (and (boundp 'window-system)
X	   (boundp 'window-system-version)
X	   (eq window-system 'x)
X	   (eq window-system-version 11)
X	   (fboundp 'x-remap-window))
X      (progn
X	(x-remap-window)
X	(accept-process-output))))	; give window chance to re-display text
X
X(defun server-make-screen ()
X
X  "Make a new screen for server editing."
X
X  (let ((screen (gnuserv-create-screen '())))
X    (select-screen screen)
X    )
X  )
X
X(defun server-find-file (file)
X  "Edit file FILENAME.
XSwitch to a buffer visiting file FILENAME,
Xcreating one if none already exists."
X  (let ((obuf (get-file-buffer file)))
X    (if (and obuf (set-buffer obuf))
X	(if (file-exists-p file)
X	    (if (or (not (verify-visited-file-modtime obuf))
X		    (buffer-modified-p obuf))
X		(revert-buffer t nil))
X	  (if (y-or-n-p
X	       (concat "File no longer exists: "
X		       file
X		       ", write buffer to file? "))
X	      (write-file file)))
X      (set-buffer (find-file-noselect file))))
X  (switch-to-buffer (current-buffer)))
X
X
X(defun server-edit-files-quickly (l)
X  "For each (lineno . file) pair in the given list, edit the file and goto the
Xgiven line number. Note that unlike server-edit-files, no information is saved
Xabout clients waiting for this buffer to be killed."
X  (server-write-to-client current-client nil)
X  (setq current-client nil)
X  (if (fboundp 'x-create-screen)
X      (server-make-screen)
X    (server-make-window-visible)
X    )
X  (while l
X    (let ((line (car (car l)))
X	  (path (cdr (car l))))
X      (server-find-file path)
X      (if (> line 0)
X	  (goto-line line))
X      )
X    (setq l (cdr l))))
X
X(defun server-do-display ()
X
X  "Put the current client's first buffer onto the current screen."
X
X  (let* ((client (assq current-client server-clients))
X	 (screen (car (cdr client)))
X	 (buffers (cdr (cdr client)))
X	 )
X
X    (switch-to-buffer (car buffers))
X
X    (if (fboundp 'set-screen-menubar)
X	(set-screen-menubar (cons
X			 [ "Done" server-edit t] 
X			 (cons
X			  [ "Save" server-save-edit t]
X			  (cons
X			   (cons "Others"
X				 (mapcar '(lambda (b)
X					    (vector (buffer-name b)
X						    (list 'switch-to-buffer b)
X						    t)
X					    ) buffers))
X			   default-menubar))))
X      )
X    )
X  )
X
X
X(defun server-edit-files (l &optional make-screen-fn)
X  "For each (lineno . file) pair in the given list, edit the given file for the
Xclient and save enough information such that server-kill-buffer can let the client
Xknow when the buffer has been finished with."
X  (if (fboundp 'x-create-screen)
X      (apply (or make-screen-fn 'server-make-screen) nil)
X    (server-make-window-visible)
X    )
X  (while l
X    (let ((line (car (car l)))
X	  (path (cdr (car l))))
X      (server-find-file path)
X      (let ((old-clients (cdr (assq current-client server-clients)))
X	    (buffer (current-buffer)))
X	(if (> line 0)
X	    (goto-line line)
X	  )
X	(setq server-buffer-clients
X	      (cons current-client server-buffer-clients))
X	(if old-clients			;client already waiting for buffers?
X	    (nconc old-clients (list buffer)) ;yes -- append this one as well
X	  (setq server-clients		;nope -- make a new record
X		(cons (list current-client (selected-screen) buffer)
X		      server-clients)))))
X      (setq l (cdr l)))
X  (server-do-display)
X  (message (substitute-command-keys
X	    "When done with a buffer, type \\[server-edit].")))
X
X
X(defun server-get-buffer (buffer)
X  "One arg, a string or a buffer. Return either a buffer object or
Xthrow an error if the buffer named was not a buffer."
X  (if (null buffer)
X      (current-buffer)
X    (let ((buf (get-buffer buffer)))
X      (if (null buf)
X	  (if (stringp buffer)
X	      (error "No buffer named %s" buffer)
X	    (error "Invalid buffer argument"))
X	buf))))
X
X
X(defun server-kill-buffer (buffer)
X  "One arg, a string or a buffer.  Get rid of the specified buffer.
XNOTE: This function has been enhanced to allow for remote editing
Xin the following way:
X
XIf the buffer is waited upon by one or more clients, and a client is
Xnot waiting for other buffers to be killed, then the client is told
Xthat the buffer has been killed."
X  (interactive "bKill buffer ")
X  (setq buffer (server-get-buffer buffer))
X  (if (buffer-name buffer)
X      (save-excursion
X	(set-buffer buffer)
X	(let ((old-clients server-clients))
X	  (server-real-kill-buffer buffer) ;try to kill it
X	  (if (buffer-name buffer)	;succeeded in killing?
X	      nil			;nope
X	    (while old-clients
X	      (let ((client (car old-clients)))
X		(delq buffer client)
X		(if (cdr (cdr client))	;pending buffers?
X		    nil			;yep
X		  (server-write-to-client (car client) nil) ;nope, tell client
X		  (gnuserv-delete-screen (car (cdr client)))
X		  (setq server-clients (delq client server-clients))))
X	      (setq old-clients (cdr old-clients))))))))
X
X
X(defun server-kill-all-local-variables ()
X  "Eliminate all the buffer-local variable values of the current buffer.
XThis buffer will then see the default values of all variables.
XNOTE: This function has been modified to ignore the variable 
Xserver-buffer-clients."
X  (let ((clients server-buffer-clients))
X    (server-real-kill-all-local-variables)
X    (if clients
X	(setq server-buffer-clients clients))))
X
X
X(or (fboundp 'server-real-kill-buffer)
X  (fset 'server-real-kill-buffer (symbol-function 'kill-buffer)))
X
X(fset 'kill-buffer 'server-kill-buffer)
X
X(or (fboundp 'server-real-kill-all-local-variables)
X    (fset 'server-real-kill-all-local-variables
X	  (symbol-function 'kill-all-local-variables)))
X
X(fset 'kill-all-local-variables 'server-kill-all-local-variables)
X
X
X(defun server-buffer-done (buffer)
X  "Mark BUFFER as \"done\" for its client(s).
XBuries the buffer, and returns another server buffer
Xas a suggestion for what to select next."
X  (let ((next-buffer nil)
X	(old-clients server-clients))
X    (while old-clients
X      (let ((client (car old-clients))
X	    item)
X
X	(if (memq buffer client)
X	    (progn
X	      (delq buffer client )
X	      (or next-buffer 
X		  (not (eq (selected-screen) (car (cdr client))))
X		  (not (cdr (cdr client)))
X		  (setq next-buffer (car (cdr (cdr client))))
X		  )
X
X	      (if (fboundp 'set-screen-menubar)
X		  (if (setq item (find-menu-item (screen-menubar (car (cdr client)))
X						 (list "Others" (buffer-name buffer))
X						 ))
X		      (aset (car item) 2 nil)
X		    )
X		)
X
X	      ;; If client now has no pending buffers,
X	      ;; tell it that it is done, and forget it entirely.
X	      (if (cdr (cdr client))
X		  nil
X		(server-write-to-client (car client) nil)
X		(gnuserv-delete-screen (car (cdr client)))
X		(setq server-clients (delq client server-clients))))
X	  )
X	)
X      (setq old-clients (cdr old-clients)))
X    (if (buffer-name buffer)
X	(save-excursion
X	  (set-buffer buffer)
X	  (setq server-buffer-clients nil)))
X    (bury-buffer buffer)
X    next-buffer))
X
X
X(defun mh-draft-p (buffer)
X  "Return non-nil if this BUFFER is an mh <draft> file.
XSince MH deletes draft *BEFORE* it is edited, the server treats them specially."
X ;; This may not be appropriately robust for all cases.
X  (string= (buffer-name buffer) "draft"))
X
X
X(defun server-done ()
X  "Offer to save current buffer, mark it as \"done\" for clients,
Xbury it, and return a suggested buffer to select next."
X  (let ((buffer (current-buffer)))
X    (if server-buffer-clients
X	(progn
X 	  (if (mh-draft-p buffer)
X 	      (progn (save-buffer)
X		     (write-region (point-min) (point-max)
X				   (concat buffer-file-name "~"))
X		     (kill-buffer buffer))
X	    (if (and (buffer-modified-p)
X		     (y-or-n-p (concat "Save file " buffer-file-name "? ")))
X		(save-buffer buffer)))
X	  (server-buffer-done buffer)))))
X
X
X(defun server-edit (&optional arg)
X  "Switch to next server editing buffer; say \"Done\" for current buffer.
XIf a server buffer is current, it is marked \"done\" and optionally saved.
XMH <draft> files are always saved and backed up, no questions asked.
XWhen all of a client's buffers are marked as \"done\", the client is notified.
X
XIf invoked with a prefix argument, or if there is no server process running, 
Xstarts server process and that is all.  Invoked by \\[server-edit]."
X  (interactive "P")
X  (if (or arg
X	  (not server-process)
X	  (memq (process-status server-process) '(signal exit)))
X      (server-start nil)
X    (server-switch-buffer (server-done))))
X
X(defun server-save-edit (&optional arg)
X  "Save buffer, then act like server-edit"
X
X  (interactive "P")
X  (save-buffer)
X  (server-edit nil)
X  )
X
X(defun server-switch-buffer (next-buffer)
X  "Switch to another buffer, preferably one that has a client.
XArg NEXT-BUFFER is a suggestion; if it is a live buffer, use it."
X  (if next-buffer
X      (if (and (bufferp next-buffer)
X	       (buffer-name next-buffer))
X	  (switch-to-buffer next-buffer)
X	;; If NEXT-BUFFER is a dead buffer,
X	;; remove the server records for it
X	;; and try the next surviving server buffer.
X	(server-switch-buffer
X	 (server-buffer-done next-buffer)))
X    )
X  )
X(global-set-key "\C-x#" 'server-edit)
END_OF_gnuserv-lucid.el
if test 14828 -ne `wc -c <gnuserv-lucid.el`; then
    echo shar: \"gnuserv-lucid.el\" unpacked with wrong size!
fi
# end of overwriting check
fi
if test -f mail-message.el -a "${1}" != "-c" ; then 
  echo shar: Will not over-write existing file \"mail-message.el\"
else
echo shar: Extracting \"mail-message.el\" \(10425 characters\)
sed "s/^X//" >mail-message.el <<'END_OF_mail-message.el'
X
X(defconst mail-message::rcs-id "$Id: mail-message.el,v 1.0 1992/10/19 19:41:08 rjc Exp $")
X
X ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
X ;;                                                                  ;;
X ;; Mode for editing mail messages.                                  ;;
X ;;                                                                  ;;
X ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
X
X ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
X ;; 
X ;; $Log: mail-message.el,v $
X ;; Revision 1.0  1992/10/19  19:41:08  rjc
X ;; Initial revision
X ;;
X ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
X
X(provide 'mail-message-mode)
X
X(defvar mail-message-message-hook '(mail-message-insert-from mail-message-substitute mail-message-insert-signature mail-message-goto-next-interesting-header)
X  "*Hooks to be run when starting to edit a mail message.")
X
X(defvar mail-message-interesting-headers 
X  '(
X    "Subject"
X    "To"
X    )
X  "*List of header line names which \\[mail-message-goto-next-interesting-header] goes to.")
X
X(defvar mail-message-address-alist
X  '(
X    ("\\([^,:\n<]+\\)\\(<[^>]+>\\)" nil bold stipple)
X    ("\\([^,:\n(]+\\)(\\([^)]+\\))" nil stipple bold)
X    (",[ \t]*\\([^ \t\n]\\)" ",\n     \\1")
X    )
X  "*Highlighting and substitution information for addresses, see mail-message-substitution-alist."
X  )
X
X(defvar mail-message-substitution-alist
X  '(("\\`\\(.\\|\n\\)*" nil stipple)
X    ("^Subject:\\( \\([^\n]\\|\n[ \t]\\)*\n\\)" nil bold)
X    ("^To:\\(\\([^\n]\\|\n[ \t]\\)*\n\\)" mail-message-address-alist roman)
X    ("^Cc:\\(\\([^\n]\\|\n[ \t]\\)*\n\\)" mail-message-address-alist roman)
X    ("^Bcc:\\(\\([^\n]\\|\n[ \t]\\)*\n\\)" mail-message-address-alist roman)
X    )
X  "*A list of substitutions used to rewrite mail message headers. Each entry
Xconsists of a regular expression, a substitution and possibly some face names.
X
XIf the substitution is a string it is used to replace the text which matches 
Xthe regular expression, as for \\[replace-regexp]. If the replacement is a
Xlist it is evaluated and the result is used as the substitution. If the 
Xreplacement is a symbol, it's value should be another substitution list in
Xthis format which is applied to just the text matched by the regular
Xexpression.
X
XThe faces, if any, are used to highlight the text matching the bracketed
Xexpressions in the regular expression."
X  )
X
X(defvar mail-message-cut-mark "--- 8< --- 8< ---"
X  "*String used to build cut marks around an inserted file")
X
X(defvar mail-message-signature-start nil
X  "A marker at the start of the signature, if any.")
X
X(defvar mail-message-mode-syntax-table nil
X  "Syntax table used while in mail-message mode.")
X
X(defvar mail-message-mode-abbrev-table nil
X  "Abbrev table used while in mail-message mode.")
X
X(define-abbrev-table 'mail-message-mode-abbrev-table ())
X
X(defvar mail-message-mode-map nil
X  "Keymap for Mail-Message mode.")
X
X(if mail-message-mode-map
X    ()
X  (if (fboundp 'set-keymap-parent)
X      (progn
X	(setq mail-message-mode-map (make-sparse-keymap))
X	(set-keymap-parent mail-message-mode-map text-mode-map)
X	)
X    (setq mail-message-mode-map (copy-keymap text-mode-map))
X    )
X
X  (define-key mail-message-mode-map "\M-<" 'mail-message-beginning-of-message)
X  (define-key mail-message-mode-map "\M->" 'mail-message-end-of-message)
X  (define-key mail-message-mode-map "\C-c\C-s" 'mail-message-send)
X  (define-key mail-message-mode-map "\C-c\C-q" 'mail-message-quit)
X  (define-key mail-message-mode-map "\C-c\C-i" 'mail-message-insert-file)
X  (define-key mail-message-mode-map "\C-c\C-n" 'mail-message-goto-next-interesting-header)
X  )
X
X(defun mail-message-insert-signature ()
X  "Add a signature at the end of the current buffer"
X
X  (save-excursion
X    (end-of-buffer)
X    (if (not (bolp))
X	(newline)
X      )
X    (let ((bmp (buffer-modified-p))
X	  name)
X      (if (not (file-readable-p (setq name "~/.reamsignoff")))
X	  (if (not (file-readable-p (setq name "~/.signature")))
X	      (setq name nil)
X	    )
X	)
X      (if name
X	  (progn
X	    (insert-file-contents name)
X	    (forward-line -1)
X	    (end-of-line)
X	    (setq mail-message-signature-start (set-marker (make-marker) (point)))
X	    )
X	)
X	    
X      (set-buffer-modified-p bmp)
X      )
X    )
X  )
X
X(defun mail-message-do-substitute (start end script)
X  "Do all the substitutions in mail-message-substitution-alist"
X
X  (save-excursion
X    (let ((ss script)
X	  (bmp (buffer-modified-p))
X	  s from to)
X      (beginning-of-buffer)
X      (narrow-to-region start end)
X      (while ss
X	(setq s (car ss)
X	      from (car s)
X	      to (car (cdr s))
X	      )
X	(beginning-of-buffer)
X	(while (re-search-forward from nil t)
X	  (let ((i 1) f regions)
X	    (while (match-beginning i)
X	      (if (setq f (nth (+ 1 i)  s))
X		  (setq regions (cons (list (set-marker (make-marker) (match-beginning i))
X					    (set-marker (make-marker) (1+ (match-end i)))
X					    f) regions))
X		)
X	      (setq i (1+ i))
X	      )
X
X	    (cond
X	     ((null to) t)
X	     ((symbolp to)  (mail-message-do-substitute (match-beginning 0)
X						(match-end 0)
X						(eval to)))
X	     ((stringp to) (replace-match to t nil))
X	     (t (replace-match (eval to) t nil))
X	     )
X	    (while regions
X	      (mail-message-highlight (marker-position (nth 0 (car regions)))
X			      (1- (marker-position (nth 1 (car regions))))
X			      (nth 2 (car regions))
X			      )
X	      (setq regions (cdr regions))
X	      )
X	    )
X	  )
X	(setq ss (cdr ss))
X	)
X      (widen)
X      (set-buffer-modified-p bmp)
X      )
X    )
X  )
X
X(defun mail-message-substitute ()
X
X  (save-excursion
X    (beginning-of-buffer)
X    (or (search-forward "\n\n" nil t) (goto-char (point-max)))
X    (mail-message-do-substitute (point-min) (1- (point)) mail-message-substitution-alist)
X    )
X  )
X
X(defun mail-message-insert-from ()
X  "If there isn't a from field, insert one"
X
X  (let ((bmp (buffer-modified-p)))
X    (beginning-of-buffer)
X    (if (re-search-forward "^From: " nil t)
X	nil
X      (beginning-of-buffer)
X      (insert "From: " (user-full-name) " <" (user-login-name) ">\n")
X      )
X    (set-buffer-modified-p bmp)
X    )
X  )
X
X(defun mail-message-goto-next-interesting-header (&optional n)
X
X  "Go to the (Nth) next empty header field, only counting those in
Xmail-message-interesting-headers. If there is none, go to the end of the
Xmessage body."
X
X  (interactive "p")
X
X  (if (not n)
X      (setq n 1)
X    )
X
X  (while (> n 0)
X    (if (re-search-forward "^\\([^ \t\n:]+\\):[ \t]*$" nil t)
X	(if (member (buffer-substring (match-beginning 1) (match-end 1))
X		    mail-message-interesting-headers)
X	    (setq n (1- n))
X	  )
X      (mail-message-end-of-message)
X      (setq n -1)
X      )
X    )
X  )
X
X(defun mail-message-mode ()
X  "Major mode for editing mail messages from mail-message.
X\\{mail-message-mode-map}"
X
X  (interactive)
X  
X  (kill-all-local-variables)
X
X  (use-local-map mail-message-mode-map)
X  
X  (setq major-mode 'mail-message-mode)
X  (setq mode-name "Mail-Message")
X
X  (setq local-abbrev-table mail-message-mode-abbrev-table)
X
X  (set-syntax-table text-mode-syntax-table)
X
X  (auto-fill-mode 1)
X
X  (set (make-variable-buffer-local 'mail-message-signature-start) nil)
X  
X  (run-hooks 'mail-message-mode-hook 'mail-message-message-hook)
X  )
X
X(defun mail-message-send ()
X  "Send the message. Behaves differently in different contexts."
X
X  (interactive)
X  (if (and (boundp 'server-buffer-clients)
X	   server-buffer-clients)
X      (let ((buffer (current-buffer)))
X	(server-save-edit)
X	(set-buffer-modified-p nil)
X	(kill-buffer buffer)
X	)
X    (save-buffer)
X    (save-buffers-kill-emacs)
X    )
X  )
X
X(defun mail-message-quit ()
X  "Abandon the message."
X
X  (interactive)
X  (if (and (boundp 'server-buffer-clients)
X	   server-buffer-clients)
X      (let ((buffer (current-buffer)))
X	(set-buffer-modified-p nil)
X	(server-edit)
X	(kill-buffer buffer)
X	)
X	(kill-buffer (current-buffer))
X    (save-buffers-kill-emacs)
X    )
X  )
X
X(defun mail-message-end-of-message ()
X  
X  "Got to the end of the mail message."
X
X  (interactive)
X
X  (goto-char (or mail-message-signature-start (point-max)))
X  )
X
X(defun mail-message-beginning-of-message ()
X
X  "Got to the end of the mail message."
X
X  (interactive)
X
X  (goto-char (point-min))
X  (or (search-forward "\n\n" nil t) (goto-char (point-max)))
X  )
X
X(defun mail-message-insert-file (file)
X  "Insert a file into the message with cut marks around it."
X
X  (interactive "fIfle to insert: ")
X
X  (end-of-line)
X  (insert "\n" mail-message-cut-mark " CUT HERE for " (file-name-nondirectory file) " " mail-message-cut-mark "\n")
X  (forward-char (nth 1 (insert-file-contents file)))
X  (insert "\n" mail-message-cut-mark " " (file-name-nondirectory file) " end " mail-message-cut-mark "\n")
X  )
X
X
X ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
X ;;                                                                  ;;
X ;; Code to do highlighting. Different versions for emacs, epoch     ;;
X ;; and lemacs.                                                      ;;
X ;;                                                                  ;;
X ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
X
X(if (fboundp 'make-extent)
X    (progn
X      (defun mail-message-highlight (start end face)
X	(let ((extent (extent-at start)))
X	  (if (not (and extent
X			(eq (extent-start-position extent) start)	
X			(eq (extent-end-position extent) end)))
X	      (setq extent (make-extent start end))
X	    )
X	  (set-extent-face extent face)
X	  )
X	)
X      )
X  (if (boundp 'epoch::version)
X      (progn
X	(defvar roman-style (make-style))
X	(defvar bold-style (make-style))
X	(defvar italic-style (make-style))
X	(defvar stipple-style (make-style))
X
X	(set-style-font roman-style "-*-lucidatypewriter-medium-r-*-12-*")
X	(set-style-font bold-style "-*-lucidatypewriter-bold-r-*-12-*")
X	(set-style-font italic-style "-*-lucidatypewriter-medium-i-*-12-*")
X	(set-style-font stipple-style "-*-lucidatypewriterstipple-medium-r-*-12-*")
X	(defun mail-message-highlight (start end face)
X	  (let ((button (button-at (point)))
X		(style (eval (intern (concat (symbol-name face) "-style"))))
X		)
X	    (if (not (and button
X			  (eq (button-start button) start)
X			  (eq (button-end button) end)))
X		(setq button (add-button start end style))
X	      )
X	    (set-button-style button style)
X	    )
X	  )
X	)
X    (progn
X      (defun mail-message-highlight (start end face)
X	)
X      )
X    )
X  )
X
END_OF_mail-message.el
if test 10425 -ne `wc -c <mail-message.el`; then
    echo shar: \"mail-message.el\" unpacked with wrong size!
fi
# end of overwriting check
fi
echo shar: End of shell archive.
exit 0

From help-lucid-emacs-request@lucid.com  Fri Oct 23 07:30:10 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA29248; Fri, 23 Oct 92 07:30:10 PDT
Received: by heavens-gate.lucid.com id AA08742g; Fri, 23 Oct 92 07:20:09 PDT
Received: from spssig.spss.com by heavens-gate.lucid.com id AA08738g; Fri, 23 Oct 92 07:18:08 PDT
Received: from spsssq (spsssq.spss.com) by spssig.spss.com Fri, 23 Oct 92 09:20:33 CDT
Received: from spssrs0 by spsssq (5.61/4.7)
	id AA10828; Fri, 23 Oct 92 09:19:53 -0500
Received: from ibmws001.spss.com by spssrs0.spss.com (AIX 3.2/UCB 5.64/4.03)
          id AA47084; Fri, 23 Oct 1992 09:19:48 -0500
Received: by ibmws001.spss.com (AIX 3.2/UCB 5.64/4.03)
          id AA18525; Fri, 23 Oct 1992 09:19:46 -0500
From: bobhays@spss.com
Message-Id: <9210231419.AA18525@ibmws001.spss.com>
Subject: Help with "Buffers" menu
To: help-lucid-emacs@lucid.com (help-lucid-emacs@lucid.com)
Date: Fri, 23 Oct 92 9:19:45 CDT
X-Mailer: ELM [version 2.3 PL11]

I followed Harry Weeks's suggestions for building an AIX and it worked
fine - well, almost....

First, you need to include -lconv to link in the object for
__iconv_open.  After I figured that out, things went great.

I can run lucid and it seems to be stable.

However, the Buffers menu never updates.  As a matter of fact, I never
get any menu changes at all....  Anyone have any ideas?  I've built it
with USE_MOTIF and have just tried it with USE_LUCID added in (in
Imakefile - yes, I did xmkmf the Imakefile after I made the change:-).

Anyway, that is all that is stopping me from making the (small)
customizations required here to get things going.

Very impressive....

Have fun! - Bob

From help-lucid-emacs-request@lucid.com  Fri Oct 23 09:10:40 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA29436; Fri, 23 Oct 92 09:10:40 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA08951g; Fri, 23 Oct 92 09:08:15 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA22368; Fri, 23 Oct 92 12:09:57 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA22363; Fri, 23 Oct 92 12:09:54 -0400
From: dg@dgupta.hpl.hp.com (Dipankar Gupta)
Date: Thu, 22 Oct 1992 11:06:05 GMT
Subject: floatfns for HP 9k/7xx
Message-Id: <DG.92Oct22120605@dgupta.hpl.hp.com>
Organization: Hewlett-Packard Laboratories, Bristol, UK
Path: uunet!charon.amdahl.com!pacbell.com!sgiblab!sdd.hp.com!scd.hp.com!hpscdm!hplextra!otter.hpl.hp.com!hpltoad!toad.hpl.hp.com!dg
Newsgroups: alt.lucid-emacs.help
Distribution: alt
Lines: 76
Nntp-Posting-Host: dgupta.hpl.hp.com
Xref: uunet alt.lucid-emacs.help:598
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

[I don't know if this got posted the first time around. Apologies in
advance if it did -- DG]

I have hacked together a set of functions to make floatfns work on
HP-UX. Some of the functions referenced in floatfns.c don't exist on
HP-UX, and I've included quick replacements for these. They are not
efficient at all, and don't check their arguments for correctness.
They also don't handle IEEE exceptions that could be generated during
the computation.

If somebody could specify what kind of exception handling is expected
by Emacs, I could try hack that in as well.

The code is #ifdef'd for HPUX, but might work on other machines
that implement floor(), ceil(), pow(), exp(), fmod() and log().

Insert it after line 50 of floatfns.c. (Should it go into sysdeps.c?)
-- Dipankar
HP Labs Bristol UK
dg@hplb.hpl.hp.com

---------------------------------------------------------------------------
#ifdef __hpux
double
asinh( double x )
  {
      return (log( x + (sqrt( (x * x) + 1 ))));
  }

double
acosh( double x )
  {
      return (log( x + (sqrt( (x * x) - 1 ))));
  }

double
atanh( double x )
  {
      return (0.5 * log ( ( 1.0 + x ) / ( 1.0 - x ) ));
  }

double
logb( double x )
  {
      return (log (x) / log (2.0));
  }

double
rint( double x )
  {
	/* I know this is incorrect... */
      return ( (fmod( x, 1.0 ) < 0.5) ? floor( x ) : ceil( x ));
  }

double
cbrt( double x )
  {
      return (pow (x, (1.0 / 3.0)));
  }

double
expm1( double x )
  {
      return ( exp( x ) - 1.0 );
  }

double
log1p( double x )
  {
      return ( log( x + 1 ) );
  }

#endif

--
--

From help-lucid-emacs-request@lucid.com  Fri Oct 23 10:32:38 1992
Received: from lucid.com by labrea.Stanford.EDU (4.1/1.34)
	id AA29702; Fri, 23 Oct 92 10:32:38 PDT
Received: from rodan.UU.NET by heavens-gate.lucid.com id AA09206g; Fri, 23 Oct 92 10:30:13 PDT
Received: from help-lucid-emacs@lucid.com (list exploder) by rodan.UU.NET 
	(5.61/UUNET-mail-drop) id AA26620; Fri, 23 Oct 92 13:31:56 -0400
Received: from news.UU.NET by rodan.UU.NET with SMTP 
	(5.61/UUNET-mail-drop) id AA26616; Fri, 23 Oct 92 13:31:53 -0400
Newsgroups: alt.lucid-emacs.help
Path: uunet!ferkel.ucsb.edu!taco!rock!concert!uvaarpa!caen!zaphod.mps.ohio-state.edu!pacific.mps.ohio-state.edu!linac!sunova!sunova.ssc.gov!allen
From: allen@golem.ssc.gov (Michael Allen)
Subject: Re: Help: rmail -> vm
In-Reply-To: pjordan@rp.CSIRO.AU's message of Wed, 21 Oct 1992 05:23:26 GMT
Message-Id: <ALLEN.92Oct23102144@golem.ssc.gov>
Nntp-Posting-Host: golem.ssc.gov
Reply-To: allen@ssc.gov
Organization: SSC Laboratory, Dallas, TX
References: <1992Oct21.052326.12861@rp.CSIRO.AU>
Date: Fri, 23 Oct 1992 16:21:44 GMT
Lines: 350
Xref: uunet alt.lucid-emacs.help:599
Sender: help-lucid-emacs-request@lucid.com
To: help-lucid-emacs@lucid.com

In article <1992Oct21.052326.12861@rp.CSIRO.AU> pjordan@rp.CSIRO.AU (Patrick Jordan) writes:


   How can I convert my existing RMAIL file into a vm mailbox?

Like this:
======================Cut Here=========================
; Translate rmail entities (folders residing in a directory hierarchy, folder,
; buffer, and message) into a vm equivalent.
;
; THERE IS NO EXPLICIT OR IMPLICIT WARRANTY ON THIS CODE.  I, the author,
; intend for everyone to have the right to share this code as stated in the
; GNU EMACS GENERAL PUBLIC LICENSE (as stated in a version on or after 11 Feb
; 1988).  In particular, i permit everyone to use it free of charge, and to
; redistribute it in whole or in part free of charge, with the condition that
; no one redistributing it charge for the code itself.
;
; Ken Manheimer	10-Aug-1989 	Nat'l Inst of Standards and Technology
; (301) 975-3539		(Formerly "National Bureau of Standards")
; klm@cme.nist.gov		CME, Factory Automation Systems Division
; or ..!uunet!cme-durer!klm	Integrated Systems Group
;
; The functions fall into two levels.  At the base are rmail-message-to-vm
; and rmail-buffer-to-vm, which do the actual text conversion from rmail to vm.
; They operate on the current buffer and have nothing to do with the business
; of visiting or saving files.  (rmail-buffer-to-vm takes care of the rmail
; file header and then dispatches rmail-message-to-vm to take care of the
; individual messages.)  Above them are the functions that deal with the file-
; system business.
;
; rmail-folder-to-vm actually creates a vm file for a designated rmail file and
; moves the rmail file to "<filename>.rmail", leaving the vm translation as
; <filename>.  Though the original file is renamed, it is not otherwise
; affected.
;
; Finally, rmail-hierarchy-to-vm will traverse an rmail directory
; hierarchy, starting at a source directory you specify, applying
; rmail-folder-to-vm to every rmail folder it finds.  It reports
; each directory that it completes.  This is the one you probably
; want to use if you have a bunch of files to convert.  Symbolic 
; links are not be traversed.  Iff 'rmail-to-vm-ignore-src-backups'
; (default t) is t then backup versions of rmail files (as determined by
; the elisp function 'backup-file-name-p') are skipped.  Iff the variable
; rmail-to-vm-dont-redo (default t) is t then previously processed
; rmail files (as indicated by their having an ".rmail" extension and a
; corresponding file whose name lacks that extension) will not be
; reprocessed.
;
; interactive functions:  perform translation:
; ---------------------	  -------------------
; rmail-hierarchy-to-vm	- create vm versions of any rmail files located in
;			  hierarchy designated by directory argument.  A few
;			  variable (see below) affects whether rmail backup
;			  versions are processed.
; rmail-folder-to-vm	- create vm version of rmail file, moving original
;			  rmail file to same name with ".rmail" appended and
;			  leaving the vm version with the original name.
; rmail-buffer-to-vm	- transform contents of current buffer.  The contents
;			  must start with rmail (ie, "Babyl") header.
; rmail-message-to-vm	- transform next rmail message somewhere after point in
;			  current buffer.  Need not have rmail header.
;
; Customization variables - after loading the file you can do an
; -----------------------   'ESC-x set-variable <var>CR<value>' to alter them.
; rmail-to-vm-ignore-src-backups	- default t
;	if t, rmail-hierarchy-to-vm won't create corresponding vm versions for
;	backups of rmail files (ie, won't process backup files).
; rmail-to-vm-dont-redo			- default t
;	iff t, rmail-folder-to-vm won't process rmail files when they already
;	have a ".rmail" extension and another file exists whose name is the
;	same excluding the ".rmail" suffix
;
; NOTE for all you recursion buffs out there - some of these functions are
; iterative where recursion looks appropriate - it turns out there are some
; stack limits that can be circumvented, but it seemed more expedient (for
; a few reasons) to just unravel some of the recursion to iteration.  (I
; happen to prefer reading and writing recursive code myself...  klm.)

(defconst r-to-v-notice "rmail-to-vm"
  "Preface for rmail-to-vm utility prompts")
(defvar rmail-to-vm-ignore-src-backups t
  "If true, rmail-hierarchy-to-vm skips translating rmail backup files")
(defvar rmail-to-vm-dont-redo t
  "If true, don't process rmail files in hierarchy scan that already have
existing vm versions")

(defconst rmail-file-head-line "^BABYL OPTIONS:$" "First line in rmail file")
(defconst rmail-entry-start "\^L\n")
(defconst rmail-entry-end "^\^_")
(defconst rmail-entry-msg-delim "^\\*\\*\\* EOOH \\*\\*\\*\n")
(defconst rmail-attrs "[01],.*\n")
(defconst rmail-attrs-line (concat "^" rmail-attrs))
(defconst rmail-summary-line "^Summary-line:.*$")
(defconst vm-attr-start "X-VM-Attributes: [")
(defconst rtv-done-suffix ".rmail")


(defun rmail-hierarchy-to-vm (srcDir)
  "Apply rmail-folder-to-vm to all rmail folders in hierarchy rooted at SRCDIR.
Non-rmail files in hierarchy ignored.  Original rmail files are renamed to
'<fn>.rmail' (but otherwise unaffected) and new vm versions are given original
name '<fn>'.  If rmail-to-vm-ignore-src-backups t then backup versions aren't
translated."
  (interactive "Drmail-to-vm on hierarchy: ")
					; ensure srcDir is directory format
  (if (file-directory-p srcDir)
      (setq srcDir (file-name-as-directory srcDir))
    (error "rmail-hierarchy-to-vm: %s not a directory" srcDir))
					; iterate through current dir entries 
  (let ((dirEntries (directory-files srcDir)))
    (while dirEntries
      (let ((entry (car dirEntries)))
	(cond						; skip . and ..:
	 ((or (string= entry ".")(string= entry "..")))
					; skip backups if indicated:
	 ((and rmail-to-vm-ignore-src-backups (backup-file-name-p entry)))
					; skip already done files if indicated:
	 ((and rmail-to-vm-dont-redo
	       (rtv-already-did (concat srcDir entry))))
					; don't follow symlinks:
	 ((file-symlink-p (concat srcDir entry))
	  (message "%s: symlink %s disregarded"
		   r-to-v-notice (concat srcDir entry)))
					; disregard unfathomable nonsense:
	 ((not (file-exists-p (concat srcDir entry))))

	 ((file-directory-p (concat srcDir entry))	; recurse on dirs
	  (rmail-hierarchy-to-vm (concat srcDir entry "/")))
	 (t						; translate files
	  (condition-case failure
	      (rmail-folder-to-vm (concat srcDir entry))
	    (file-error (if (not (y-or-n-p
				  (format "can't access %s, continue onwards? "
					  (concat srcDir entry))))
			    (error "rmail-hierarchy-to-vm foiled on %s"
				   (concat srcDir entry))))
	    (error
	     (if (not (y-or-n-p
		       (format "ignoring %s; bad rmail format, continue on? "
					  (concat srcDir entry))))
			    (error "rmail-hierarchy-to-vm foiled on %s"
				   (concat srcDir entry))))))))
      (setq dirEntries (cdr dirEntries))))
  (message "%s %s done." r-to-v-notice srcDir)
  )

(defun rtv-already-did (fn)
  (if (file-exists-p (concat fn ".rmail"))
      t
    (let ((fnlen (length fn))
	  (sufflen (length rtv-done-suffix)))
      (if (string= (substring fn (- fnlen sufflen) fnlen) rtv-done-suffix)
	  (file-exists-p (substring fn 0 (- fnlen sufflen)))))))

(defun rmail-folder-to-vm (src)
  "create vm version of rmail file, leaving original rmail version with
'.rmail' appended on name and leaving the vm version with the original name."
  (interactive "fRmail source folder: ")
  (cond					; validate:
   ((file-directory-p src) (error "Rmail source must not be a directory"))
   ((not (file-exists-p src)) (error "Rmail source %s not found" src))
   ((not (file-readable-p src)) (error "Rmail source %s unreadable" src)))
  (let ((dstBuf (create-file-buffer src)))
    (save-excursion
      (set-buffer dstBuf)		 ; Obtain rmail folder in dstBuf:
      (condition-case failure
	  (insert-file-contents src t)
	(error
	 (progn (set-buffer-modified-p nil)
		(kill-buffer dstBuf)
		(error "can't read %s; %s" src failure))))
      (if (looking-at rmail-file-head-line) ; Do cursory verify of rmail format
	   
	  (progn (condition-case failure
		     (rmail-buffer-to-vm)		; Do translation
		   (error (set-buffer-modified-p nil)
			  (kill-buffer dstBuf)
			  (error "%s bad format, giving up..." src)))

		 (goto-char (point-min))
		 (if (looking-at "From ")	; good enough...
		     (condition-case failure
			 (progn			; mv rmail file aside:
			   (rename-file src (concat src ".rmail") 1)
			   (write-file src))	; save vm version
		       (error
			(progn (set-buffer-modified-p nil)
			       (kill-buffer dstBuf)
			       (error "can't write %s; %s" src failure)))))))
      (set-buffer-modified-p nil)
      (kill-buffer dstBuf)))		; free up buffer
  )

(defun rmail-amt-entries ()
  (let ((count 0) opoint)
    (save-excursion
      (goto-char (point-min))
      (while (and (not (eobp))
		  (re-search-forward rmail-entry-start nil t))
	(setq count (1+ count))))
    count))

(defun current-match (ord)
  (buffer-substring (match-beginning ord) (match-end ord)))

(defun rmail-buffer-to-vm ()
  "Translate rmail-format contents of current buffer to vm format."
  (interactive)
  (let ((delFrom (point)))		; Delete Babyl header
    (re-search-forward rmail-entry-end)
    (kill-region delFrom (point)))
  (message "%s buffer %s" r-to-v-notice (buffer-file-name))
  (let ((amt-done 0)
	(total-amt (rmail-amt-entries)))
					; Massage messages to vm format
					; while we have more messages:
    (while (rmail-message-to-vm)
      (setq amt-done (1+ amt-done))
      (message "%s buffer %s: %d of %d done"
	       r-to-v-notice (buffer-file-name) amt-done total-amt)
      )

    )
)

(defun rmail-message-to-vm ()
  "Convert message following point in current buffer from rmail to vm format,
or return nil if no message following."
  (interactive)
  (if (re-search-forward
       (concat rmail-entry-start rmail-attrs) (1+ (buffer-size)) t)
      (progn
	(goto-char (match-beginning 0))
	(looking-at rmail-entry-start)
	(delete-region (match-beginning 0)(match-end 0)) ; dispose of delimiter
					; Determine and insert standard
					; mail-entry initial line and vm attrs:
	(let* ((eocm			; End-Of-Current-Message
		(save-excursion (re-search-forward rmail-entry-end)
				(point)))
	       (rmail-attrs-string
		(if (re-search-forward rmail-attrs-line eocm t)
		    (prog1 (current-match 0)
		      (delete-region (match-beginning 0) (match-end 0)))
		  "1,,"))
	       (eocm			; End-Of-Current-Message
		(save-excursion (re-search-forward rmail-entry-end)
				(point)))
					; toggled-header indicates whether
					; stuff after "***EOOH***" is full
					; header or not:
	       (toggled-header (string-match "0," rmail-attrs-string))
	       (new-attr "nil")
	       (unseen-attr
		(if (string-match "unseen" rmail-attrs-string) "t" "nil"))
	       (unread-attr new-attr)
	       (deleted-attr "nil")	; ignore saved "deleted" flags
	       (filed-attr
		(if (string-match "filed" rmail-attrs-string) "t" "nil"))
	       (replied-attr
		(if (string-match "answered" rmail-attrs-string) "t" "nil"))
					; insert mail-format line:
					; "From <user> <date>" 
	       (From-addr-field
		(save-excursion
					; Two main forms -
					; "^From: ProperNm .. <actual@address>"
					; or "^From: actual@address stuff..."
					; then progressively less likely forms
		  (cond ((re-search-forward "^From: .*<\\(.*\\)>" eocm t))
			((re-search-forward "^From: \\([^ \n]*\\)" eocm t))
			((re-search-forward
			  "^Really-From: \\([^ \n]*\\)"eocm t))
			((re-search-forward "^Sender: .*<\\(.*\\)>" eocm t))
			((re-search-forward "^Sender: \\([^ \n]*\\)" eocm t)))
		  (current-match 1)))
	       (From-date-field
		(save-excursion
		  (cond
		   ((re-search-forward
					; Suitable for the mailer at my site -
					; u may need to revise it for yours...
					; klm 19-Jul-1989
		     (concat
			; prelim vv    weekday vv     monthday vv
		      "^\^Iid [^ ]* " "\\([^,]*\\), " "\\([^ ]*\\) "
			; month vv	year vv	      clock time vv
		      "\\([^ ]*\\) " "\\([^ ]*\\) " "\\([^ ]*\\)") eocm t)
		    (concat
		     (current-match 1) " " ; weekday
		     (current-match 3) " " ; month
		     (current-match 2) " " ; monthday
		     (current-match 5) " " ; clock time
		     "19" (current-match 4))) ; year
		   ; My hack to set From-date-field using
		   ; the contents of the Date: header. Uses almost the
		   ; same regexp as above clause.
		   ; John_Palkovic@ssc.gov 6/16/92
		   ((re-search-forward
		     (concat
		       ; prelim vv    weekday vv     monthday vv
		      "^Date:[^ ]* " "\\([^,]*\\), " "\\([^ ]*\\) "
			; month vv	year vv	      clock time vv
		      "\\([^ ]*\\) " "\\([^ ]*\\) " "\\([^ ]*\\)") eocm t)
		    (concat
		     (current-match 1) " " ; weekday
		     (current-match 3) " " ; month
		     (current-match 2) " " ; monthday
		     (current-match 5) " " ; clock time
		     "19" (current-match 4))) ; year
		   (t "Previously")))
	       ))
					; Insert mail-entry initial line:
	  (insert-string
	   (concat "From " From-addr-field " " From-date-field "\n"))
					; Insert vm attributes line:
;	  (insert-string
;	   (concat "X-VM-Attributes: ["
;		   new-attr " "
;		   unseen-attr " "
;		   deleted-attr " "
;		   filed-attr " "
;		   replied-attr "]\n"))
					; deal with digested/uprocessed header:
	  (let* ((eocm			; Recompute End-Of-Current-Message
		  (save-excursion (re-search-forward rmail-entry-end)
				  (point))))
	    (re-search-forward rmail-entry-msg-delim eocm t)
	    (delete-region (1- (match-beginning 0)) (1- (match-end 0)))
	    (if (not toggled-header)
		(delete-region (1- (point))
			       (progn (re-search-forward "^$") (point)))))
	  )
					; Delete entry-end delim, loop to next:
	(re-search-forward rmail-entry-end)
	(delete-backward-char 1)
	t
	)
    )
  )
--
Mo'adim L'Simchah!

===================================================
But those who toiled knew nothing of the dreams of 
        Those Who Planned;                         
And the minds who planned the Tower of Babel       
        Cared nothing for the workers who built it.

	-Metropolis

