Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

My control key on the right doesn't work how it should. E.g. Right ctrl + T won't open new tabs in firefox, right ctrl + w won't switch windows in vim, etc.

I know the key isn't physically broken, because xev shows that the right ctrl key generates events, but it just isn't responding as I expect it to in applications.

enter image description here

I tried Kim's answer but it still doesn't work.

blaine@blaine-laptop ~ $ xmodmap -pke | grep 105
keycode 105 = Control_R Control_R Control_R Control_R Control_R

Tried to map as Control_L as well, didn't work.


The computer is a laptop, I am unable to plug the keyboard in to another computer.

share|improve this question
    
Gnome, I assume? and what are your current keyboard settings? –  John T Dec 29 '09 at 4:56
    
Yes, Gnome. I'm using Ubuntu 9.10. See the screenshot I added for keyboard settings. –  brlafreniere Dec 29 '09 at 5:00
    
Does it work if you plug it into a different computer? Does another keyboard work on your computer? –  Daniel H Jan 1 '10 at 22:51
    
It's a laptop, I can't plug it in another computer –  brlafreniere Jan 2 '10 at 19:00

7 Answers 7

I had the same issue running GNOME Shell; it was most obvious running mono apps and some games (such as Kerbal Space Program, which uses the left Ctrl).

I resolved it using GNOME tweak tool; under Keyboard & Mouse make sure "Show location of pointer" is disabled.

share|improve this answer

I had same problem with Ctrl not working in Firefox. Here's what fixed it for me: Go to Compiz->General->General Options->Key bindings. If any combinations include Ctrl, change to something else, such as Shift.

share|improve this answer

I have not Right CTRL on my keyboard, but instead of it i have Insert key. I run xev and press Insert. I see that Insert generate keycode 106.

Now, to map my Insert key (keycode 106) to Right CTRL i do something like below and works (for example Ctrl+T in Google Chrome). Maybe that will help You.

xmodmap -e 'keycode 106 = Control_R' -e 'clear Control' -e 'add Control = Control_L Control_R'

I put this lines into my ~/.xinitrc and ~/.xsession to setup remapping on X startup.

share|improve this answer

I have the same problem in gnome while running VMWare & I fix it by running the following:

setxkbmap
share|improve this answer

You probably need to fix your modifier mappings.

Do a

 xmodmap -pke > my.xmodmap

Use xev to check the scancodes of your control keys, and make sure they're set correctly in that file.

e.g. for me:

 ...
 keycode  37 = Control_L NoSymbol Control_L NoSymbol Control_L
 ...
 keycode 117 = Control_R NoSymbol Control_R NoSymbol Control_R
 ...

At the end of this file, add:

 clear Control
 add Control = Control_L Control_R

(btw, you can see your modifiers by running 'xmodmap' with no arguments.)

Then feed-back the modified mapping file:

 xmodmap my.xmodmap
share|improve this answer

Hit 'layout options' in the screenshot you posted. Is anything bold? is there anything checked for right control under of the settings?

share|improve this answer
    
There's only one section in bold, and the only option that is checked is alt+capslock to change my keyboard's layout from Germany to USA –  brlafreniere Jan 4 '10 at 23:31
    
Germany? did you look under all the settings in that window? I bet you have right control acting as alt_gr or compose or whatever that ke is called. –  user23307 Jan 5 '10 at 2:01

Use

 xev | grep -i keyrelease -A5

and press right ctrl to find its key code. Let's say it is 105, as on my keyboard. Then see what

xmodmap -pke | grep 105

tells us. It should be something like that:

keycode 105 = Control_R NoSymbol Control_R NoSymbol Control_R

If it isn't, you can change it with:

xmodmap -e 'keycode 105 = Control_R NoSymbol Control_R NoSymbol Control_R'

See whether it works now. If so, put this line into a script and add the script to your startup applications.

share|improve this answer
    
I've tried that, but it's still not responding as it should. Ctrl+T yields nothing in firefox, and ctrl+shift+T yields nothing in terminal. xmodmap -pke | grep 105 does show that it's mapped to Control_R, though, but it's just not behaving as I thought it would. Is there some kind of re-initializing I need to do? e.g. new fonts require fc-cache -f -v in order to be recognized. –  brlafreniere Dec 30 '09 at 11:30
    
Are you just having trouble with certain key combos and the key works fine otherwise? Or doesn't it work at all? If the former, it might be that you have compiz keyboard shortcuts configured for Control_R T and Conntrol_R Shift T and compiz takes precedence over firefox and gnome-terminal. –  Kim Dec 31 '09 at 7:12
    
It doesn't appear to work at all except in xev. No key combination that requires ctrl will work with right ctrl, but all key combinations that require ctrl will work with left ctrl. –  brlafreniere Jan 1 '10 at 7:55
    
I've tried turning advanced effects to none in compiz manager, same problem. –  brlafreniere Jan 1 '10 at 8:24
    
As a last resort I'd try setting it to Control_L instead. –  Kim Jan 1 '10 at 9:30

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.