[comp.windows.x] vt100 keypad codes on xemacs

wittig@gmdzi.UUCP (Georg Wittig) (10/03/89)

Gnu Emacs 18.53 and X11R3:

The keypad key `.' on a vt100 keyboard emits the escape sequence ``ESC O n''
(3 hex. characters). In the non-X11 emacs (`-nw' switch) this code is bound to
`delete-char'.

In xemacs however, this doesn't work. $TERMCAP is set to vt100. Even loading of
`term/vt100.el' and of `keypad.el' doesn't help.

Interestingly, typing `Cntl-Q' and then the keypad key `.' inserts a `.' into
the buffer. The function `delete-char' is executed if I enter the escape
sequence `ESC O n' (3 key strokes) "on foot".

So it seems that the software binding does work, but not the mapping of the
keypad key `.' to the above escape sequence.

What am I missing?

Thanks in advance,
-- 
Georg Wittig   GMD-Z1.BI   P.O. Box 1240   D-5205 St. Augustin 1 (West Germany)
email: wittig@gmdzi.uucp   phone: (+49 2241) 14-2294
-------------------------------------------------------------------------------
"Freedom's just another word for nothing left to lose" (Kris Kristofferson)

scott@grlab.UUCP (Scott Blachowicz) (10/05/89)

In article <1304@gmdzi.UUCP> wittig@gmdzi.UUCP (Georg Wittig) writes:

>Gnu Emacs 18.53 and X11R3:
>The keypad key `.' on a vt100 keyboard emits the escape sequence ``ESC O n''
>(3 hex. characters). In the non-X11 emacs (`-nw' switch) this code is bound to
>`delete-char'.
>...
>So it seems that the software binding does work, but not the mapping of the
>keypad key `.' to the above escape sequence.
>
>What am I missing?
The trick is that emacs creates its own window and handles all of the
X interactions with that window. When you hit a key in the X window,
it essentially sends a "keycode" to the X client (emacs). The keycode
is supposed to be a unique identifier for the particular key pressed
(not necessarily its terminal-based interpretation). At any rate, the
`.' key on the keypad probably returns the keycode `XK_KP_Decimal' to
emacs which I think is ignored. (the source code for this stuff is in
the emacs src/x11term.c file..a function called `string_func_vals' is
involved...) I hacked ours up a little bit to get it to recognize some
of the keycodes returned by my keyboard (Hewlett-Packard), so a lot of
my "special" keys "send back" an escape sequence like `\e&x51sX' which
denotes the key I've designated as `51' with the Shift modifier
pressed. I then have a special terminal function key setup elisp file
that I load if running under X that does things like bind my `Menu'
key to the `buffer-menu' function and setup the editing and arrow
keys. (If anyone is interested in this, let me know & I'll see what I
can do).

I noticed several places in the source where some code to do a more
general job of this "keycode-mapping" was #ifdef'd out. It looked like
work-in-progress, but not quite finished, yet. Anyone know when it
might be reality?
--
Scott Blachowicz                E-mail:  scott@grlab.UUCP
USPS:  Graphicus                 ..or..  ...!hpubvwa!grlab!scott
       150 Lake Str S, #206     VoicePh: 206/828-4691
       Kirkland, WA 98033       FAX:     206/828-4236

john@wpi.wpi.edu (John F Stoffel) (10/12/89)

I have a very simple question, what is xemacs?  Is it a totally ported
version of emacs with full Xwindows support?

Another question, is it possible for emacs to support Proportional
fonts like Helvetica14?  I'm on a DECstation 3100 and I'm having
problems using different fonts.  I know to use fonts with an fx on the
end, but they're ugly ugly ugly!

Thanks for your time and effort!!!

John

-- 
John Stoffel        | john@wpi.bitnet    | Club a Baby Seal for JESUS!
WPI, Box 2432       | john@wpi.wpi.edu   | 
Worcester, MA 01609 | husc6!m2c!wpi!john | 
	Yank, rip, snip, sew.  A Vasectomy in four easy steps!

rodney@sun.ipl.rpi.edu (Rodney Peck II) (10/13/89)

In article <4698@wpi.wpi.edu> john@wpi.wpi.edu (John F Stoffel) writes:


JFS> I have a very simple question, what is xemacs?  Is it a totally ported
JFS> version of emacs with full Xwindows support?

Nope.  xemacs is a loaded up version of emacs which is about to be
installed on the system in the local bin directory as "emacs".  hmmm.
or is xemacs the non-loaded version which you execute and then load
all the site stuff and system stuff into?  One or the other -- either
way, it has nothing to do with X.

However, emacs has reasonable Xwindows support built in.  It will use
Xwindows if it sees that you are running under it.

JFS> Another question, is it possible for emacs to support Proportional
JFS> fonts like Helvetica14?

Nope.

I've heard that this and selective highlighting are proposed changes
in version 19. That will be nice.

In fact, I've heard that the way it will be done is through arbitrary
property lists assigned to buffer ranges.   Lots of interesting
possibilities there.

--
Rodney