# umlaute mit englischer tastaturbelegung eingeben

## spitzwegerich

hallo!

da zum programmieren die deutsche tastaturbelegung voellig unbrauchbar ist (verrenkungen der rechten hand fuer geschweifte klammern...), hab ich bei mir die englische tastaturbelegung eingestellt.

jetzt stehe ich vor der frage wie ich umlaute oder scharfes s eingeben soll. die sonderzeichen anderer sprachen lassen sich ja haeufig ganz praktisch ueber deadkeys eingeben, damit bekommt man die verschiedenen akzente oder eine tilde auf die buchstaben drauf. fuer die deutschen sonderzeichen hab ich aber nichts gefunden.

kann mir jemand weiterhelfen?

----------

## ben

Hallo,

Umlaute sollen schon wie anderen Akzent sein, also mit deadkeys loesbar. Fuer scharfen S, wuerde ich irgende eine taste, sagen wir CTRL+4 opfern, d.h.  mit xmodmap die belegen.

Ausserdem, es gibt Programmen die das keyboard wechseln erlauben. Z.B. ich brauchte ein Epplet, mit Enlightenment, so alles eintippen mit dem US tastatur (freut mit dass ich nicht allein verrueckt bin), ein click um kbd wechslen, akzent eingeben, click, weiterfahren.

Macht's gut

Ben

----------

## c07

Ich hab die Sache so gelöst, dass ich im Prinzip die deutsche Belegung beibehalte, aber äöü auf die AltGr-Ebene verbannt hab. Auf ö/ä sind die Klammern und auf ü das at-Zeichen und der Backslash. Auch umgekehrt (Umlaute normal, Klammern über AltGr, aber auf den Umlaut-Tasten) ist das um Längen besser als das normale deutsche PC-Layout, und so bin ich es auch noch vom Atari gewohnt.

Ich hab das systemweit gelöst, indem ich gleich /usr/X11R6/lib/X11/xkb/symbols/de passend editiert hab (das System ist einfach durchschaut; man muss nur aufpassen, dass man die Änderungen gegebenenfalls im nodeadkeys-Teil macht), aber im Prinzip geht das auch mit xmodmap.

----------

## ben

Freut mich dass du deine Loesung gefunden hast. 

Ich spiele fast nie mehr mit dem keyboard layout. Einmal werde ich wieder z und y wechseln, da es mich so aerget. Alle loesung die ich implementiert habe sind fuer so seltenen Sachen, dass ich vergesse wo ich der Akzent gesteckt habe.   :Laughing: 

Pragmatisch ist es so bei mir: Email, webmail, forums, irc und so fort (also fun) : sorry no Akzent, no Umlaut, plain US kbd

Fuer Dokumenten, Briefe und so fort, gibt es sowieso LaTeX 

Gruess

Ben

----------

## mr_neutron

Noch ne Möglichkeit: Die "Compose" Taste. Gibts afaik nur auf SUN Keyboards, lässt sich aber per xmodmap auch z.B. auf die unnütze Win95-Menü-Taste (rechts unten neben Control) mappen (ungefähr da liegt sie auch bei SUN).

Damit kann man praktisch jedes erdenkliche Zeichen "zusammensetzen" (=compose).

z.B.:

<compose>, <s>, <s> = ß

<compose>, <a>, <"> = ä

<compose>, <e>, <=> = 

und viele mehr... 

(Achtung: nix mit "gedrückt halten", einfach die Tasten nacheinander drücken)

Scheint auch unabhängig von der Anwendung zu sein, es reicht daß der X-server bescheid weis.

Ich benutze das jedenfalls seit ich mein US Keyboard habe (~1 Jahr), mit Mozilla, OpenOffice, diversen *terms, vim und was noch alles und hab noch nie Probleme gehabt.

achja, der Abschnitt in der ~/.Xmodmap lautet:

```

keycode 117 = Multi_key

```

mit irdeneinem Befehl konnte man sich auch alle Compose-Sequenzen anzeigen lassen, welcher das war hab ich leider vergessen. Ich hab mir mal ne Liste gemacht welche bei mir funktionieren, bei Bedarf kann ich sie gerne posten.

----------

## c07

Das mit der Compose-Taste geht übrigens auch mit

