Path: utzoo!mnetor!tmsoft!torsqnt!news-server.csri.toronto.edu!bonnie.concordia.ca!uunet!tut.cis.ohio-state.edu!ucbvax!bloom-beacon!dont-send-mail-to-path-lines From: mouse@lightning.mcrcim.mcgill.EDU Newsgroups: comp.windows.x Subject: Re: Xsun Keyboard Map Message-ID: <9102160642.AA26115@lightning.McRCIM.McGill.EDU> Date: 16 Feb 91 06:42:19 GMT Sender: daemon@athena.mit.edu (Mr Background) Organization: The Internet Lines: 61 > Why does the R13 key (keycode 119) in the MIT Xsun server have the > keysym R13? > This might seem like a strange question, Yes; it almost begs to be answered "Maybe because it's the R13 key!" :-) It's also not unique to Suns. I would expect any server with an R13 key to have the same "problem". > except that all the other special function keys on the keyboard (like > L5, F2 and R6) all have "Fx" keysyms (where x is from 1 to 35). In > any case, it seems the natural progression would assign "F33" to > keycode 119. First, note that R13 and F33 are actually the same keysym; they both turn into the same keysym code. The only mystery is why you get "R13" rather than "F33" when you translate keysym 0xffde back into a name. Here is a snippet of keysymdef.h from our system: #define XK_F27 0xFFD8 #define XK_R7 0xFFD8 #define XK_F28 0xFFD9 #define XK_R8 0xFFD9 #define XK_F29 0xFFDA #define XK_R9 0xFFDA #define XK_F30 0xFFDB #define XK_R10 0xFFDB #define XK_F31 0xFFDC #define XK_R11 0xFFDC #define XK_F32 0xFFDD #define XK_R12 0xFFDD #define XK_R13 0xFFDE #define XK_F33 0xFFDE #define XK_F34 0xFFDF #define XK_R14 0xFFDF #define XK_F35 0xFFE0 #define XK_R15 0xFFE0 Notice that in most cases, the F keysym is listed first, but in the case of F33/R13, the R keysym is listed first. UTSLing reveals that xmodmap simply uses XKeysymToString, and that XKeysymToString gets its list from ks_names.h in mit/lib/X. This file begins with a comment /* * This file is generated from $(INCLUDESRC)/keysymdef.h. Do not edit. */ which indicates that keysymdef.h is the primal source, but I have been unable to locate anything which rebuilds ks_names.h if you modify keysymdef.h. In any case, it's clear what's up: XKeysymToString is finding R13 because that's the first name given for 0xffde. I have no idea *why* R13 and F33 are switched. I agree it doesn't really make sense. der Mouse old: mcgill-vision!mouse new: mouse@larry.mcrcim.mcgill.edu