partial default alphanumeric_keys  
xkb_symbols "basic" {

    include "us"

    name[Group1]= "English (Nigeria)";
    key <AE04> { [          4, 0x010020A6,     dollar,       cent ] };
    include "level3(ralt_switch)"
};

partial alphanumeric_keys
xkb_symbols "yoruba" {
    include "ng(basic)"

    name[Group1]= "Yoruba";

    key <AD01> { [ 0x01001EB9, 0x01001EB8,          q,          Q ] };
    key <AB02> { [ 0x01001ECD, 0x01001ECC,          x,          X ] }; 
    key <AB04> { [ 0x01001E63, 0x01001E62,          v,          V ] }; 
};

partial alphanumeric_keys
xkb_symbols "igbo" {
    include "ng(basic)"

    name[Group1]= "Igbo";

    key <AD01> { [ 0x01001ECB, 0x01001ECA,          q,          Q ] };
    key <AB02> { [ 0x01001E45, 0x01001E44,          x,          X ] }; 
    key <AC10> { [ 0x01001EE5, 0x01001EE4,   semicolon,	    colon ] };
    key <AD11> { [ 0x01001ECD, 0x01001ECC, bracketleft, braceleft ] };		 
};

partial alphanumeric_keys
xkb_symbols "hausa" {
    include "ng(basic)"

    name[Group1]= "Hausa";

    key <AD01> { [ 0x01000071, 0x01000051,          q,          Q ] };
    key <AD02> { [ udiaeresis, Udiaeresis,          w,          W ] };
    key <AD03> { [          e,          E,   EuroSign,       cent ] };
    key <AD11> { [ 0x010001B4, 0x010001B3,bracketleft,  braceleft ] };
    key <AD12> { [     gcaron,     Gcaron,bracketright, braceright] };
    key <AC03> { [ 0x01000257, 0x0100018A,         d,           D ] };
    key <AC10> { [ 0x01000131, 0x01000130, semicolon,       colon ] };
    key <AC11> { [ 0x010001DD, 0x0100018E,apostrophe,    quotedbl ] };
    key <AB01> { [ 0x01000272, 0x0100019D,         z,           Z ] };
    key <AB07> { [     ntilde,     Ntilde,         m,           M ] };
    key <AB09> { [   ccedilla,   Ccedilla,    period,     greater ] };
    key <AB10> { [   scedilla,   Scedilla,     slash,    question ] };

};

partial alphanumeric_keys
xkb_symbols "olpc" {

   include "ng(basic)"

   // OLPC West Africa keyboard layout
   // See: http://wiki.laptop.org/go/Image:Nigeria-B3.png

   key <TLDE> { [     grave, asciitilde,    exclamdown,       exclamdown ] };
   key <AE01> { [         1,     exclam,      sterling,         sterling ] };
   key <AE02> { [         2,         at,      EuroSign,         EuroSign ] };
   key <AE03> { [         3, numbersign,        dollar,          dollar ] };
   key <AE04> { [         4,  0x10020A6,     0x1000301,        0x1000301 ] }; // Naira, combining acute
   key <AE05> { [         5,    percent,     0x1000300,        0x1000300 ] }; // combining grave
   key <AE06> { [         6,asciicircum,     0x100030A,        0x100030A ] }; // combining ring above
   key <AE07> { [         7,  ampersand,     0x1000302,        0x1000302 ] }; // combining circumflex above
   key <AE08> { [         8,   asterisk,     0x1000324,        0x1000324 ] }; // combining caron above
   key <AE09> { [         9,  parenleft,     0x1000307,        0x1000307 ] }; // combining dot above
   key <AE10> { [         0, parenright,     0x1000308,        0x1000308 ] }; // combining diaeresis above
   key <AE11> { [     minus, underscore,     0x1000304,        0x1000304 ] }; // combining macron above
   key <AE12> { [     equal,       plus,     0x1000303,        0x1000303 ] }; // combining tilde above

   key <AD02> { [         w,          W,     0x1001EB9, 0x1001EB8 ] }; // E with dot below
   key <AD03> { [         e,          E,     0x10001DD, 0x100018E ] }; // reversed E
   key <AD04> { [         r,          R,     0x10001B4, 0x10001B3 ] }; // Y with hook
   key <AD05> { [         t,          T,     0x1000327, 0x1000327 ] }; // combining cedilla
   key <AD06> { [         y,          Y,     0x1000325, 0x1000325 ] }; // combining ring below
   key <AD07> { [         u,          U,     0x100032D, 0x100032D ] }; // combining circumflex below
   key <AD08> { [         i,          I,     0x100032C, 0x100032C ] }; // combining caron below
   key <AD09> { [         o,          O,     0x1000323, 0x1000323 ] }; // combining dot below
   key <AD10> { [         p,          P,     0x1000304, 0x1000304 ] }; // combining diaeresis below
   key <AD11> { [ bracketleft,  braceleft,   0x1000331, 0x1000331 ] }; // combining macron below
   key <AD12> { [bracketright, braceright,   0x1000330, 0x1000330 ] }; // combining tilde below

   key <AC01>  { [         a,          A,   Greek_iota,       Greek_IOTA ] };
   key <AC02>  { [        s,          S,    0x1001E63,        0x1001E62 ] }; // S with dot below
   key <AC03>  { [         d,          D,    0x1000257,        0x100018A ] }; // D with hook
   key <AC04>  { [        f,          F,    0x1001E0D,        0x1001E0C ] }; // D with dot below
   key <AC05>  { [         g,          G,    0x1000272,               0x100019D ] }; // N with left hook
   key <AC06>  { [         h,          H,    0x1001EE5,               0x1001EE4 ] }; // U with dot below
   key <AC07>  { [         j,          J,    0x1001ECB,               0x1001ECA ] }; // I with dot below
   key <AC08>  { [         k,          K,    0x1000199,               0x1000198 ] }; // K with hook
   key <AC09>  { [         l,          L,    0x1001E37,        0x1001E36 ] }; // L with dot below
   key <AC10>  { [ semicolon,      colon,    masculine,      ordfeminine ] };
   key <AC11>  { [ apostrophe,  quotedbl,     currency,         currency ] };
   key <BKSL>  { [ backslash,        bar,      section,          section ] };

   key <AB03>  { [         c,          C,    0x1000254,        0x1000186 ] }; // open O
   key <AB04>  { [         v,          V,    0x100028B,        0x10001B2 ] }; // V with hook
   key <AB05>  { [         b,          B,    0x1000253,               0x1000181 ] }; // B with hook
   key <AB06>  { [         n,          N,          eng,                     ENG ] };
   key <AB07>  { [         m,          M,    0x1001E45,        0x1001E44 ] }; // N with dot above
   key <AB08>  { [     comma,     less, guillemotleft,   guillemotleft ] };
   key <AB09>  { [    period, greater, guillemotright,  guillemotright ] };
   key <AB10>  { [     slash,   question, questiondown,     questiondown ] };

   key <I219>  { [  multiply,   division, ISO_Next_Group, ISO_Prev_Group ] };

   include "level3(ralt_switch)"
};
