5

I'd like to cut down on my keyboard Schizophrenia...

I work on a Mac at work and I can type Umlauts via Option+u, key

Example: Option+u (Release), a gives ä

On my home PC (Linux, Opensuse 12) I press Compose+", a.

I also type in Dvorak... so the Mac way of typing umlauts seems much much easier to my fingers. Anyone know how to change the compose key sequences on Linux to change umlauts to Compose+u?

Thanks

-- Solution I used --

found this post: http://forums.freebsd.org/archive/index.php/t-28413.html

and I edited my xkb/us file as described BUT with dvorak keys:

partial alphanumeric_keys
xkb_symbols "dev-de" {
name[Group1]= "USA - German developers";
include "us(dvorak)"
include "ctrl(nocaps)"

key <AC04> { [ u, U, udiaeresis, Udiaeresis ] };
key <AC02> { [ o, O, odiaeresis, Odiaeresis ] };
key <AC01> { [ a, A, adiaeresis, Adiaeresis ] };
key <AC10> { [ s, S, ssharp, S ] };

include "level3(ralt_switch)"
};

Now I can just do:

setxkbmap us dev-de

and type umlauts with ralt. Äwesöme

Shaun
  • 217

2 Answers2

4

Instead of using your compose key, what you want is to assign your third level modifier to a modifier key in Linux. This modifier works exactly the same as Mac OS X's option key, by default. I did this some time ago using Ubuntu and Mint, and if you're on KDE or Gnome, it should be easy to set up.

I assigned my third level modifier to my leftmost Meta key, as that's in a similar location as the Option key would be on a Mac keyboard.

To do this, go to your keyboard preferences and assign a key as your third level modifier.

Some pages that may help you with this are:

http://fsymbols.com/keyboard/linux/choosers/
http://www.bohemianalps.com/blog/2009/special-characters-in-linux/

The UI may have changed a bit, but if you know what you're looking for, you might find out how to assign it.

Pelle
  • 213
0

I just tried to setup umlauts on my thinkpad keyboard with US layout (it works hehe ßöäü€ and so on). I run Ubuntu 22.04 on it.

  1. Use xev to determine the keycode of your Right-Alt key (for me it's 108 on a thinkpad p1 gen3)

  2. Create a file ~/.Xmodmap with contents:

    ! Map umlauts to PRINT SCREEN + 
    keycode 135 = Mode_switch
    keysym e = e E EuroSign
    keysym a = a A adiaeresis Adiaeresis
    keysym o = o O odiaeresis Odiaeresis
    keysym u = u U udiaeresis Udiaeresis
    keysym s = s S ssharp
    
  3. Edit your /home/user/.bashrc file and add this line at the bottom:

    xmodmap ~/.Xmodmap
    

You can also run this command in your current shell so you don't have to open a new shell.
Voila! :) Works!

I found a very good description in this post

zx485
  • 2,337