The keyboard map I'm used to is not available in my XFree86 4
installation (OpenBSD) and I decided to make it.

I've taken the existing keymaps as examples and made the patches I'm
attaching. I'm afraid I could miss something, so let me know and I'll
fix it.

The keymap name is es_MX because it is a Mexican variation of the Spanish
keymap, but it is usually called "Latinamerican" keymap too, because it is
used in the rest of the Spanish speaking Am�rica.

Thanks in advance for any comments or the eventual committing.

P.S. The patches are "diff -u", relative to the X root.

-- 
ISC. Gerardo Santana G�mez Garrido
http://www.openbsd.org.mx/~santana/
OpenBSD M�xico
partial default alphanumeric_keys 
xkb_symbols "basic" {

    name[Group1]= "Spanish";

    key <TLDE> {        [             bar,          degree      ]       };
    key <LSGT> {        [            less,         greater      ]       };
    key <AE01> {        [               1,      exclam          ]       };
    key <AE02> {        [               2,        quotedbl      ]       };
    key <AE03> {        [               3,  numbersign          ]       };
    key <AE04> {        [               4,          dollar      ]       };
    key <AE06> {        [               6,       ampersand      ]       };
    key <AE07> {        [               7,           slash      ]       };
    key <AE08> {        [               8,       parenleft      ]       };
    key <AB08> {        [           comma,       semicolon      ]       };
    key <AE10> {        [               0,           equal      ]       };
    key <AE09> {        [               9,      parenright      ]       };
    key <AB09> {        [          period,           colon      ]       };
    key <AB10> {        [           minus,      underscore      ]       };
    key <AC10> {        [          ntilde,          Ntilde      ]       };
    key <AE11> {        [      apostrophe,        question      ],
                        [       backslash                       ]       };
    key <AC11> {        [      braceleft,  bracketleft          ],      
                        [       dead_circumflex                 ]       };
    key <BKSL> {        [        braceright,        bracketright        ],
                        [      dead_grave                       ]       };
    key <AD11> {        [      dead_acute, dead_diaeresis       ]       };
    key <AE12> {        [      questiondown,    exclamdown      ]       };
    key <AD12> {        [            plus,        asterisk      ],
                        [    asciitilde                         ]       };
    key <AD01> {        [               q,               Q      ],
                        [    at                         ]       };

    // End alphanumeric section

    // Begin modifier mappings
    modifier_map Shift  { Shift_L };
    modifier_map Lock   { Caps_Lock };
    modifier_map Control{ Control_L };
    modifier_map Mod3   { Mode_switch };
};

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

    key <AC11> {        [     SunFA_Acute, SunFA_Diaeresis      ],      
                        [       braceleft,       braceleft      ]       };
    key <AD11> {        [     SunFA_Grave,    SunFA_Circum      ],      
                        [     bracketleft,  dead_abovering      ]       };
};

partial alphanumeric_keys 
xkb_symbols "sundeadkeys" {
    include "es_MX(Sundeadkeys)"
};

partial alphanumeric_keys 
xkb_symbols "nodeadkeys" {
    include "es_MX(basic)"

    key <AC11> {        [      braceleft,  bracketleft          ],      
                        [       circumflex                      ]       };
    key <BKSL> {        [        braceright,        bracketright        ],
                        [      grave                            ]       };
    key <AD11> {        [      acute, diaeresis                 ]       };
};
--- lib/X11/xkb/keymap.dir.orig Fri Mar 29 03:43:25 2002
+++ lib/X11/xkb/keymap.dir      Fri Mar 29 03:43:56 2002
@@ -188,6 +188,7 @@
 -------- -------- xfree86(dk)
 -------- -------- xfree86(dvorak)
 -------- -------- xfree86(es)
+-------- -------- xfree86(es_MX)
 -------- -------- xfree86(fr)
 -------- -------- xfree86(fr_CA)
 -------- -------- xfree86(gb)
--- lib/X11/xkb/symbols.dir.orig        Fri Mar 29 03:31:00 2002
+++ lib/X11/xkb/symbols.dir     Fri Mar 29 03:31:47 2002
@@ -119,6 +119,10 @@
 --p----- a------- es(Sundeadkeys)
 --p----- a------- es(sundeadkeys)
 --p----- a------- es(nodeadkeys)
+-dp----- a------- es_MX(basic)
+--p----- a------- es_MX(Sundeadkeys)
+--p----- a------- es_MX(sundeadkeys)
+--p----- a------- es_MX(nodeadkeys)
 --p----- a------- fi(basic)
 --p----- a------- fi(Sundeadkeys)
 --p----- a------- fi(sundeadkeys)
--- lib/X11/xkb/keymap/xfree86.orig     Fri Mar 29 03:42:10 2002
+++ lib/X11/xkb/keymap/xfree86  Fri Mar 29 03:43:01 2002
@@ -75,6 +75,13 @@
     xkb_symbols                { include "en_US(pc105)+es"     };
     xkb_geometry       { include "pc(pc102)"           };
 };
+xkb_keymap "es_MX"     {
+    xkb_keycodes       { include "xfree86"             };
+    xkb_types          { include "default"             };
+    xkb_compatibility  { include "default"             };
+    xkb_symbols                { include "en_US(pc105)+es_MX"  };
+    xkb_geometry       { include "pc(pc102)"           };
+};
 xkb_keymap "fr"        {
     xkb_keycodes       { include "xfree86"             };
     xkb_types          { include "default"             };

Reply via email to