Nuls in code panes

Bert Freudenberg bert at isg.cs.uni-magdeburg.de
Mon May 14 09:51:51 UTC 2001


On Mon, 14 May 2001, Richard A. O'Keefe wrote:

> 	> On the Sparc keyboard, there are keys labelled
> 	> 	Copy
> 	> 	Paste
> 	> 	Cut
> 	> and I'm so used to selecting with the mouse in my right hand and whacking
> 	> these keys with my left that I'm not even aware of doing it.
> 	>
> 	> If Squeak mapped Copy to Cmd-C, Paste to Cmd-V, and Cut to Cmd-X,
> 	> all would be well.
>
> 	Actually, there *is* code in the Unix VM (sqXWindow.c) to map the special
> 	keys to their Squeak equivalents:
> 	    case XK_L1:         return ALT+'.'; /* stop */
> 	    case XK_L2:         return ALT+'j'; /* again */
> 	    case XK_L4:         return ALT+'z'; /* undo */
> 	    case XK_L6:         return ALT+'c'; /* copy */
> 	    case XK_L8:         return ALT+'v'; /* paste */
> 	    case XK_L9:         return ALT+'f'; /* find */
> 	    case XK_L10:        return ALT+'x'; /* cut */
>
> xev is in /usr/openwin/demo/bin; it's a demo, not a utility.

You can't blame me for the weirdness of Solaris ;-)

> Having hunted it down, I discovered that in Solaris 2.8 the following
> mappings apply:
> 	Stop	= F11		Again = F12
> 	Props	= F13		Undo  = F14
> 	Front	= F15		Copy  = F16
> 	Open    = F17		Paste = F18
> 	Find    = F19		Cut   = F20

Looking into X11/keysymdef.h (wherever this is located, "usually" in
/usr/X11R6/include), I see that F1x and Lx are synonyms:

	#define XK_F11                  0xFFC8
	#define XK_L1                   0xFFC8
	...

Which means that the code should work. But it does not, even on Linux.
When I press F11 or F12 it should be the same as ALT+'.' or ALT+'j'. So
you really discovered a bug in the Unix VM. I think it's related to the
eventification, but I'm not sure yet ...

-- Bert





More information about the Squeak-dev mailing list