Generally, you want to assign Mode_switch to the Windows-Keys. The syntax I describe is for the typical 105 keys US-keyboard, so before you try any of these, you should use xmodmap -pk to check what your keycodes are.
The final layout will have nearly all latin characters accessible, including € and ¢. To actually view those characters, you will need a charset of ISO-8859-15 (glibc calls it @euro, e.g. de_DE@euro) or a unicode one like UTF-8.
The most hated key on your keyboard is doubtless the Caps-Lock-key, so we will turn it into an ordinary shift-key by doing
xmodmap -e "remove Lock = Caps_Lock" xmodmap -e "add Shift = Caps_Lock" |
If for a reason unknown to me, you want t keep your precious Caps-Lock-key, just ignore that part ;o)
This can be obtained by simply assigning both keycodes the Mode_switch function:
xmodmap -e "keycode 115 = Mode_switch" xmodmap -e "keycode 116 = Mode_switch" |
What comes next is that we assign the € and the ¢ to windows-e and windows-c and ¥ and £ to windows-y and windows-p (like "pound"). This looks like this:
xmodmap -e "keycode 26 = e E EuroSign" xmodmap -e "keycode 29 = y Y yen" xmodmap -e "keycode 33 = p P sterling" xmodmap -e "keycode 54 = c C cent copyright" |
Also note that window-shift-c is mapped to ©, maybe someone might find it useful, too ;o)
This is the fun-part I'm not describing any deeper. I map a lot of keys (also dead keys, which are used to combine chars, like dead_tilde) to windows-key-combinations, maybe you might want to try them. All things can simply be pasted and tested on-the-fly. Pick the settings you like, they might give you an idea what can be done
xmodmap -e "keycode 30 = u U udiaeresis" xmodmap -e "keycode 39 = s S ssharp" xmodmap -e "keycode 32 = o O odiaeresis" xmodmap -e "keycode 38 = a A adiaeresis" xmodmap -e "keycode 59 = comma less guillemotleft" xmodmap -e "keycode 60 = period greater guillemotright" xmodmap -e "keycode 11 = 2 at twosuperior" xmodmap -e "keycode 12 = 3 numbersign threesuperior" xmodmap -e "keycode 58 = m M mu" xmodmap -e "keycode 48 = apostrophe quotedbl dead_acute dead_diaeresis" xmodmap -e "keycode 49 = grave asciitilde dead_grave dead_tilde" xmodmap -e "keycode 15 = 6 asciicircum dead_circumflex" xmodmap -e "keycode 55 = v V dead_caron" xmodmap -e "keycode 59 = comma less guillemotleft dead_cedilla" xmodmap -e "keycode 60 = period greater guillemotright dead_ogonek" xmodmap -e "keycode 27 = r R registered" |
Well... that's about it, I'm not telling you more or even describe the whole syntax or how to save the map generated this way (RTFM!), that's beyond my mood now.
Last modified: 08.10.2004 [21:42:59] 060223044903@mark.reidel.info