1// Modified for a real Spanish keyboard by Jon Tombs. 2 3default partial alphanumeric_keys 4xkb_symbols "basic" { 5 6 include "latin(type4)" 7 8 name[Group1]="Spanish"; 9 10 key <AE01> { [ 1, exclam, bar, exclamdown ] }; 11 key <AE03> { [ 3, periodcentered, numbersign, sterling ] }; 12 key <AE04> { [ 4, dollar, asciitilde, dollar ] }; 13 key <AE06> { [ 6, ampersand, notsign, fiveeighths ] }; 14 key <AE11> { [apostrophe, question, backslash, questiondown ] }; 15 key <AE12> { [exclamdown, questiondown, dead_tilde, asciitilde ] }; 16 17 key <AD11> { [dead_grave, dead_circumflex, bracketleft, dead_abovering ] }; 18 key <AD12> { [ plus, asterisk, bracketright, dead_macron ] }; 19 20 key <AC10> { [ ntilde, Ntilde, asciitilde, dead_doubleacute ] }; 21 key <AC11> { [dead_acute, dead_diaeresis, braceleft, braceleft ] }; 22 key <TLDE> { [ masculine, ordfeminine, backslash, backslash ] }; 23 24 key <BKSL> { [ ccedilla, Ccedilla, braceright, dead_breve ] }; 25 26 include "level3(ralt_switch)" 27}; 28 29partial alphanumeric_keys 30xkb_symbols "winkeys" { 31 32 include "es(basic)" 33 name[Group1]="Spanish (Windows)"; 34 include "eurosign(5)" 35}; 36 37partial alphanumeric_keys 38xkb_symbols "nodeadkeys" { 39 40 include "es(basic)" 41 42 name[Group1]="Spanish (no dead keys)"; 43 44 key <AD11> { [ grave, asciicircum, bracketleft, degree ] }; 45 key <AD12> { [ plus, asterisk, bracketright, macron ] }; 46 key <AC10> { [ ntilde, Ntilde, asciitilde, doubleacute ] }; 47 key <AC11> { [ acute, diaeresis, braceleft, braceleft ] }; 48 key <BKSL> { [ ccedilla, Ccedilla, braceright, breve ] }; 49 key <AB10> { [ minus, underscore, dead_belowdot, abovedot ] }; 50}; 51 52// Spanish mapping (note R-H exchange) 53partial alphanumeric_keys 54xkb_symbols "dvorak" { 55 56 name[Group1]="Spanish (Dvorak)"; 57 58 key <TLDE> {[ masculine, ordfeminine, backslash, degree ]}; 59 key <AE01> {[ 1, exclam, bar, onesuperior ]}; 60 key <AE02> {[ 2, quotedbl, at, twosuperior ]}; 61 key <AE03> {[ 3, periodcentered, numbersign, threesuperior ]}; 62 key <AE04> {[ 4, dollar, asciitilde, onequarter ]}; 63 key <AE05> {[ 5, percent, brokenbar, fiveeighths ]}; 64 key <AE06> {[ 6, ampersand, notsign, threequarters ]}; 65 key <AE07> {[ 7, slash, onehalf, seveneighths ]}; 66 key <AE08> {[ 8, parenleft, oneeighth, threeeighths ]}; 67 key <AE09> {[ 9, parenright, asciicircum ]}; 68 key <AE10> {[ 0, equal, grave, dead_doubleacute ]}; 69 key <AE11> {[ apostrophe, question, dead_macron, dead_ogonek ]}; 70 key <AE12> {[ exclamdown, questiondown, dead_breve, dead_abovedot ]}; 71 72 key <AD01> {[ period, colon, less, guillemotleft ]}; 73 key <AD02> {[ comma, semicolon, greater, guillemotright ]}; 74 key <AD03> {[ ntilde, Ntilde, lstroke, Lstroke ]}; 75 key <AD04> {[ p, P, paragraph ]}; 76 key <AD05> {[ y, Y, yen ]}; 77 key <AD06> {[ f, F, tslash, Tslash ]}; 78 key <AD07> {[ g, G, dstroke, Dstroke ]}; 79 key <AD08> {[ c, C, cent, copyright ]}; 80 key <AD09> {[ h, H, hstroke, Hstroke ]}; 81 key <AD10> {[ l, L, sterling ]}; 82 key <AD11> {[ dead_grave, dead_circumflex, bracketleft, dead_caron ]}; 83 key <AD12> {[ plus, asterisk, bracketright, plusminus ]}; 84 85 key <AC01> {[ a, A, ae, AE ]}; 86 key <AC02> {[ o, O, oslash, Oslash ]}; 87 key <AC03> {[ e, E, EuroSign ]}; 88 key <AC04> {[ u, U, aring, Aring ]}; 89 key <AC05> {[ i, I, oe, OE ]}; 90 key <AC06> {[ d, D, eth, ETH ]}; 91 key <AC07> {[ r, R, registered, trademark ]}; 92 key <AC08> {[ t, T, thorn, THORN ]}; 93 key <AC09> {[ n, N, eng, ENG ]}; 94 key <AC10> {[ s, S, ssharp, section ]}; 95 key <AC11> {[ dead_acute, dead_diaeresis, braceleft, dead_tilde ]}; 96 key <BKSL> {[ ccedilla, Ccedilla, braceright, dead_cedilla ]}; 97 98 key <LSGT> {[ less, greater, guillemotleft, guillemotright ]}; 99 key <AB01> {[ minus, underscore, hyphen, macron ]}; 100 key <AB02> {[ q, Q, currency ]}; 101 key <AB03> {[ j, J ]}; 102 key <AB04> {[ k, K, kra ]}; 103 key <AB05> {[ x, X, multiply, division ]}; 104 key <AB06> {[ b, B ]}; 105 key <AB07> {[ m, M, mu ]}; 106 key <AB08> {[ w, W ]}; 107 key <AB09> {[ v, V ]}; 108 key <AB10> {[ z, Z ]}; 109 110 include "level3(ralt_switch)" 111}; 112 113partial alphanumeric_keys 114xkb_symbols "cat" { 115 116 include "es(basic)" 117 118 name[Group1]="Catalan (Spain, with middle-dot L)"; 119 120 key <AC09> { [ l, L, 0x1000140, 0x100013F ] }; 121}; 122 123partial alphanumeric_keys 124xkb_symbols "ast" { 125 126 include "es(basic)" 127 128 name[Group1]="Asturian (Spain, with bottom-dot H and L)"; 129 130 key <AC06> { [ h, H, 0x1001E25, 0x1001E24 ] }; 131 key <AC09> { [ l, L, 0x1001E37, 0x1001E36 ] }; 132}; 133 134// Copied from macintosh_vndr/es 135partial alphanumeric_keys 136xkb_symbols "mac" { 137 include "es" 138 name[Group1]= "Spanish (Macintosh)"; 139}; 140 141partial alphanumeric_keys 142xkb_symbols "olpc" { 143 144 // http://wiki.laptop.org/go/OLPC_Spanish_Keyboard 145 146 include "us(basic)" 147 name[Group1]="Spanish"; 148 149 key <AE00> { [ masculine, ordfeminine ] }; 150 key <AE01> { [ 1, exclam, bar ] }; 151 key <AE02> { [ 2, quotedbl, at ] }; 152 key <AE03> { [ 3, dead_grave, numbersign, grave ] }; 153 key <AE05> { [ 5, percent, asciicircum, dead_circumflex ] }; 154 key <AE06> { [ 6, ampersand, notsign ] }; 155 key <AE07> { [ 7, slash, backslash ] }; 156 key <AE08> { [ 8, parenleft ] }; 157 key <AE09> { [ 9, parenright ] }; 158 key <AE10> { [ 0, equal ] }; 159 key <AE11> { [ apostrophe, question ] }; 160 key <AE12> { [ exclamdown, questiondown ] }; 161 162 key <AD03> { [ e, E, EuroSign ] }; 163 key <AD11> { [ dead_acute, dead_diaeresis, acute, dead_abovering ] }; 164 key <AD12> { [ bracketleft, braceleft ] }; 165 166 key <AC10> { [ ntilde, Ntilde ] }; 167 key <AC11> { [ plus, asterisk, dead_tilde ] }; 168 key <AC12> { [ bracketright, braceright, section ] }; 169 170 key <AB08> { [ comma, semicolon ] }; 171 key <AB09> { [ period, colon ] }; 172 key <AB10> { [ minus, underscore ] }; 173 174 key <I219> { [ less, greater, ISO_Next_Group ] }; 175 176 include "level3(ralt_switch)" 177}; 178 179partial alphanumeric_keys 180xkb_symbols "olpcm" { 181 182 // Mechanical (non-membrane) OLPC Spanish keyboard layout. 183 // See: http://wiki.laptop.org/go/OLPC_Spanish_Non-membrane_Keyboard 184 185 include "us(basic)" 186 name[Group1]="Spanish"; 187 188 key <AE00> { [ questiondown, exclamdown, backslash ] }; 189 key <AE01> { [ 1, exclam, bar ] }; 190 key <AE02> { [ 2, quotedbl, at ] }; 191 key <AE03> { [ 3, dead_grave, numbersign, grave ] }; 192 key <AE04> { [ 4, dollar, asciitilde, dead_tilde ] }; 193 key <AE05> { [ 5, percent, asciicircum, dead_circumflex ] }; 194 key <AE06> { [ 6, ampersand, notsign ] }; 195 key <AE07> { [ 7, slash, backslash ] }; // no '\' label on olpcm, leave for compatibility 196 key <AE08> { [ 8, parenleft, masculine ] }; 197 key <AE09> { [ 9, parenright, ordfeminine ] }; 198 key <AE10> { [ 0, equal ] }; 199 key <AE11> { [ apostrophe, question ] }; 200 201 key <AD03> { [ e, E, EuroSign ] }; 202 key <AD11> { [ dead_acute, dead_diaeresis, dead_abovering, acute ] }; 203 key <AD12> { [ plus, asterisk ] }; 204 205 key <AC10> { [ ntilde, Ntilde ] }; 206 // no AC11 or AC12 on olpcm 207 208 key <AB08> { [ comma, semicolon ] }; 209 key <AB09> { [ period, colon ] }; 210 key <AB10> { [ minus, underscore ] }; 211 212 key <AA02> { [ less, greater ] }; 213 key <AA06> { [ bracketleft, braceleft, ccedilla, Ccedilla ] }; 214 key <AA07> { [ bracketright, braceright ] }; 215 216 include "level3(ralt_switch)" 217}; 218 219partial alphanumeric_keys 220xkb_symbols "deadtilde" { 221 222 include "es(basic)" 223 224 name[Group1]="Spanish (dead tilde)"; 225 226 key <AE04> { [ 4, dollar, dead_tilde, dollar ] }; 227}; 228 229partial alphanumeric_keys 230xkb_symbols "olpc2" { 231 232 // Modified variant of US International layout, specifically for Peru 233 // Contact: Sayamindu Dasgupta <sayamindu@laptop.org> 234 235 include "us(olpc)" 236 name[Group1]="Spanish (OLPC2)"; 237 238 key <AE03> { [ 3, numbersign, dead_grave, dead_grave] }; // combining grave 239 key <I236> { [ XF86Start ] }; 240 241 include "level3(ralt_switch)" 242}; 243 244// EXTRAS: 245 246partial alphanumeric_keys 247 xkb_symbols "sun_type6" { 248 include "sun_vndr/es(sun_type6)" 249}; 250