Article View: comp.windows.x
Article #24980XUpdateMouse()
From: don
Date: Tue, 24 Feb 1987 00:51
Date: Tue, 24 Feb 1987 00:51
71 lines
3022 bytes
3022 bytes
There's no fundemental reason it can't handle more than 2 shift
modifiers at once, except for the fact that the .uwmrc yacc grammar
only allows for up to two. Find the label "keyexpr:" in "uwm/gram.y",
and make it look like the following: (adding the last two cases)
keyexpr: /* empty */
{ $$ = 0; }
| kmask
{ $$ = $1; }
| kmask '|' kmask
{ $$ = $1 | $3; }
| kmask '|' kmask '|' kmask
{ $$ = $1 | $3 | $5; }
| kmask '|' kmask '|' kmask '|' kmask
{ $$ = $1 | $3 | $5 | $7; }
;
I suppose you could make it a recursive definition, so you could
specify as many kmasks as you wanted. Would that be any more or less
efficient?
Now you should be able to "or" together up to four shift modifiers to
specify an event for uwm to look for. i.e. this would not work before
but will now:
f.menu= c|m|s :: left : "Ctrl-Meta-Shift-Mouse-Left Menu"
I would like to be able to make a function key assert some combination
of shift keys (all at the same time, on one function key), but there
does not seem to be any simple way to do that. If I could do that,
then I'd bind function keys to ungainly shift combinations, and use
them to modify mouse clicks. Each function key would correspond to a
class of window manager (or whatever) commands.
-Don
P.S.: While you're waiting for it to recompile, you can sing this:
Double Bucky
(Sung to the tune of "Rubber Duckie")
Double bucky, you're the one!
You make my keyboard lots of fun
Double bucky, an additional bit or two:
(Vo-vo-de-o!)
Control and Meta side by side,
Augmented ASCII, nine bits wide!
Double bucky, a half a thousand glyphs,
plus a few!
Oh,
I sure wish that I
Had a couple of
bits more!
Perhaps a
Set of pedals to
Make the number of
Bits four:
Double double bucky!
Double bucky, left and right
OR'd together, outta sight!
Double bucky, I'd like a whole word of
Double bucky, I'm happy I heard of
Double bucky, I'd like a whole
word of you!
(C) 1978 by Guy L. Steele, Jr.
(For those of you who are interested, the term "bucky bits"
comes from Niklaus Wirth, known as "bucky" to friends, who
suggested that an extra bit be added to terminal codes on 36
bit machines for use by screen editors.)
Technical Details
Message-ID:
<8702240051.AA09462@brillig.umd.edu>Path:
arc1-ca.pugleaf.net!utzoo!utgpu!water!watnot!watmath!clyde!cbatt!ucbvax!BRILLIG.UMD.EDU!donShow Full Headers
Complete Article Headers
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: arc1-ca.pugleaf.net!utzoo!utgpu!water!watnot!watmath!clyde!cbatt!ucbvax!BRILLIG.UMD.EDU!don From: don@BRILLIG.UMD.EDU.UUCP Newsgroups: comp.windows.x Subject: XUpdateMouse() Message-ID: <8702240051.AA09462@brillig.umd.edu> Date: Mon, 23-Feb-87 19:51:08 EST Article-I.D.: brillig.8702240051.AA09462 Posted: Mon Feb 23 19:51:08 1987 Date-Received: Thu, 26-Feb-87 21:31:34 EST Sender: daemon@ucbvax.BERKELEY.EDU Organization: The ARPA Internet Lines: 71