[comp.emacs] X windows support

dko@calmasd.GE.COM (Dan O'Neill) (12/05/87)

These questions pertain to GNU Emacs 18.49 running with X-windows
version 10.4.  The machine is a sun 3/50 and I have compiled emacs
with HAVE_X_WINDOWS and HAVE_X_MENU defined.

1) How does one initalize and use the mouse menus defined for
   emacs in the lisp files x-menu.el.  I have loaded these
   libraries and found that the function "x-menu-mode" is not
   executable via M-X.  How is one supposed to initiate these
   mouse operations under X 10.4 and how do you use it?  If this
   is documented somewhere in the gnu distribution, please let me
   know.

2) The error message "Terminal does not understand X protocol" is
   returned when the function "x-set-icon" is executed.  What does
   this error message mean?  An yes, a non-nil argument was
   supplied to x-set-icon.

3) Is it possible to compile an image of emacs that will support
   both the sun-window interface and the x-window interface?

Thanks.

-- 
Dan O'Neill			dko@calmasd.GE.COM
GE Calma R&D			...!sdcsvax!calmasd!dko

rlk@think.UUCP (12/05/87)

In article <2545@calmasd.GE.COM> dko@calmasd.GE.COM (Dan O'Neill) writes:
]These questions pertain to GNU Emacs 18.49 running with X-windows
]version 10.4.  The machine is a sun 3/50 and I have compiled emacs
]with HAVE_X_WINDOWS and HAVE_X_MENU defined.

First of all, just in case anyone is confused, HAVE_X_MENU has nothing
to do with x-menu.el.  HAVE_X_MENU enables use of the XMenu package;
old versions have various problems that cause core dumps.  x-menu.el
allows use of emacs buffers with mouse sensitivity.

]1) How does one initalize and use the mouse menus defined for
]   emacs in the lisp files x-menu.el.  I have loaded these
]   libraries and found that the function "x-menu-mode" is not
]   executable via M-X.  How is one supposed to initiate these
]   mouse operations under X 10.4 and how do you use it?  If this
]   is documented somewhere in the gnu distribution, please let me
]   know.

Since I wrote it...first you have to do an x-menu-create-menu.  This
returns a menu object, which you have to use in all future calls.
Currently it happens to be a buffer, but in the future it might be a
structure with some other information.  I don't recall if it takes a
name or not.

Each menu has an associated buffer.  This defaults to the current
buffer when x-menu-create-menu is evaluated.  It's used as the current
buffer when anything needs to be evaluated.  This buffer can be
changed by x-menu-change-associated-buffer.

X-menu-add-item adds an item to a menu.  You supply the menu, the item
name, and a return value.  The return value can be a Lisp form, as I
recall.  x-menu-delete-item deletes an item from a menu.

The function x-menu-activate must be called on a menu when you want to
use it.  This actually positions the items in the buffer and pops up
the buffer.

Do (apropos "x-menu") for details...

]3) Is it possible to compile an image of emacs that will support
]   both the sun-window interface and the x-window interface?

Yes, or if it isn't, no one's told us...

harvard >>>>>>  |
bloom-beacon >  |think!rlk	Robert Krawitz <rlk@think.com>
ihnp4 >>>>>>>>  .

jr@LF-SERVER-2.BBN.COM (John Robinson) (12/07/87)

>> In article <2545@calmasd.GE.COM> dko@calmasd.GE.COM (Dan O'Neill) writes:
...
>> ]3) Is it possible to compile an image of emacs that will support
>> ]   both the sun-window interface and the x-window interface?

>> Yes, or if it isn't, no one's told us...

We routinely run a version that supports SunWindows (emacstool),
X windows, and plain ol' serial terminals for some time now.  Just
moved to X11 with little sweat.

/jr
jr@bbn.com or jr@bbn.uucp

jr@LF-SERVER-2.BBN.COM (John Robinson) (12/15/87)

>> Could you send me, or better, post on the net, a summary of what you
>> did to GNU Emacs to work correctly on X11. I've tried to do it here
>> but using X11 as distributed (even with posted bug fixes) on Suns was
>> too much of a pain. I gave up before spending all days and nights on
>> the bloody thing.

It took me very little effort to transition to X11.  Fortunately,
someone else here is taking care of getting and keeping X11 itself
working (keeping up with bugfixes, etc.).  Asuming you have gotten
that far, you have to get the distribution of gnuemacs/X11 changed
files from Robert French at MIT (rfrench@athena.mit.edu).  I am able
to retrieve them by FTP.  I'm not sure whether they have been
usenet-posted; perhaps they are settled enough for this now.

The only hitch I had was that one of the files in my GNU Emacs 18.49
didn't have some changes that Robert's changes depended on.  Robert
sent me this file too (emacs.c); then everything compiled fine.

Remianing problems are (1) occasionally it hangs; I go to a shell
window and issue a kill -INT to wake it up again; (2) menus aren't
supported yet.

Perhaps Robert will comment further on what to expect next (are you
there Robert?).

/jr
jr@bbn.com or jr@bbn.uucp