// based on a keyboard
// Modified for a real Latin American Keyboard by Fabian Mandelbaum

partial default alphanumeric_keys
xkb_symbols "basic" {

    include "latin(type4)"

    name[Group1]="Spanish (Latin American)";

    key <AE01>	{ [         1,     exclam,          bar,   exclamdown ]	};
    key <AE03>	{ [         3, numbersign, periodcentered,   sterling ]	};
    key <AE04>	{ [         4,     dollar,   asciitilde,       dollar ]	};
    key <AE06>	{ [         6,  ampersand,      notsign,  fiveeighths ]	};
    key <AE11>	{ [apostrophe,   question,    backslash, questiondown ]	};
    key <AE12>	{ [questiondown, exclamdown, dead_cedilla, dead_ogonek]	};

    key <AD11>	{ [dead_acute, dead_diaeresis, dead_diaeresis, dead_abovering ]	};
    key <AD12>	{ [      plus,   asterisk,   asciitilde,  dead_macron ]	};

    key <AC10>	{ [    ntilde,     Ntilde,   asciitilde, dead_doubleacute ] };
    key <AC11>	{ [ braceleft, bracketleft, dead_circumflex, braceleft]	};
    key <TLDE>	{ [       bar,     degree,      notsign,      notsign ]	};

    key <BKSL>	{ [braceright, bracketright, dead_grave,   braceright ]	};

    include "level3(ralt_switch)"
};

partial alphanumeric_keys
xkb_symbols "Sundeadkeys" {
    include "latam(basic)"

    key <AC11>	{ [dead_acute, dead_diaeresis, braceleft, braceleft ]	};
    key <AD11>	{ [dead_grave, dead_circumflex, bracketleft, dead_abovering ] };
};

partial alphanumeric_keys
xkb_symbols "sundeadkeys" {
    include "latam(Sundeadkeys)"
    name[Group1]="Spanish (Latin American, Sun dead keys)";
};

partial alphanumeric_keys
xkb_symbols "nodeadkeys" {

    include "latam(basic)"

    name[Group1]="Spanish (Latin American, eliminate dead keys)";

    key <AE12>	{ [questiondown, exclamdown,    cedilla,       ogonek ]	};
    key <AD11>	{ [     grave, asciicircum, bracketleft,       degree ]	};
    key <AD12>	{ [      plus,   asterisk, bracketright,       macron ]	};
    key <AC10>	{ [    ntilde,     Ntilde,   asciitilde,  doubleacute ]	};
    key <AC11>	{ [     acute,  diaeresis,    braceleft,    braceleft ]	};
    key <BKSL>	{ [  ccedilla,   Ccedilla,   braceright,        breve ]	};
    key <AB10>	{ [     minus, underscore, dead_belowdot,    abovedot ]	};
};

partial alphanumeric_keys
xkb_symbols "deadtilde" {

    include "latam(basic)"

    name[Group1]="Spanish (Latin American, include dead tilde)";

    key <AD12>	{ [      plus,   asterisk,   dead_tilde,  dead_macron ]	};
};
