nixpunk wrote:iamsmrt wrote:I know I could do this by using xmodmap but I'd like to keep my .xinitrc clean/would just like to know why this isn't working.
I use xmodmap and it's quite easy to setup. Just curious, but why exactly do you want to keep your ".xinitrc clean"?
My OCD more than anything
Can't say I don't understand.
]]>Anntoin wrote:Its worth trying adding this to your xorg.conf:
Section "InputClass" Identifier "evdev keyboard catchall" MatchIsKeyboard "on" MatchDevicePath "/dev/input/event*" Driver "evdev" Option "XkbLayout" "gb" Option "XkbOptions" "ctrl:nocaps" EndSection
I was having this problem for a while and this worked for me. Your mileage may vary.
This worked, thanks!
Cool, I didn't know you could do that in xorg.conf.
It seems like you found the solution that you wanted. Please prepend "[SOLVED]" at the beginning of the thread title. Thanks! That way, as people browse the forums to help people, they'll know that you already found a solution.
]]>Simply add the following to ~/.xmodmaprc
remove Lock = Caps_Lock
add Control = Caps_Lock
And then add to your startup programs (~/.xinitrc)
xmodmap ~/.xmodmaprx
Not sure how a bunch of XML is cleaner. This way, you don't need to restart HAL or anything when you make a change.
EDIT: Also this way, you don't even need an /etc/X11/xorg.conf
]]>Its worth trying adding this to your xorg.conf:
Section "InputClass" Identifier "evdev keyboard catchall" MatchIsKeyboard "on" MatchDevicePath "/dev/input/event*" Driver "evdev" Option "XkbLayout" "gb" Option "XkbOptions" "ctrl:nocaps" EndSection
I was having this problem for a while and this worked for me. Your mileage may vary.
This worked, thanks!
iamsmrt wrote:I know I could do this by using xmodmap but I'd like to keep my .xinitrc clean/would just like to know why this isn't working.
I use xmodmap and it's quite easy to setup. Just curious, but why exactly do you want to keep your ".xinitrc clean"?
My OCD more than anything
]]>I know I could do this by using xmodmap but I'd like to keep my .xinitrc clean/would just like to know why this isn't working.
I use xmodmap and it's quite easy to setup. Just curious, but why exactly do you want to keep your ".xinitrc clean"?
]]>Section "InputClass"
Identifier "evdev keyboard catchall"
MatchIsKeyboard "on"
MatchDevicePath "/dev/input/event*"
Driver "evdev"
Option "XkbLayout" "gb"
Option "XkbOptions" "ctrl:nocaps"
EndSection
I was having this problem for a while and this worked for me. Your mileage may vary.
]]><?xml version="1.0" encoding="ISO 8859-1"?>
<deviceinfo version="0.2">
<device>
<match key="info.capabilities" contains="input.keys">
<merge key="input.xkb.options" type="string">ctrl:nocaps</merge>
</match>
</device>
</deviceinfo>
I restarted hal and it seems to acknowledge my new rule. lshal | grep xkb yields:
brian@brian-laptop:~$ lshal | grep xkb
input.xkb.layout = 'us' (string)
input.xkb.model = 'evdev' (string)
input.xkb.options = 'ctrl:nocaps' (string)
input.xkb.rules = 'base' (string)
input.xkb.variant = '' (string)
input.xkb.layout = 'us' (string)
input.xkb.model = 'evdev' (string)
input.xkb.options = 'ctrl:nocaps' (string)
input.xkb.rules = 'base' (string)
input.xkb.variant = '' (string)
input.xkb.layout = 'us' (string)
input.xkb.model = 'evdev' (string)
input.xkb.options = 'ctrl:nocaps' (string)
input.xkb.rules = 'base' (string)
input.xkb.variant = '' (string)
input.xkb.layout = 'us' (string)
input.xkb.model = 'evdev' (string)
input.xkb.options = 'ctrl:nocaps' (string)
input.xkb.rules = 'base' (string)
input.xkb.variant = '' (string)
But when I hit the caps lock key, it still gives me caps lock, not control. xev unsurprisingly tells me the keysym I'm pressing is indeed caps lock. I know I could do this by using xmodmap but I'd like to keep my .xinitrc clean/would just like to know why this isn't working.
]]>