```
Option      "XkbOptions"  "compose:menu"
```

in der XF86Config. Statt "menu" stehen auch noch "ralt" und "rwin" zur Auswahl. Und bei vielen Tastatur-Layouts ist sie standardmäßig auf Shift+AltGr.

----------

## c07

 *mr_neutron wrote:*   

> Ich hab mir mal ne Liste gemacht welche bei mir funktionieren

 

Oder einfach in /usr/X11R6/lib/X11/locale/iso8859-15/Compose schauen (bzw. welche Datei für die jeweilige Locale in /usr/X11R6/lib/X11/locale/compose.dir definiert ist).

----------

## mr_neutron

Danke für den Tipp! Danach hatte ich schon ne Weile gesucht.

Ich kannte bisher vielleicht 20% der Möglichkeiten  :Smile: 

----------

## IWBCMAN

Da ich auch eine englische Tastatur verwende und Mal gern Umlaute usw. verwenden möchte, wollte ich euch Frage ob jemand ihre Lösung hier posten könnte, bzw. wie habt ihr dies geschafft ?- ich benutze Gnome2 hauptsächlich müß ich mit der Gnome-keyboard-applet etwas einstellen ?-wie soll mein  Xmodmap aussehen, soll ich "no-latin1.map" benützen ? welche anderen Dateien muß ich ändern ? .bashrc ? .profile ? XFree86Config ?

wie ihr sehen könnt bin ich ratlos wie ich dies anstellen soll, und man merk wahrscheinlich auch daß Deutsch nicht meine Muttersprache ist.....

Vielen Dank  im voraus....

----------

## mr_neutron

Also die Lösung mit "Compose" ist eigentlich recht einfach einzurichten: einfach wie oben von c07 beschrieben den folgenden Eintrag in die XF86Config (in der Sektion "InputDevice"):

```
Option      "XkbOptions"  "compose:menu"
```

oder

in die Datei ~/.Xmodmap:

```
keycode 117 = Multi_key
```

Wenn du es in die .Xmodmap schreibst, mußt du noch den Befehl

```
 xmodap ~/.Xmodmap 
```

in die ~/.xinitrc schreiben. Ich bin mir aber nicht sicher, ob die von Gnome überhaupt gelesen wird! Also versuchs lieber erstmal mit der XF86Config.

