Bug 2822

Summary: xmodmap -pk prints only two mappings per key
Product: xorg Reporter: Branden Robinson <branden>
Component: App/xmodmapAssignee: Xorg Project Team <xorg-team>
Status: RESOLVED WORKSFORME QA Contact:
Severity: normal    
Priority: high    
Version: git   
Hardware: All   
OS: Linux (All)   
URL: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=285874
Whiteboard:
i915 platform: i915 features:

Description Branden Robinson 2005-03-25 15:16:26 UTC
This was filed against Debian's XFree86 4.3.0 packages, but as far as I can tell
the only changes to exec.c since XFree86 4.3.0 were to PrintModifierMap(), which
corresponds to xmodmap -pm, not xmodmap -pk.

Here's the original report:

On Thu, Dec 16, 2004 at 04:24:47AM +0100, Kalle Hasselstrom wrote:
> xmodmap -pk is supposed to write a table of the current key map. It
> does this, except that it only prints the first two keysymnames for
> each keycode -- the last two, those that are reached by pressing
> Mode_Switch, are not printed. This causes problems when I use xmodmap
> -pke to save the current keymap, and later try to restore it.
Comment 1 Alan Coopersmith 2005-10-09 14:18:18 UTC
PrintModifierMap() prints the number of modifiers specified by the 
numKeyPerModifier field in the response from the GetModifierMapping X request.

xmodmap from current Xorg CVS is printing more than two for me, when run 
against either the Solaris Xsun or an Xorg 6.8.2 server - for instance:

keycode  79 = KP_Home KP_7 F27 KP_7 F27 NoSymbol Home
keycode  80 = KP_Up KP_8 F28 KP_8 F28 NoSymbol Up
keycode  81 = KP_Prior KP_9 F29 KP_9 F29 NoSymbol Prior
keycode  82 = KP_Subtract XF86_Prev_VMode
keycode  83 = KP_Left KP_4 F30 KP_4 F30 NoSymbol Left
keycode  84 = KP_Begin KP_5 F31 KP_5 F31
keycode  85 = KP_Right KP_6 F32 KP_6 F32 NoSymbol Right
keycode  86 = KP_Add XF86_Next_VMode
keycode  87 = KP_End KP_1 F33 KP_1 F33 NoSymbol End
keycode  88 = KP_Down KP_2 F34 KP_2 F34 NoSymbol Down
keycode  89 = KP_Next KP_3 F35 KP_3 F35 NoSymbol Next
keycode  90 = KP_Insert KP_0

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.