Bug 24554 - symbols/srvr_ctrl used by Sun Type 6 has dead BackSpace key
Summary: symbols/srvr_ctrl used by Sun Type 6 has dead BackSpace key
Status: RESOLVED FIXED
Alias: None
Product: xkeyboard-config
Classification: Unclassified
Component: General (show other bugs)
Version: unspecified
Hardware: Other All
: medium normal
Assignee: xkb
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-10-15 10:12 UTC by Mike Hanafey
Modified: 2009-11-01 04:21 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments
Fix for dead backspace key (376 bytes, patch)
2009-10-15 10:12 UTC, Mike Hanafey
Details | Splinter Review

Description Mike Hanafey 2009-10-15 10:12:01 UTC
Created attachment 30453 [details] [review]
Fix for dead backspace key

In Fedora 11, if you choose the Sun Microsystems : Type 5/6 keyboard the resulting keyboard mapping has a non-functional backspace key.

A simple patch on /usr/share/X11/xkb/symbols/srvr_ctrl fixes this problem (attached).
Comment 1 Sergey V. Udaltsov 2009-10-15 10:17:22 UTC
Why BackSpace is not mapped in other symbols used? For other keyboard, it is mapped in symbols/pc and symbols/us
Comment 2 Mike Hanafey 2009-10-19 10:18:30 UTC
(In reply to comment #1)
> Why BackSpace is not mapped in other symbols used? For other keyboard, it is
> mapped in symbols/pc and symbols/us
> 

All I can say for sure is if you install Fedora 11 and select the keyboard as
"Sun Microsystems : Sun Type 5/6" the backspace key does nothing.

xev shows that backpace in mapped to no symbol.

xkbcomp $DISPLAY shows:

    key <BKSP> {
        type= "CTRL+ALT",
        symbols[Group1]= [        NoSymbol, Terminate_Server ]
    };

With the attached patch to /usr/share/X11/xkb/symbols/srvr_ctrl, backpace works, and xkbcomp now shows:

    key <BKSP> {
        type= "CTRL+ALT",
        symbols[Group1]= [       BackSpace, Terminate_Server ]
    };
Comment 3 Sergey V. Udaltsov 2009-10-20 04:46:05 UTC
I will add

key <BKSP> {         [       BackSpace ] };

to symbols/sun_vndr/us(sunbasic)
Comment 4 Sergey V. Udaltsov 2009-10-20 04:48:09 UTC
Committed
Comment 5 Mike Hanafey 2009-10-20 06:31:30 UTC
Thanks for the right place to fix the problem!
Comment 6 Mike Hanafey 2009-10-20 09:43:45 UTC
Actually, two changes should be made -- include "srvr_ctr(xfree86)" does nothing to the final keymap other than force a "Terminate_Server" mapping, making the layout option "Key sequence to kill the X server" non-functional (kill server is defined no matter this option).

--- symbols/sun_vndr/us.VIRGIN	2009-04-09 01:34:02.000000000 -0400
+++ symbols/sun_vndr/us	2009-10-20 12:32:30.912858049 -0400
@@ -54,7 +54,7 @@
 // Symbols shared by all Sun Keyboard layouts
 hidden
 xkb_symbols "sunbasic" {
-    include "srvr_ctrl(xfree86)"
+    //include "srvr_ctrl(xfree86)"
 
     // Needed for left function keys and volume keys
     // Need to include this before us(basic) otherwise tilde is mapped to 
@@ -81,6 +81,7 @@
     key <RCTL> { [ Control_R		]			};
     key <COMP> { [ Multi_key		]			};
 
+    key <BKSP> { [ BackSpace		]			};
     key  <TAB> { [ Tab,  ISO_Left_Tab	]			};
     key <RTRN> { [ Return		]			};
Comment 7 Mike Hanafey 2009-10-21 07:02:38 UTC
Sorry, I guess I was supposed to reopen -- current fix was incomplete, see previous comment. 

Thanks.
Comment 8 Sergey V. Udaltsov 2009-10-30 15:57:36 UTC
Using srvr_ctrl(xfree86) does not enable "kill X server" these days. There is separate xkb option terminats:ctrl_alt_bksp for that. So, I do not think we should comment out srvr_ctrl(xfree6).

The BKSP mapping is already added to that section. So, what else should I change in that file?
Comment 9 Mike Hanafey 2009-10-30 18:14:16 UTC
(In reply to comment #8)
> Using srvr_ctrl(xfree86) does not enable "kill X server" these days. There is
> separate xkb option terminats:ctrl_alt_bksp for that. So, I do not think we
> should comment out srvr_ctrl(xfree6).
> 
> The BKSP mapping is already added to that section. So, what else should I
> change in that file?
> 

With Fedora 11, with the 'include "srvr_ctrl(xfree86)"' line present, then Ctrl Alt Bksp does kill the server, even thought the layout option for "kill x server" is not checked. 

If the line is commented out then the killing of the x server can be controlled by the layout option.

Doing a diff of the output from 'xkbcomp -a' with this line in and out indicates that the only contribution of srvr_ctrl(xfree86) is to add the "Terminate_Server" mapping, so it seemed safe to remove it.

I have used the two changes now for several days, and the keyboard works as expected. 

Maybe there is a difference between the keyboard package from Fedora 11 relative to the latest one?
Comment 10 Sergey V. Udaltsov 2009-11-01 04:21:55 UTC
> Maybe there is a difference between the keyboard package from Fedora 11
> relative to the latest one?
Quite possible. I suspect, it is still using 1.6.

There should not be BKSP mapping in srvr_ctrl file. So in upstream, it is ok as it is. Please check in git


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.