Comment 23 for bug 198759

Revision history for this message
Franck (alci) wrote :

I am trying to figure out how to "define a new type in
/usr/share/X11/xkb/types/extra that does the same thing as the current type used for the space key with right-ctrl hardcoded instead of using iso_level5".

Current type used for the space key is EIGHT_LEVEL, as defined in "level4n" in symbols/nbsp.

So I try to duplicate EIGHT_LEVEL (defined in types/level5) and append this to types/extra.
But the syntax is not clear to me. Here is how EIGHT_LEVEL is defined:

   virtual_modifiers LevelThree,ScrollLock,LevelFive;

    type "EIGHT_LEVEL" {
        modifiers = Shift+LevelThree+LevelFive;
        map[None] = Level1;
        map[Shift] = Level2;
        map[LevelThree] = Level3;
        map[Shift+LevelThree] = Level4;
        map[LevelFive] = Level5;
        map[Shift+LevelFive] = Level6;
        map[LevelThree+LevelFive] = Level7;
        map[Shift+LevelThree+LevelFive] = Level8;
        level_name[Level1] = "Base";
        level_name[Level2] = "Shift";
        level_name[Level3] = "Alt Base";
        level_name[Level4] = "Shift Alt";
        level_name[Level5] = "X";
        level_name[Level6] = "X Shift";
        level_name[Level7] = "X Alt Base";
        level_name[Level8] = "X Shift Alt";
    };

SO we have three types of entries is this file,

- modifiers =
- map[ ] =
- level_name[ ] =

The question is, how to "hardcode" rctrl in this type entry, instead of the current Level5...
If anybody has a clue on this, until now, I couldn't find my way in xkb docs...

(another question is, how can I tell I am effectively getting a narrow non breaking space in an app ?(and not a plain space, or a non breaking space)