Andreas Pakulat <[EMAIL PROTECTED]> wrote:

> On 21.11.05 22:29:34, Andreas Kroschel wrote:
>> Wobei, im Debian-Sinne eleganter ist es sicherlich, statt der Änderung
>> der im Paket enthaltenen Datei die ganze /etc/X11/xkb/symbols/us etwa
>> nach /etc/X11/xkb/symbols/us_de zu kopieren, diese dann zu ändern und
>> als us_de/intl zu verwenden. Einzelne Keys müßtest Du dann außerdem nach
>> folgendem Muster ändern können:
>
> Nicht zu vergessen die xfree86.xml im rules-Verzeichnis zu aendern,
> damit XKB die neue Symbol-Datei auch kennt. Evtl. muss man auch die
> xfree86.lst und die xfree86 noch aendern - das weiss ich nicht mehr
> genau...

Ich habe jetzt folgendes versucht:

- cp /etc/X11/xkb/symbols/us_intl{,DE}

- emacs /etc/X11/xkb/symbols/us_intlDE, das Ergebnis ist unten angehängt.

- folgende Zeile in /etc/X11/xkb/rules/xfree86 eingefügt:

  $pcmodels      intl    =       us(%mcompose)
   *             intl    =       us(pc104compose) 
+  *             intlDE  =       us(pc104compose) 

- folgendes in /etc/X11/xkb/rules/xfree86.lst eingefügt:

 ! layout
   us            U.S. English
   en_US         U.S. English w/ ISO9995-3
   us_intl       U.S. English w/ deadkeys
+  us_intlDE     U.S. English w/o deadkeys, german umlauts handy

- und folgendes in /etc/X11/xkb/rules/xfree86.xml:

     <layout>
       <configItem>
         <name>us_intl</name>
         <description>U.S. English w/ deadkeys</description>
         <description xml:lang="bg">аЌеÑ<80>ОкаМÑ<81>ка 
аМглОйÑ<81>ка Ñ<81>Ñ<8A>Ñ<81> Ñ<81>пеÑ<86>Оа
 лМО клавОÑ<88>О </description>
         <description xml:lang="ru">Ð<90>МглОйÑ<81>каÑ<8F> (СКÐ<90>) 
Ñ<81>П Ñ<81>пеÑ<86>ОалÑ<8C>МÑ<8B>ÐŒÐ
 ž клавОÑ<88>аЌО (dead keys)</description>
       </configItem>
       <variantList/>
     </layout>
+    <layout>
+      <configItem>
+        <name>us_intlDE</name>
+        <description>U.S. English w/o deadkeys, german umlauts 
handy</description>
+      </configItem>
+      <variantList/>
+    </layout>

Wenn ich jetzt das Layout laden möchte, beschwert er sich:

$ setxkbmap -v 9 -rules xfree86 -model pc104 -layout us -variant intlDE -option 
"compose:caps"
Setting verbose level to 9
locale is C
Warning! Multiple definitions of rules file
         Using command line, ignoring X server
Warning! Multiple definitions of keyboard model
         Using command line, ignoring X server
Warning! Multiple definitions of keyboard layout
         Using command line, ignoring X server
Warning! Multiple definitions of layout variant
         Using command line, ignoring X server
Applied rules from xfree86:
model:      pc104
layout:     us
variant:    intlDE
options:    compose:caps
Trying to build keymap using the following components:
keycodes:   xfree86+aliases(qwerty)
types:      complete
compat:     complete
symbols:    pc/pc(pc104)+pc/us(intlDE)+compose(caps)
geometry:   pc(pc104)
Error loading new keyboard description

Sieht jemand den Fehler?  Hier ist die Datei:

//
// $XFree86: xc/programs/xkbcomp/symbols/us_intl,v 1.6 2003/05/29 12:41:58 
pascal Exp $
//

partial default alphanumeric_keys
xkb_symbols "basic" {

    name[Group1]= "US/ASCII";

    // Alphanumeric section
    key <TLDE> {        [      grave,   asciitilde      ],
                        [     degree,   dead_tilde      ]       };
    key <AE01> {        [          1,   exclam          ],
                        [ onesuperior,  exclamdown      ]       };
    key <AE02> {        [          2,   at              ],
                        [ twosuperior,                  ]       };
    key <AE09> {        [          3,   numbersign      ],
                        [ threesuperior                 ]       };
    key <AE05> {        [          5,   percent         ],
                        [   EuroSign                    ]       };
    key <AE06> {        [          6,   asciicircum     ],
                        [ asciicircum,  dead_circumflex ]       };
    key <AE09> {        [         9,    parenleft       ],
                        [  dead_breve,  dead_breve      ]       };
    key <AE10> {        [         0,    parenright      ],
                        [dead_abovering, dead_abovering ]       };
    key <AE11> {        [     minus,    underscore      ],
                        [ dead_macron,  dead_belowdot   ]       };
    key <AE12> {        [     equal,    plus            ],
                        [ dead_doubleacute, dead_horn   ]       };

    key <AC10> {        [ semicolon,    colon           ],
                        [ dead_ogonek,  dead_diaeresis  ]       };
    key <AC11> {        [ dead_acute,   dead_diaeresis  ],
                        [ apostrophe,   quotedbl        ]       };
                        
    key <AB08> {        [     comma,    less            ],
                        [ dead_cedilla, dead_caron      ]       };
    key <AB09> {        [    period,    greater         ],
                        [ dead_abovedot,dead_circumflex ]       };
    key <AB10> {        [     slash,    question        ],
                        [   dead_hook,  dead_hook       ]       };

    key <AC01> {        [         a,    A               ],
                        [ adiaeresis,   Adiaeresis      ]       };
    key <AC02> {        [         s,    S               ],
                        [    ssharp,    paragraph       ]       };
    key <AC10> {        [ semicolon,    colon           ],
                        [ odiaeresis,   Odiaeresis      ]       };
    key <AC11> {        [ quoteright,   quotedbl        ],
                        [    adiaresis, Adiaresis       ]       };
    key <AD03> {        [         e,    E               ],
                        [ EuroSign,     cent            ]       };
    key <AD07> {        [         u,    U               ],
                        [ udiaeresis,   Udiaeresis      ]       };
    key <AD09> {        [         o,    O               ],
                        [ odiaeresis,   Odiaeresis      ]       };
    key <AD11> {        [ bracketleft,  braceleft       ],
                        [ udiaeresis,   Udiaeresis      ]       };

    key <AB08> {        [     comma,    less            ],
                        [ guillemotleft                 ]       };
    key <AB09> {        [    period,    greater         ],
                        [ guillemotright                ]       };
    key <AB10> {        [     slash,    question        ],
                        [ questiondown                  ]       };


    // End alphanumeric section
};

TIA, Frank


-- 
Frank Küster
Inst. f. Biochemie der Univ. Zürich
Debian Developer

Antwort per Email an