Danach sollte die "Compose"-Funktion auf die Windows-"Menü" Taste (rechts unten zwischen der Windows-Taste und Control) gemappt sein. Dann kannst du Umlaute wie oben beschrieben eingeben (z.B. Compose Taste drücken,  <a> drücken, <"> (Quotes) drücken --> a umlaut).

Wenn das nicht funktioniert, kannst du mit

```
xev
```

 testen, ob die Compose Taste auch wirklich auf die Windows-Menü Taste gemappt worden ist. Wenn du diese Taste drückst, sollte etwa so etwas erscheinen:

    KeyRelease event, serial 23, synthetic NO, window 0x2000001,

        root 0x78, subw 0x0, time 2255649035, (367,356), root:(610,614),

        state 0x0, keycode 117 (keysym 0xff20, Multi_key), same_screen YES,

        XLookupString gives 0 characters:  ""

----------

## c07

Ich weiß nicht, ob es in Gnome noch einfacher geht oder ob es die normalen Einstellungen sogar verändert, aber die Lösung mit der Compose-Taste in XF86Config ist wahrscheinlich wirklich am einfachsten. Vielleicht hast du eh schon eine; schau dir mal deine Tastaturbelegung an:

```
xkbprint -o - $DISPLAY | ghostview - &

xkbprint -ll 3 -o - $DISPLAY | ghostview - &

xkbprint -lg 2 -o - $DISPLAY | ghostview - &
```

Das ist für normal, Level 3 und Group 2. Die Compose-Taste ist dort mit "Multi_key" gekennzeichnet. Wenn du irgendwo "diaeresis" findest, kannst du in der Regel auch damit Umlaute produzieren (z.B. <diaeresis> + <a> = <ä>). Vielleicht hast du die Umlaute (z.B. <Adiaeresis>) ja sogar direkt irgendwo.

In Level 3 bzw. Group 2 kommst du in der Regel mit <ISO_Level3_Shift> bzw. <Mode_switch>. Wenn du eine "AltGr"-Taste hast, ist die meistens mit einem davon belegt. Das kann aber in der XF86Config eingestellt werden, z.B. mit

```
Option      "XkbOptions"  "grp:switch,lv3:switch"
```

Für die möglichen Optionen siehe /usr/X11R6/lib/X11/xkb/rules/xfree86 .

----------

## spitzwegerich

danke fuer eure antworten  :Very Happy: 

es gibt also folgende 2 moeglichkeiten, wenn man nicht allzuweit in die innereien reingreifen will:

als tastaturbelegung us_intl auswaehlen und dann die umlaute ueber deadkeys eingeben (korrektur zu meinem ersten posting: " ist tatsaechlich dead, zumindest in us_intl)

nachteile: scharfes s geht immer noch nicht (hab ich zumindest nicht gefunden), die eingabe der zeichen auf den deadkeys wird umstaendlicher.

eine composetaste einstellen

nachteil: man verbraucht eine zusaetzliche taste (auf meinem ibook werden sie langsam knapp).

ich hab mich jetzt fuer die compose-loesung entschieden. da ich auf meinem ibook keine der bequemen standardloesungen ralt, rwin und menu nehmen will bzw. kann, muss ich die composetaste ueber xmodmap laden.

gibt es eine moeglichkeit dies bereits beim starten von kdm zu tun und nicht erst nach dem einloggen?

und noch eine frage haett ich, auch wenn sie nicht so richtig zum thema passt:

wie stelle ich es am elegantesten an, dass verschiedene benutzer nach dem einloggen ihre eigene tastaturbelegung bekommen (einer deutsch, ein anderer englisch ect.)

----------

## keeney

zum tastaturlayout aufm ibook kann ich folgenden link empfehlen, der bei mir wunderbar funktioniert - mit allen noetigen tasten, umlauten, zeichen etc.

http://www.yellowdoglinux.com/support/solutions/ydl_general/keyboard_german.shtml

----------

## c07

 *spitzwegerich wrote:*   

> eine composetaste einstellen
> 
> nachteil: man verbraucht eine zusaetzliche taste (auf meinem ibook werden sie langsam knapp).

 

Das muss aber keine eigene Taste sein. Man kann sie z.B. auch in den AltGr-Level legen, wenn man sie nicht ständig braucht.

 *spitzwegerich wrote:*   

> wie stelle ich es am elegantesten an, dass verschiedene benutzer nach dem einloggen ihre eigene tastaturbelegung bekommen (einer deutsch, ein anderer englisch ect.)

 

Mit setxkbmap, z.B.

```
setxkbmap de nodeadkeys compose:menu
```

----------

## spitzwegerich

@keeney

danke fuer den link. wie weiter oben geschrieben moechte ich halt das us-tastaturlayout verwenden, weshalb er mir nicht wirklich weiterhilft.

@c07

danke fuer den hinweis auf setxkbmap.

----------

## spitzwegerich

Hallo nochmal,

ich möchte hier noch meine abschließende Lösung präsentieren (man beachte die Umlaute und die scharfen s in meinem Posting!). Vielleicht findet ja auch jemand anderer Gefallen daran.

Mir ist vor kurzem aufgefallen dass die englische Tastatur eine redundante Taste aufweist: die Taste rechts von der linken shift-Taste, im deutschen Layout mit < bzw. mit > beschriftet. Im englischen liegen dort backslash und pipe, die aber auch noch woanders zu finden sind. Auf manchen englischen Tastaturen fehlt diese Taste auch ganz, die shift Taste ist dann entsprechend breiter.

Die Position der Taste ist optimal, sie ist viel leichter zu erreichen als die Windows-Menü-Taste (bzw. diese komische Entertaste bei Apple). Ich benutze sie jetzt als compose key.

Der entsprechende Eintrag in .xmodmaprc lautet:

```
keycode 94 = Multi_key
```

Die Apple- bzw. die erwähnte Enter-Taste benutze ich als mittlere bzw. rechte Maustaste, da sie noch frei sind und relativ nahe am Touchpad liegen.

Nochmal danke an alle für eure vielen hilfreichen Beiträge!

----------

