Article View: gnu.emacs.help
Article #189195how to do keysysms for Emacs under X ?
From: Paul Barton-Davis
Date: Wed, 10 Apr 1991 20:10
Date: Wed, 10 Apr 1991 20:10
49 lines
2966 bytes
2966 bytes
A day or 2 ago, I asked about emacs' X interface and its handling of
keysyms. Since that time, it has become clear that *one* way to handle
this issue is to follow the lead of other X clients, and use
resources. This in turn leads to another question, below. Before I go
on, however, this should be considered an open call for all those
who have and/or are working on the v19 X interface, since I do not
want to spend much time working on this if an attempt to do something
similar is already in place. If so, I will use a quick an dirty fix
rather than on of the ideas mapped out below.
First, a premise: emacs should not allow dynamic remapping of the
string returned by XLookupString() from the lisp level. You may
disagree with me about this - if so, I'd like to hear your reasons.
Second, my initial guess at the solution is for emacs to use the same
interface as everyone else: resources. Hence, the following might be
a legal .Xresources (or .Xdefaults) entry:
Emacs.Translations: #override \
<Key>F1: string ("^[[1") \
<Key>Insert: string ("^[xoverwrite-mode) \
<Key>KP_1: string ("^[[123)
Emacs would use the relevant X calls to get the mappings, and then
call XRebindKeysym to install them into the area accessed by
XLookupString.
Donn Cave <donn@milton.u.washington.edu>suggested that it would be
even better to allow:
<Key>Select: set-mark()
but noted that this would involve a lot more work, which is perhaps
an understatement. Personnaly, I don't favor this approach. Emacs
already has extensive facilities to remap particular key sequences
to functions, and there's little point duplicating them in an
X-specific layer. Also, the first approach would still allow the
easy provision of an elisp primitive like x-rebind-keysym, if people
really insisted on having access to this layer from elisp.
So, emacs X hackers and users and designers ? Is something like this
already being done ? Is this the right way ? Should I start yesterday
or next year ? Thoughts please ...
--
Paul Barton-Davis <pauld@cs.washington.edu>
UW Computer Science Lab ``to shatter tradition makes us feel free''
Technical Details
Message-ID:
<1991Apr10.201055.3362@beaver.cs.washington.edu>Path:
arc1-ca.pugleaf.net!gmdzi!unido!mcsun!uunet!dg-rtp!rock.concert.net!mcnc!stanford.edu!agate!ucbvax!bloom-beacon!mit-eddie!uw-beaver!cs.washington.edu!pauldShow Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103b8b,359ebd732e6b1cfb,start X-Google-Attributes: gid103b8b,public X-Google-ArrivalTime: 1991-04-11 02:15:48 PST Path: arc1-ca.pugleaf.net!gmdzi!unido!mcsun!uunet!dg-rtp!rock.concert.net!mcnc!stanford.edu!agate!ucbvax!bloom-beacon!mit-eddie!uw-beaver!cs.washington.edu!pauld From: pauld@cs.washington.edu (Paul Barton-Davis) Newsgroups: gnu.emacs.help Subject: how to do keysysms for Emacs under X ? Message-ID: <1991Apr10.201055.3362@beaver.cs.washington.edu> Date: 10 Apr 91 20:10:55 GMT Sender: news@beaver.cs.washington.edu (USENET News System) Reply-To: pauld@cs.washington.edu (Paul Barton-Davis) Distribution: gnu Organization: Computer Science & Engineering, U. of Washington, Seattle Lines: 49 Originator: pauld@stowe.cs.washington.edu