I am on Ubuntu and using a Microsoft keyboard. I want to map my Win key to a Ctrl key. How can I do that?
2 Answers
xmodmap lets you modify keymaps. Make a file to hold xmodmap commands (~/.xmodmaprc is a common choice). The Win keys are called "Super" in xmodmap (Super_L and Super_R for the left and right ones). By default they're connected to mod4, so you want to remove them from that modifier and add them to control. Add this to the command file:
remove mod4 = Super_L Super_R
add control = Super_L Super_R
Tell xmodmap to load it with:
$ xmodmap ~/.xmodmaprc
It will only last as long as your X session does, so you'll need to rerun it each time, or put it in something like ~/.xinitrc so it will be run automatically
- 93,103
- 40
- 240
- 233
jinx:819 Z$ grep ctrl /usr/share/X11/xkb/rules/evdev.lst | grep win
altwin:ctrl_win Control is mapped to Win keys (and the usual Ctrl keys)
altwin:ctrl_alt_win Control is mapped to Alt keys, Alt is mapped to Win keys
Go into the keyboard settings, click "Options", expand "Alt/Win key behavior", and select "Control is mapped to Win keys".
(Command line version: setxkbmap -options altwin:ctrl_win, then edit /etc/X11/xorg.conf and add XkbOptions "altwin:ctrl_win" to the keyboard InputDevice section. (If there is already an XkbOptions line, then add it to that line, separated by a comma: XkbOptions "grp:alt_shift_toggle,altwin:ctrl_win".)
- 32,047
-
Oh, that's somewhat simpler than my answer. Nice – Michael Mrozek Mar 11 '11 at 19:36
-
/usr/bin/setxkbmap von debian x11-xkb-utils-7.7+2 have the "-option" clause without the "s" as in "-options". – 把友情留在无盐 May 20 '15 at 00:01
-
1and debian since long years ago have unified console and x11 keyboard configurations in "/etc/default/keyboard". this file have x11 syntax, and is sourced by xserverrc, while translated for setupcon in an initscript. – 把友情留在无盐 May 20 '15 at 00:06