1default partial alphanumeric_keys 2xkb_symbols "basic" { 3 4 include "latin(type4)" 5 name[Group1]="Portuguese"; 6 7 key <TLDE> { [ backslash, bar, notsign, notsign ] }; 8 key <AE03> { [ 3, numbersign, sterling, sterling ] }; 9 key <AE04> { [ 4, dollar, section, dollar ] }; 10 key <AE11> { [ apostrophe, question, backslash, questiondown ] }; 11 key <AE12> { [ guillemotleft, guillemotright, dead_cedilla, dead_ogonek ] }; 12 13 key <AD11> { [ plus, asterisk, dead_diaeresis, dead_abovering ] }; 14 key <AD12> { [ dead_acute, dead_grave, dead_tilde, dead_macron ] }; 15 key <BKSL> { [ dead_tilde, dead_circumflex, dead_grave, dead_breve ] }; 16 17 key <AC10> { [ ccedilla, Ccedilla, dead_acute, dead_doubleacute ] }; 18 key <AC11> { [ masculine, ordfeminine,dead_circumflex, dead_caron ] }; 19 20 key <LSGT> { [ less, greater, backslash, backslash ] }; 21 22 include "level3(ralt_switch)" 23}; 24 25partial alphanumeric_keys 26xkb_symbols "Sundeadkeys" { 27 28 include "pt(basic)" 29 30 key <AD11> { [ plus, asterisk, dead_diaeresis, dead_diaeresis ] }; 31 key <AD12> { [ dead_acute, dead_grave ] }; 32 key <BKSL> { [ dead_tilde, dead_circumflex ] }; 33}; 34 35partial alphanumeric_keys 36xkb_symbols "sundeadkeys" { 37 include "pt(Sundeadkeys)" 38 name[Group1]="Portuguese (Sun dead keys)"; 39}; 40 41partial alphanumeric_keys 42xkb_symbols "nodeadkeys" { 43 44 include "pt(basic)" 45 name[Group1]="Portuguese (no dead keys)"; 46 47 key <AE12> { [ guillemotleft, guillemotright, cedilla, ogonek ] }; 48 key <AD11> { [ plus, asterisk, quotedbl, quotedbl ] }; 49 key <AD12> { [ acute, grave ] }; 50 key <BKSL> { [ asciitilde, asciicircum ] }; 51 key <AC10> { [ ccedilla, Ccedilla, acute, doubleacute ] }; 52 key <AC11> { [ masculine, ordfeminine, asciicircum, caron ] }; 53 key <AB10> { [ minus, underscore, dead_belowdot, abovedot ] }; 54}; 55 56// Layout variant for Mac, by Ricardo Cabral <bfe00991@mail.telepac.pt>. 57partial alphanumeric_keys 58xkb_symbols "mac" { 59 60 include "pt" 61 name[Group1]= "Portuguese (Macintosh)"; 62 63 key <TLDE> { [ grave, asciitilde, notsign, notsign ] }; 64 key <AE06> { [ 6, ampersand, threequarters, fiveeighths ] }; 65 key <AE08> { [ 8, parenleft, bracketleft, braceleft ] }; 66 key <AE09> { [ 9, parenright, bracketright, braceright ] }; 67 key <AE12> { [ plus, asterisk, dead_diaeresis ] }; 68 key <AD11> { [ masculine, ordfeminine ] }; 69 key <BKSL> { [ backslash, bar, dead_grave, dead_breve ] }; 70 key <AC11> { [ dead_tilde, dead_circumflex ] }; 71}; 72 73partial alphanumeric_keys 74xkb_symbols "mac_sundeadkeys" { 75 76 include "pt(mac)" 77 name[Group1]= "Portuguese (Macintosh, Sun dead keys)"; 78 79 key <AE12> { [ plus, asterisk, dead_diaeresis, dead_diaeresis ] }; 80 key <AD12> { [ dead_acute, dead_grave ] }; 81 key <AC11> { [ dead_tilde, dead_circumflex ] }; 82}; 83 84partial alphanumeric_keys 85xkb_symbols "mac_nodeadkeys" { 86 87 include "pt(mac)" 88 name[Group1]= "Portuguese (Macintosh, no dead keys)"; 89 90 key <AE12> { [ plus, asterisk, quotedbl, quotedbl ] }; 91 key <AD12> { [ acute, grave ] }; 92 key <AC11> { [ asciitilde, asciicircum ] }; 93}; 94 95 96// 97// Portuguese Nativo layout. 98// This is a Dvorak-based layout, designed for the Portuguese language. 99// 100// Ari Caldeira <ari@tecladobrasileiro.com.br> 2005-07-19 101// 102partial alphanumeric_keys 103xkb_symbols "nativo" { 104 105 name[Group1]="Portuguese (Nativo)"; 106 107// Numeric row 108 key <TLDE> { [ plus, asterisk, dead_diaeresis, plusminus ] }; 109 key <AE01> { [ 1, exclam, onesuperior, exclamdown ] }; 110 key <AE02> { [ 2, quotedbl, at, twosuperior ] }; 111 key <AE03> { [ 3, numbersign, sterling, threesuperior ] }; 112 key <AE04> { [ 4, dollar, section, onequarter ] }; 113 key <AE05> { [ 5, percent, cent, 0x01002030 ] }; 114 key <AE06> { [ 6, ampersand, notsign, diaeresis ] }; 115 key <AE07> { [ 7, slash, braceleft, 0x0100032D ] }; 116 key <AE08> { [ 8, parenleft, bracketleft, 0x01000331 ] }; 117 key <AE09> { [ 9, parenright, bracketright, dead_horn ] }; 118 key <AE10> { [ 0, equal, braceright, dead_hook ] }; 119 key <AE11> { [ masculine, ordfeminine, dead_ogonek, 0x01000326 ] }; 120 key <AE12> { [ less, greater, dead_cedilla, dead_abovering ] }; 121 122// Upper row 123 key <AD01> { [ apostrophe, question, degree, questiondown ] }; 124 key <AD02> { [ comma, semicolon, 0x01000329, 0x01000315 ] }; 125 key <AD03> { [ period, colon, 0x01002022, periodcentered ] }; 126 key <AD04> { [ h, H, paragraph, paragraph ] }; 127 key <AD05> { [ x, X, multiply, division ] }; 128 key <AD06> { [ w, W, ubreve, Ubreve ] }; 129 key <AD07> { [ l, L, lstroke, Lstroke ] }; 130 key <AD08> { [ t, T, trademark, trademark ] }; 131 key <AD09> { [ c, C, copyright, copyright ] }; 132 key <AD10> { [ p, P, thorn, THORN ] }; 133 key <AD11> { [ dead_tilde, dead_circumflex, dead_caron, dead_doubleacute ] }; 134 key <AD12> { [ minus, underscore, 0x01002015, 0x01000336 ] }; 135 136// Central row 137 key <AC01> { [ i, I, idotless, Iabovedot ] }; 138 key <AC02> { [ e, E, EuroSign, EuroSign ] }; 139 key <AC03> { [ a, A, ae, AE ] }; 140 key <AC04> { [ o, O, oe, OE ] }; 141 key <AC05> { [ u, U, oslash, Ooblique ] }; 142 key <AC06> { [ m, M, mu, mu ] }; 143 key <AC07> { [ d, D, eth, ETH ] }; 144 key <AC08> { [ s, S, ssharp, 0x01001E9E ] }; 145 key <AC09> { [ r, R, registered, registered ] }; 146 key <AC10> { [ n, N, eng, ENG ] }; 147 key <AC11> { [ dead_acute, dead_grave, dead_macron, dead_breve ] }; 148 key <BKSL> { [ backslash, bar, dead_belowdot, dead_abovedot ] }; 149 150// Lower row 151 key <LSGT> { [ guillemotleft, guillemotright, 0x01002039, 0x0100203A ] }; 152 key <AB01> { [ y, Y, yen, yen ] }; 153 key <AB02> { [ ccedilla, Ccedilla ] }; 154 key <AB03> { [ j, J, 0x01000292, 0x010001B7 ] }; 155 key <AB04> { [ b, B, apostrophe, quotedbl ] }; 156 key <AB05> { [ k, K, currency, brokenbar ] }; 157 key <AB06> { [ q, Q, 0x01000259, 0x0100018F ] }; 158 key <AB07> { [ v, V, doublelowquotemark, singlelowquotemark ] }; 159 key <AB08> { [ g, G, leftdoublequotemark, leftsinglequotemark ] }; 160 key <AB09> { [ f, F, rightdoublequotemark, rightsinglequotemark ] }; 161 key <AB10> { [ z, Z, 0x0100201F, 0x0100201B ] }; 162 163 key <SPCE> { [ space, space, nobreakspace, nobreakspace ] }; 164 165// Configures the use of the AltGr key 166 include "level3(ralt_switch)" 167}; 168 169 170// 171// Portuguese Nativo layout for US keyboards. 172// 173// Ari Caldeira <ari@tecladobrasileiro.com.br> 2005-07-19 174// 175partial alphanumeric_keys 176xkb_symbols "nativo-us" { 177 178 include "pt(nativo)" 179 180 name[Group1]="Portuguese (Nativo for US keyboards)"; 181 182 key <AB01> { [ y, Y, ccedilla, Ccedilla ] }; 183 key <AB02> { [ guillemotleft, guillemotright, 0x01002039, 0x0100203A ] }; 184}; 185 186 187// 188// Portuguese Nativo layout for typing Esperanto. 189// 190// Ari Caldeira <ari@tecladobrasileiro.com.br> 2005-07-19 191// 192partial alphanumeric_keys 193xkb_symbols "nativo-epo" { 194 195 include "pt(nativo)" 196 197 name[Group1]="Esperanto (Portugal, Nativo)"; 198 199 key <AD04> { [ h, H, hcircumflex, Hcircumflex ] }; 200 key <AD05> { [ ccircumflex, Ccircumflex, x, X ] }; 201 key <AD06> { [ ubreve, Ubreve, w, W ] }; 202 203 key <AB01> { [ jcircumflex, Jcircumflex, y, Y ] }; 204 key <AB02> { [ scircumflex, Scircumflex, ccedilla, Ccedilla ] }; 205 key <AB06> { [ gcircumflex, Gcircumflex, q, Q ] }; 206}; 207 208// EXTRAS: 209 210partial alphanumeric_keys 211 xkb_symbols "sun_type6" { 212 include "sun_vndr/pt(sun_type6)" 213}; 214 215// 216// Portuguese Colemak layout. 217// 218partial alphanumeric_keys 219xkb_symbols "colemak" { 220 include "pt(basic)" 221 222 name[Group1]="Portuguese (Colemak)"; 223 224 key <AD01> { [ q, Q, at, Greek_OMEGA ] }; 225 key <AD02> { [ w, W, lstroke, Lstroke ] }; 226 key <AD03> { [ f, F, dstroke, ordfeminine ] }; 227 key <AD04> { [ p, P, thorn, THORN ] }; 228 key <AD05> { [ g, G, eng, ENG ] }; 229 key <AD06> { [ j, J, dead_hook, dead_horn ] }; 230 key <AD07> { [ l, L, lstroke, Lstroke ] }; 231 key <AD08> { [ u, U, downarrow, uparrow ] }; 232 key <AD09> { [ y, Y, leftarrow, yen ] }; 233 key <AD10> { [ ccedilla, Ccedilla, dead_acute, dead_doubleacute ] }; 234 235 key <AC01> { [ a, A, ae, AE ] }; 236 key <AC02> { [ r, R, paragraph, registered ] }; 237 key <AC03> { [ s, S, ssharp, section ] }; 238 key <AC04> { [ t, T, tslash, Tslash ] }; 239 key <AC05> { [ d, D, eth, ETH ] }; 240 key <AC06> { [ h, H, hstroke, Hstroke ] }; 241 key <AC07> { [ n, N, n, N ] }; 242 key <AC08> { [ e, E, EuroSign, cent ] }; 243 key <AC09> { [ i, I, rightarrow, idotless ] }; 244 key <AC10> { [ o, O, oslash, Ooblique ] }; 245 246 key <AB01> { [ z, Z, guillemotleft, less ] }; 247 key <AB02> { [ x, X, guillemotright, greater ] }; 248 key <AB03> { [ c, C, cent, copyright ] }; 249 key <AB04> { [ v, V, leftdoublequotemark, leftsinglequotemark ] }; 250 key <AB05> { [ b, B, rightdoublequotemark, rightsinglequotemark ] }; 251 key <AB08> { [ k, K, kra, ampersand ] }; 252 key <AB07> { [ m, M, mu, masculine ] }; 253 254 key <CAPS> { [ BackSpace, BackSpace, BackSpace, BackSpace ] }; 255}; 256