1default 2xkb_symbols "abnt2" { 3 4 // Based on a very simple Brazilian ABNT2 keyboard, 5 // by Ricardo Y. Igarashi (iga@that.com.br). 6 // With added support for dead keys in I18N applications, 7 // by Conectiva (http://www.conectiva.com.br). 8 9 include "latin" 10 name[Group1]="Portuguese (Brazil)"; 11 12 key <TLDE> { [ apostrophe, quotedbl, notsign, notsign ] }; 13 key <AE02> { [ 2, at, twosuperior, onehalf ] }; 14 key <AE03> { [ 3, numbersign, threesuperior, threequarters ] }; 15 key <AE04> { [ 4, dollar, sterling, onequarter ] }; 16 key <AE05> { [ 5, percent, cent, threeeighths ] }; 17 key <AE06> { [ 6, dead_diaeresis, notsign, diaeresis ] }; 18 key <AE12> { [ equal, plus, section, dead_ogonek ] }; 19 20 key <AD01> { [ q, Q, slash, slash ] }; 21 key <AD02> { [ w, W, question, question ] }; 22 key <AD03> { [ e, E, degree, degree ] }; 23 key <AD04> { [ r, R, registered, registered ] }; 24 key <AD11> { [ dead_acute, dead_grave, acute, grave ] }; 25 key <AD12> { [ bracketleft, braceleft, ordfeminine, dead_macron ] }; 26 key <BKSL> { [ bracketright, braceright, masculine, masculine ] }; 27 28 key <AC10> { [ ccedilla, Ccedilla, dead_acute,dead_doubleacute ] }; 29 key <AC11> { [ dead_tilde,dead_circumflex, asciitilde, asciicircum ] }; 30 31 key <LSGT> { [ backslash, bar, dead_caron, dead_breve ] }; 32 key <AB03> { [ c, C, copyright, copyright ] }; 33 key <AB07> { [ m, M, mu, mu ] }; 34 key <AB10> { [ semicolon, colon, dead_belowdot, dead_abovedot ] }; 35 36 // The ABNT-2 keyboard has this special key: 37 key <AB11> { [ slash, question, degree, questiondown ] }; 38 39 modifier_map Mod3 { Scroll_Lock }; 40 41 include "kpdl(comma)" 42 43 include "level3(ralt_switch)" 44}; 45 46partial alphanumeric_keys 47xkb_symbols "nodeadkeys" { 48 49 include "br(abnt2)" 50 name[Group1]="Portuguese (Brazil, no dead keys)"; 51 52 key <AE06> { [ 6, diaeresis, notsign, notsign ] }; 53 key <AD11> { [ apostrophe, grave ] }; 54 key <AC10> { [ ccedilla, Ccedilla, acute, doubleacute ] }; 55 key <AC11> { [ asciitilde, asciicircum ] }; 56 key <AB10> { [ semicolon, colon, dead_belowdot, abovedot ] }; 57}; 58 59 60// The ABNT2 keyboard on IBM/Lenovo Thinkpads, 61// by Piter PUNK <piterpk@terra.com.br>. 62// 63partial alphanumeric_keys 64xkb_symbols "thinkpad" { 65 66 include "br(abnt2)" 67 name[Group1]="Portuguese (Brazil, IBM/Lenovo ThinkPad)"; 68 69 key <RCTL> { [ slash, question, degree, questiondown ] }; 70}; 71 72 73partial alphanumeric_keys 74xkb_symbols "olpc" { 75 76 include "us(basic)" 77 name[Group1]="Portuguese (Brazil)"; 78 79 key <TLDE> { [ apostrophe, quotedbl ] }; 80 key <AE01> { [ 1, exclam, onesuperior ] }; 81 key <AE02> { [ 2, at, twosuperior ] }; 82 key <AE03> { [ 3, numbersign, threesuperior ] }; 83 key <AE04> { [ 4, dollar, sterling ] }; 84 key <AE05> { [ 5, percent, cent ] }; 85 key <AE06> { [ 6, dead_diaeresis, notsign ] }; 86 key <AE12> { [ equal, plus, section ] }; 87 88 key <AD03> { [ e, E, EuroSign ] }; 89 key <AD11> { [ dead_acute, dead_grave, acute, grave ] }; 90 key <AD12> { [ bracketleft, braceleft, 0x10000AA ] }; 91 key <BKSL> { [ bracketright, braceright, 0x10000BA ] }; 92 93 key <AC10> { [ ccedilla, Ccedilla ] }; 94 key <AC11> { [ dead_tilde, dead_circumflex ] }; 95 96 key <AB01> { [ z, Z, bar ] }; 97 key <AB03> { [ c, C, 0x10020A2 ] }; 98 key <AB09> { [ period, greater, backslash ] }; 99 key <AB10> { [ semicolon, colon ] }; 100 101 key <I219> { [ slash, question, degree, ISO_Next_Group ] }; 102 103 include "level3(ralt_switch)" 104}; 105 106 107// 108// Brazilian Dvorak layout 2005-04-18 109// "Teclado Simplificado Brasileiro" ou "Dvorak Brasileiro" 110// 111// Heitor Moraes heitor.moraes@gmail.com 112// Luiz Portella lfpor@lujz.org 113// Nando Florestan nando2003@mandic.com.br 114// Ari Caldeira ari@tecladobrasileiro.com.br 115// 116partial alphanumeric_keys 117xkb_symbols "dvorak" { 118 119 name[Group1]="Portuguese (Brazil, Dvorak)"; 120 121// Numeric row 122 key <TLDE> { [ apostrophe, quotedbl, dead_caron, dead_doubleacute ] }; 123 key <AE01> { [ 1, exclam, onesuperior, exclamdown ] }; 124 key <AE02> { [ 2, at, twosuperior, onehalf ] }; 125 key <AE03> { [ 3, numbersign, threesuperior, threequarters ] }; 126 key <AE04> { [ 4, dollar, sterling, onequarter ] }; 127 key <AE05> { [ 5, percent, cent, 0x01002030 ] }; 128 key <AE06> { [ 6, dead_diaeresis, notsign, diaeresis ] }; 129 key <AE07> { [ 7, ampersand, dead_belowdot, dead_abovedot ] }; 130 key <AE08> { [ 8, asterisk, dead_ogonek, dead_horn ] }; 131 key <AE09> { [ 9, parenleft, dead_cedilla, dead_hook ] }; 132 key <AE10> { [ 0, parenright, dead_macron, dead_breve ] }; 133 key <AE11> { [ bracketleft, braceleft, ordfeminine, 0x01000326 ] }; 134 key <AE12> { [ bracketright, braceright, masculine, dead_abovering ] }; 135 136 137// Upper row 138 key <AD01> { [ slash, question, degree, questiondown ] }; 139 key <AD02> { [ comma, less, 0x01000329, 0x01000313 ] }; 140 key <AD03> { [ period, greater, 0x01002022, periodcentered ] }; 141 key <AD04> { [ p, P, thorn, THORN ] }; 142 key <AD05> { [ y, Y, yen, yen ] }; 143 key <AD06> { [ f, F, leftdoublequotemark, leftsinglequotemark ] }; 144 key <AD07> { [ g, G, rightdoublequotemark, rightsinglequotemark ] }; 145 key <AD08> { [ c, C, uparrow, copyright ] }; 146 key <AD09> { [ r, R, registered, registered ] }; 147 key <AD10> { [ l, L, lstroke, Lstroke ] }; 148 key <AD11> { [ dead_acute, dead_grave, acute, grave ] }; 149 key <AD12> { [ equal, plus, section, plusminus ] }; 150 151// Central row 152 key <AC01> { [ a, A, ae, AE ] }; 153 key <AC02> { [ o, O, oe, OE ] }; 154 key <AC03> { [ e, E, EuroSign, EuroSign ] }; 155 key <AC04> { [ u, U, oslash, Ooblique ] }; 156 key <AC05> { [ i, I, idotless, Iabovedot ] }; 157 key <AC06> { [ d, D, eth, ETH ] }; 158 key <AC07> { [ h, H, leftarrow, paragraph ] }; 159 key <AC08> { [ t, T, rightarrow, trademark ] }; 160 key <AC09> { [ n, N, eng, ENG ] }; 161 key <AC10> { [ s, S, ssharp, U1E9E ] }; 162 key <AC11> { [ dead_tilde, dead_circumflex, asciitilde, asciicircum ] }; 163 key <BKSL> { [ minus, underscore, 0x01002015, 0x01000336 ] }; 164 165// Lower row 166 key <LSGT> { [ ccedilla, Ccedilla, backslash, bar ] }; 167 key <AB01> { [ semicolon, colon, 0x01000331, 0x0100032D ] }; 168 key <AB02> { [ q, Q, 0x01000259, 0x0100018F ] }; 169 key <AB03> { [ j, J, 0x01000292, 0x010001B7 ] }; 170 key <AB04> { [ k, K, guillemotleft, 0x01002039 ] }; 171 key <AB05> { [ x, X, multiply, division ] }; 172 key <AB06> { [ b, B, guillemotright, 0x0100203A ] }; 173 key <AB07> { [ m, M, downarrow, mu ] }; 174 key <AB08> { [ w, W, ubreve, Ubreve ] }; 175 key <AB09> { [ v, V, doublelowquotemark, singlelowquotemark ] }; 176 key <AB10> { [ z, Z, 0x0100201F, 0x0100201B ] }; 177 key <AB11> { [ backslash, bar, currency, brokenbar ] }; 178 179 key <SPCE> { [ space, space, nobreakspace, nobreakspace ] }; 180 181// Configures the "," for the numeric keypad 182 include "kpdl(comma)" 183 184// Configures the use of the AltGr key 185 include "level3(ralt_switch)" 186}; 187 188 189// 190// Brazilian Nativo layout. 191// This is a Dvorak-based layout, designed for the Portuguese language. 192// 193// Ari Caldeira <ari@tecladobrasileiro.com.br> 2005-07-19 194// 195partial alphanumeric_keys 196xkb_symbols "nativo" { 197 198 name[Group1]="Portuguese (Brazil, Nativo)"; 199 200// Numeric row 201 key <TLDE> { [ equal, plus, section, plusminus ] }; 202 key <AE01> { [ 1, exclam, onesuperior, exclamdown ] }; 203 key <AE02> { [ 2, at, twosuperior, onehalf ] }; 204 key <AE03> { [ 3, numbersign, threesuperior, threequarters ] }; 205 key <AE04> { [ 4, dollar, sterling, onequarter ] }; 206 key <AE05> { [ 5, percent, cent, 0x01002030 ] }; 207 key <AE06> { [ 6, dead_diaeresis, notsign, diaeresis ] }; 208 key <AE07> { [ 7, ampersand, dead_belowdot, dead_abovedot ] }; 209 key <AE08> { [ 8, asterisk, dead_ogonek, dead_horn ] }; 210 key <AE09> { [ 9, parenleft, dead_cedilla, dead_hook ] }; 211 key <AE10> { [ 0, parenright, dead_macron, dead_breve ] }; 212 key <AE11> { [ bracketleft, braceleft, ordfeminine, 0x01000326 ] }; 213 key <AE12> { [ bracketright, braceright, masculine, dead_abovering ] }; 214 215// Upper row 216 key <AD01> { [ slash, question, degree, questiondown ] }; 217 key <AD02> { [ comma, less, 0x01000329, 0x01000313 ] }; 218 key <AD03> { [ period, greater, 0x01002022, periodcentered ] }; 219 key <AD04> { [ h, H, paragraph, paragraph ] }; 220 key <AD05> { [ x, X, multiply, division ] }; 221 key <AD06> { [ w, W, ubreve, Ubreve ] }; 222 key <AD07> { [ l, L, lstroke, Lstroke ] }; 223 key <AD08> { [ t, T, trademark, trademark ] }; 224 key <AD09> { [ c, C, copyright, copyright ] }; 225 key <AD10> { [ p, P, thorn, THORN ] }; 226 key <AD11> { [ dead_tilde, dead_circumflex, asciitilde, asciicircum ] }; 227 key <AD12> { [ minus, underscore, 0x01002015, 0x01000336 ] }; 228 229// Central row 230 key <AC01> { [ i, I, idotless, Iabovedot ] }; 231 key <AC02> { [ e, E, EuroSign, EuroSign ] }; 232 key <AC03> { [ a, A, ae, AE ] }; 233 key <AC04> { [ o, O, oe, OE ] }; 234 key <AC05> { [ u, U, oslash, Ooblique ] }; 235 key <AC06> { [ m, M, mu, mu ] }; 236 key <AC07> { [ d, D, eth, ETH ] }; 237 key <AC08> { [ s, S, ssharp, U1E9E ] }; 238 key <AC09> { [ r, R, registered, registered ] }; 239 key <AC10> { [ n, N, eng, ENG ] }; 240 key <AC11> { [ dead_acute, dead_grave, acute, grave ] }; 241 key <BKSL> { [ apostrophe, quotedbl, dead_caron, dead_doubleacute ] }; 242 243// Lower row 244 key <LSGT> { [ semicolon, colon, 0x01000331, 0x0100032D ] }; 245 key <AB01> { [ y, Y, yen, yen ] }; 246 key <AB02> { [ ccedilla, Ccedilla, backslash, bar ] }; 247 key <AB03> { [ j, J, 0x01000292, 0x010001B7 ] }; 248 key <AB04> { [ b, B, guillemotleft, 0x01002039 ] }; 249 key <AB05> { [ k, K, guillemotright, 0x0100203A ] }; 250 key <AB06> { [ q, Q, 0x01000259, 0x0100018F ] }; 251 key <AB07> { [ v, V, doublelowquotemark, singlelowquotemark ] }; 252 key <AB08> { [ g, G, leftdoublequotemark, leftsinglequotemark ] }; 253 key <AB09> { [ f, F, rightdoublequotemark, rightsinglequotemark ] }; 254 key <AB10> { [ z, Z, 0x0100201F, 0x0100201B ] }; 255 key <AB11> { [ backslash, bar, currency, brokenbar ] }; 256 257 key <SPCE> { [ space, space, nobreakspace, nobreakspace ] }; 258 259// Configures the "," for the numeric keypad 260 include "kpdl(comma)" 261 262// Configures the use of the AltGr key 263 include "level3(ralt_switch)" 264}; 265 266 267// 268// Brazilian Nativo layout for US keyboards. 269// 270// Ari Caldeira <ari@tecladobrasileiro.com.br> 2005-07-19 271// 272partial alphanumeric_keys 273xkb_symbols "nativo-us" { 274 275 include "br(nativo)" 276 277 name[Group1]="Portuguese (Brazil, Nativo for US keyboards)"; 278 279 key <AB01> { [ y, Y, ccedilla, Ccedilla ] }; 280 key <AB02> { [ semicolon, colon, backslash, bar ] }; 281}; 282 283 284// 285// Brazilian Nativo layout for typing Esperanto. 286// 287// Ari Caldeira <ari@tecladobrasileiro.com.br> 2005-07-19 288// 289partial alphanumeric_keys 290xkb_symbols "nativo-epo" { 291 292 include "br(nativo)" 293 294 name[Group1]="Esperanto (Brazil, Nativo)"; 295 296 key <AD04> { [ h, H, hcircumflex, Hcircumflex ] }; 297 key <AD05> { [ ccircumflex, Ccircumflex, x, X ] }; 298 key <AD06> { [ ubreve, Ubreve, w, W ] }; 299 300 key <AB01> { [ jcircumflex, Jcircumflex, y, Y ] }; 301 key <AB02> { [ scircumflex, Scircumflex, ccedilla, Ccedilla ] }; 302 key <AB06> { [ gcircumflex, Gcircumflex, q, Q ] }; 303}; 304 305// EXTRAS: 306 307partial alphanumeric_keys 308 xkb_symbols "sun_type6" { 309 include "sun_vndr/br(sun_type6)" 310}; 311