Writing Umlaute Without the Pain

You can use the Compose key to write ä, ö, ü and ß and also other characters not normally found on a US keyboard layout, but it's not very comfortable.

To make this a bit simpler I've changed my keyboard layout so ä, ö and ü can be typed via Alt Graph + a (or o, u respectively).

The Easy Way

I guess this works on most systems. Put this in a file .xmodmaprc in your home directory:

keycode  11 = a A adiaeresis
keycode  25 = o O odiaeresis
keycode  31 = u U udiaeresis
keycode  29 = s S ssharp

The last line lets you type “ß” by pressing Alt Graph + s.

If you don't want to restart your X session, you can load the mapping immediately:

xmodmap ~/.xmodmaprc

Unfortunately, the key codes changed when the cebitec Sun-Ray infrastructure was changed in June 2010. As a quick fix you can use the following codes:

keycode  113 = Mode_switch
keycode  38 = a A adiaeresis
keycode  32 = o O odiaeresis
keycode  30 = u U udiaeresis
keycode  39 = s S ssharp

keycode 66 = Caps_Lock
remove Lock = Caps_Lock
add Shift = Caps_Lock

Additionally, the Caps Lock key is here downgraded to a regular shift key. How many times did it happen to you that you accidentally enabled caps lock AND STARTED TO WRITE EVERYTHING IN CAPITAL LETTERS? With this modification it won't happen again :-)

The Other Way

Either:

  • Run xmodmap -pke, edit its output after reading the man page and put the lines you have changed into ~/.xmodmaprc, or
  • Run (the graphical tool) xkeycaps and edit your keyboard settings there by right-clicking on the displayed keys. The program asks you for the keyboard you have, have a look under your Sun keyboard to find this out. All SunRay workstations I've seen have keyboards of Type 6/USB.

The Hard But Eventually Most Comfortable Way

This is what the title of this page is about. Typing is –at least for some people– straining for the hands. Just google a bit for the Dvorak keyboard layout, print out the PDF you find on http://www.mwbrooks.com/dvorak/layout.html, and switch to it in the CeBiTec by using the following .xmodmaprc:

keycode  11 = a A adiaeresis
keycode  12 = X
keycode  13 = J
keycode  14 = e E currency
keycode  15 = period greater
keycode  16 = u U udiaeresis
keycode  17 = I
keycode  18 = D
keycode  19 = C
keycode  20 = H
keycode  21 = T
keycode  22 = N
keycode  23 = M
keycode  24 = B
keycode  25 = R
keycode  26 = L
keycode  27 = apostrophe quotedbl
keycode  28 = P
keycode  29 = o O odiaeresis
keycode  30 = Y
keycode  31 = G
keycode  32 = K
keycode  33 = comma less
keycode  34 = Q
keycode  35 = F
keycode  36 = semicolon colon
keycode  37 = 1 exclam
keycode  38 = 2 at
keycode  39 = 3 numbersign
keycode  40 = 4 dollar currency
keycode  41 = 5 percent currency
keycode  42 = 6 asciicircum
keycode  43 = 7 ampersand
keycode  44 = 8 asterisk
keycode  45 = 9 parenleft
keycode  46 = 0 parenright
keycode  52 = bracketleft braceleft
keycode  53 = bracketright braceright
keycode  54 = slash question
keycode  55 = equal plus
keycode  56 = backslash bar brokenbar
keycode  58 = s S ssharp
keycode  59 = minus underscore
keycode  60 = grave asciitilde
keycode  61 = W
keycode  62 = V
keycode  63 = Z

Enabling Autorepeat for PgUp and PgDown

  • Start xkeycaps.
  • Select appropriate layout (usually Type 6/USB for the SunRay terminals).
  • Right-click PgDn, select “Edit KeySyms of Key”, then enable AutoRepeat in the dialog.
  • Repeat for PgUp.

You can do this more easily on the command line:

xset r 82
xset r 85

82 is the keycode for PgUp, 85 is for PgDown.