I'm a fan of the US keyboard layout, because it's very easy to code with this layout. But i sometimes need to write some German texts and i therefore need umlauts. The solution: "xmodmap". I created the file .xmodmap in my home directory, that contains the following lines:

keycode 113 = Mode_switch
keycode 20 = 0x2d 0x5f ssharp
keycode 34 = 0x5b 0x7b udiaeresis Udiaeresis
keycode 47 = 0x3b 0x3a odiaeresis Odiaeresis
keycode 48 = 0x27 0x22 adiaeresis Adiaeresis
keycode 26 = e E EuroSign

Whenever i run "xmodmap .xmodmap", i'm able to create umlauts using "Alt Gr".

Alt Gr + ; = ö
Alt Gr + ' = ä
Alt Gr + [ = ü
Alt Gr + - = ß
Alt Gr + e = €