
// based on 
// "a very simple Brasilian ABNT2 keybaord
// by Ricardo Y. Igarashi (iga@that.com.br)
// Adds suport for dead-keys in I18N applications
// by Conectiva  (http://www.conectiva.com.br)"
//
// $XFree86: xc/programs/xkbcomp/symbols/pc/br,v 1.2 2002/11/22 04:03:28 dawes Exp $

xkb_symbols "abnt2" {

    include "pc/latin"

    name[Group1]="Brazilian";

    key <AE02>	{ [         2,         at,  twosuperior,      onehalf ]	};
    key <AE03>	{ [         3, numbersign, threesuperior, threequarters ] };
    key <AE04>	{ [         4,     dollar,     sterling,   onequarter ]	};
    key <AE05>	{ [         5,    percent,         cent, threeeighths ]	};
    key <AE06>	{ [         6, dead_diaeresis,  notsign,    diaeresis ]	};
    key <AE12>	{ [     equal,       plus,      section,  dead_ogonek ]	};

    key <AD03>	{ [         e,          E,     EuroSign,     EuroSign ]	};
    key <AD04>	{ [         r,          R,   registered,   registered ]	};
    key <AD11>	{ [dead_acute, dead_grave,        acute,        grave ]	};
    key <AD12>	{ [bracketleft,  braceleft, ordfeminine,  dead_macron ]	};

    key <AC10>	{ [  ccedilla,   Ccedilla,  dead_acute, dead_doubleacute] };
    key <AC11>	{ [dead_tilde, dead_circumflex, asciitilde, asciicircum ] };
    key <TLDE>	{ [apostrophe,   quotedbl,      notsign,      notsign ]	};

    key <BKSL>	{ [ backslash,        bar,    masculine,   dead_breve ]	};
    key <AB03>	{ [         c,          C,    copyright,    copyright ]	};
    key <AB10>	{ [ semicolon,    colon, dead_belowdot, dead_abovedot ]	};

// ABNT-2 keyboard has this special key

    key <AB11>	{ type[Group1] = "FOUR_LEVEL",
                  [     slash,   question,       degree, questiondown ]	};

    key <KPPT>	{ [KP_Decimal ]	};
    key <KPDL>	{ [ KP_Delete,      comma ]	};

    key <RALT>  { type[Group1]="TWO_LEVEL",
                  [ ISO_Level3_Shift, Multi_key ]   };
    modifier_map Mod5   { <RALT> };
};

partial alphanumeric_keys
xkb_symbols "nodeadkeys" {

    include "pc/br(abnt2)" // for consistent naming


    key <AE06>	{ [         6,  diaeresis,      notsign,      notsign ]	};
    key <AD11>	{ [apostrophe,      grave ]	};
    key <AC10>	{ [  ccedilla,   Ccedilla,        acute,  doubleacute ]	};
    key <AC11>	{ [asciitilde, asciicircum ]	};
    key <AB10>	{ [ semicolon,      colon, dead_belowdot,    abovedot ]	};
};
