1154daed1Smrgdefault
2154daed1Smrgxkb_symbols "abnt2" {
3154daed1Smrg
4797b363dSmrg    // Based on a very simple Brazilian ABNT2 keyboard,
5797b363dSmrg    // by Ricardo Y. Igarashi (iga@that.com.br).
6797b363dSmrg    // With added support for dead keys in I18N applications,
7797b363dSmrg    // by Conectiva  (http://www.conectiva.com.br).
8797b363dSmrg
9154daed1Smrg    include "latin"
10bfd7cbc1Smrg    name[Group1]="Portuguese (Brazil)";
11154daed1Smrg
12797b363dSmrg    key <TLDE> { [   apostrophe,       quotedbl,       notsign,         notsign ] };
13797b363dSmrg    key <AE02> { [            2,             at,   twosuperior,         onehalf ] };
14797b363dSmrg    key <AE03> { [            3,     numbersign, threesuperior,   threequarters ] };
15797b363dSmrg    key <AE04> { [            4,         dollar,      sterling,      onequarter ] };
16797b363dSmrg    key <AE05> { [            5,        percent,          cent,    threeeighths ] };
17797b363dSmrg    key <AE06> { [            6, dead_diaeresis,       notsign,       diaeresis ] };
18797b363dSmrg    key <AE12> { [        equal,           plus,       section,     dead_ogonek ] };
19797b363dSmrg
20797b363dSmrg    key <AD01> { [            q,              Q,         slash,           slash ] };
21797b363dSmrg    key <AD02> { [            w,              W,      question,        question ] };
221c606da7Smrg    key <AD03> { [            e,              E,        degree,          degree ] };
23797b363dSmrg    key <AD04> { [            r,              R,    registered,      registered ] };
24797b363dSmrg    key <AD11> { [   dead_acute,     dead_grave,         acute,           grave ] };
25797b363dSmrg    key <AD12> { [  bracketleft,      braceleft,   ordfeminine,     dead_macron ] };
26797b363dSmrg    key <BKSL> { [ bracketright,     braceright,     masculine,       masculine ] };
27797b363dSmrg
28797b363dSmrg    key <AC10> { [     ccedilla,       Ccedilla,    dead_acute,dead_doubleacute ] };
29797b363dSmrg    key <AC11> { [   dead_tilde,dead_circumflex,    asciitilde,     asciicircum ] };
30797b363dSmrg
318157b447Smrg    key <LSGT> { [    backslash,            bar,    dead_caron,      dead_breve ] };
32797b363dSmrg    key <AB03> { [            c,              C,     copyright,       copyright ] };
33797b363dSmrg    key <AB07> { [            m,              M,            mu,              mu ] };
34797b363dSmrg    key <AB10> { [    semicolon,          colon, dead_belowdot,   dead_abovedot ] };
35797b363dSmrg
36797b363dSmrg    // The ABNT-2 keyboard has this special key:
37797b363dSmrg    key <AB11> { [        slash,       question,        degree,    questiondown ] };
38154daed1Smrg
39154daed1Smrg    include "kpdl(comma)"
40154daed1Smrg
41154daed1Smrg    include "level3(ralt_switch)"
42154daed1Smrg};
43154daed1Smrg
44154daed1Smrgpartial alphanumeric_keys
45154daed1Smrgxkb_symbols "nodeadkeys" {
46154daed1Smrg
47797b363dSmrg    include "br(abnt2)"
489184b9c8Smrg    name[Group1]="Portuguese (Brazil, no dead keys)";
49154daed1Smrg
50797b363dSmrg    key <AE06> { [            6,      diaeresis,       notsign,         notsign ] };
51797b363dSmrg    key <AD11> { [   apostrophe,          grave                                 ] };
52797b363dSmrg    key <AC10> { [     ccedilla,       Ccedilla,         acute,     doubleacute ] };
53797b363dSmrg    key <AC11> { [   asciitilde,    asciicircum                                 ] };
54797b363dSmrg    key <AB10> { [    semicolon,          colon, dead_belowdot,        abovedot ] };
55154daed1Smrg};
56154daed1Smrg
57154daed1Smrg
58797b363dSmrg// The ABNT2 keyboard on IBM/Lenovo Thinkpads,
59797b363dSmrg// by Piter PUNK <piterpk@terra.com.br>.
60154daed1Smrg//
61154daed1Smrgpartial alphanumeric_keys
62154daed1Smrgxkb_symbols "thinkpad" {
63154daed1Smrg
64797b363dSmrg    include "br(abnt2)"
65188967beSsnj    name[Group1]="Portuguese (Brazil, IBM/Lenovo ThinkPad)";
66154daed1Smrg
67797b363dSmrg    key <RCTL> { [        slash,       question,        degree,    questiondown ] };
68154daed1Smrg};
69154daed1Smrg
70154daed1Smrg
71154daed1Smrgpartial alphanumeric_keys
72154daed1Smrgxkb_symbols "olpc" {
7346185892Smrg    // #HW-SPECIFIC
74154daed1Smrg    include "us(basic)"
75bfd7cbc1Smrg    name[Group1]="Portuguese (Brazil)";
76154daed1Smrg
77797b363dSmrg    key <TLDE> { [   apostrophe,        quotedbl                                ] };
78797b363dSmrg    key <AE01> { [            1,          exclam,   onesuperior                 ] };
79797b363dSmrg    key <AE02> { [            2,              at,   twosuperior                 ] };
80797b363dSmrg    key <AE03> { [            3,      numbersign, threesuperior                 ] };
81797b363dSmrg    key <AE04> { [            4,          dollar,      sterling                 ] };
82797b363dSmrg    key <AE05> { [            5,         percent,          cent                 ] };
83797b363dSmrg    key <AE06> { [            6,  dead_diaeresis,       notsign                 ] };
84797b363dSmrg    key <AE12> { [        equal,            plus,       section                 ] };
85797b363dSmrg
86797b363dSmrg    key <AD03> { [            e,               E,      EuroSign                 ] };
87797b363dSmrg    key <AD11> { [   dead_acute,      dead_grave,         acute,          grave ] };
88154daed1Smrg    key <AD12> { [  bracketleft,       braceleft,     0x10000AA                 ] };
89797b363dSmrg    key <BKSL> { [ bracketright,      braceright,     0x10000BA                 ] };
90154daed1Smrg
91797b363dSmrg    key <AC10> { [     ccedilla,        Ccedilla                                ] };
92797b363dSmrg    key <AC11> { [   dead_tilde, dead_circumflex                                ] };
93154daed1Smrg
94797b363dSmrg    key <AB01> { [            z,               Z,           bar                 ] };
95797b363dSmrg    key <AB03> { [            c,               C,     0x10020A2                 ] };
96797b363dSmrg    key <AB09> { [       period,         greater,     backslash                 ] };
97154daed1Smrg    key <AB10> { [    semicolon,           colon                                ] };
98154daed1Smrg
99797b363dSmrg    key <I219> { [        slash,        question,        degree, ISO_Next_Group ] };
100154daed1Smrg
101154daed1Smrg    include "level3(ralt_switch)"
102154daed1Smrg};
103154daed1Smrg
104154daed1Smrg
105154daed1Smrg//
106797b363dSmrg// Brazilian Dvorak layout                                 2005-04-18
107154daed1Smrg// "Teclado Simplificado Brasileiro" ou "Dvorak Brasileiro"
108154daed1Smrg//
109154daed1Smrg// Heitor Moraes    heitor.moraes@gmail.com
110154daed1Smrg// Luiz Portella    lfpor@lujz.org
111154daed1Smrg// Nando Florestan  nando2003@mandic.com.br
112154daed1Smrg// Ari Caldeira     ari@tecladobrasileiro.com.br
113154daed1Smrg//
114154daed1Smrgpartial alphanumeric_keys
115154daed1Smrgxkb_symbols "dvorak" {
116154daed1Smrg
117bfd7cbc1Smrg    name[Group1]="Portuguese (Brazil, Dvorak)";
118154daed1Smrg
119154daed1Smrg// Numeric row
120154daed1Smrg    key <TLDE> { [   apostrophe,        quotedbl,           dead_caron, dead_doubleacute ] };
121154daed1Smrg    key <AE01> { [            1,          exclam,          onesuperior,       exclamdown ] };
122154daed1Smrg    key <AE02> { [            2,              at,          twosuperior,          onehalf ] };
123154daed1Smrg    key <AE03> { [            3,      numbersign,        threesuperior,    threequarters ] };
124154daed1Smrg    key <AE04> { [            4,          dollar,             sterling,       onequarter ] };
125154daed1Smrg    key <AE05> { [            5,         percent,                 cent,       0x01002030 ] };
126154daed1Smrg    key <AE06> { [            6,  dead_diaeresis,              notsign,        diaeresis ] };
127154daed1Smrg    key <AE07> { [            7,       ampersand,        dead_belowdot,    dead_abovedot ] };
128154daed1Smrg    key <AE08> { [            8,        asterisk,          dead_ogonek,        dead_horn ] };
129154daed1Smrg    key <AE09> { [            9,       parenleft,         dead_cedilla,        dead_hook ] };
130154daed1Smrg    key <AE10> { [            0,      parenright,          dead_macron,       dead_breve ] };
131154daed1Smrg    key <AE11> { [  bracketleft,       braceleft,          ordfeminine,       0x01000326 ] };
132154daed1Smrg    key <AE12> { [ bracketright,      braceright,            masculine,   dead_abovering ] };
133154daed1Smrg
134154daed1Smrg
135154daed1Smrg// Upper row
136154daed1Smrg    key <AD01> { [        slash,        question,               degree,     questiondown ] };
137154daed1Smrg    key <AD02> { [        comma,            less,           0x01000329,       0x01000313 ] };
138154daed1Smrg    key <AD03> { [       period,         greater,           0x01002022,   periodcentered ] };
139154daed1Smrg    key <AD04> { [            p,               P,                thorn,            THORN ] };
140154daed1Smrg    key <AD05> { [            y,               Y,                  yen,              yen ] };
141797b363dSmrg    key <AD06> { [            f,               F,  leftdoublequotemark,  leftsinglequotemark ] };
142154daed1Smrg    key <AD07> { [            g,               G, rightdoublequotemark, rightsinglequotemark ] };
143154daed1Smrg    key <AD08> { [            c,               C,              uparrow,        copyright ] };
144154daed1Smrg    key <AD09> { [            r,               R,           registered,       registered ] };
145154daed1Smrg    key <AD10> { [            l,               L,              lstroke,          Lstroke ] };
146154daed1Smrg    key <AD11> { [   dead_acute,      dead_grave,                acute,            grave ] };
147154daed1Smrg    key <AD12> { [        equal,            plus,              section,        plusminus ] };
148154daed1Smrg
149154daed1Smrg// Central row
150154daed1Smrg    key <AC01> { [            a,               A,                   ae,               AE ] };
151154daed1Smrg    key <AC02> { [            o,               O,                   oe,               OE ] };
152154daed1Smrg    key <AC03> { [            e,               E,             EuroSign,         EuroSign ] };
15346185892Smrg    key <AC04> { [            u,               U,               oslash,           Oslash ] };
154154daed1Smrg    key <AC05> { [            i,               I,             idotless,        Iabovedot ] };
155154daed1Smrg    key <AC06> { [            d,               D,                  eth,              ETH ] };
156154daed1Smrg    key <AC07> { [            h,               H,            leftarrow,        paragraph ] };
157154daed1Smrg    key <AC08> { [            t,               T,           rightarrow,        trademark ] };
158154daed1Smrg    key <AC09> { [            n,               N,                  eng,              ENG ] };
1599d99ee05Smrg    key <AC10> { [            s,               S,               ssharp,            U1E9E ] };
160154daed1Smrg    key <AC11> { [   dead_tilde, dead_circumflex,           asciitilde,      asciicircum ] };
161154daed1Smrg    key <BKSL> { [        minus,      underscore,           0x01002015,       0x01000336 ] };
162154daed1Smrg
163154daed1Smrg// Lower row
164154daed1Smrg    key <LSGT> { [     ccedilla,        Ccedilla,            backslash,              bar ] };
165154daed1Smrg    key <AB01> { [    semicolon,           colon,           0x01000331,       0x0100032D ] };
166154daed1Smrg    key <AB02> { [            q,               Q,           0x01000259,       0x0100018F ] };
167154daed1Smrg    key <AB03> { [            j,               J,           0x01000292,       0x010001B7 ] };
168154daed1Smrg    key <AB04> { [            k,               K,        guillemotleft,       0x01002039 ] };
169154daed1Smrg    key <AB05> { [            x,               X,             multiply,         division ] };
170154daed1Smrg    key <AB06> { [            b,               B,       guillemotright,       0x0100203A ] };
171154daed1Smrg    key <AB07> { [            m,               M,            downarrow,               mu ] };
172154daed1Smrg    key <AB08> { [            w,               W,               ubreve,           Ubreve ] };
173154daed1Smrg    key <AB09> { [            v,               V,   doublelowquotemark, singlelowquotemark ] };
174154daed1Smrg    key <AB10> { [            z,               Z,           0x0100201F,       0x0100201B ] };
175154daed1Smrg    key <AB11> { [    backslash,             bar,             currency,        brokenbar ] };
176154daed1Smrg
177154daed1Smrg    key <SPCE> { [        space,           space,         nobreakspace,     nobreakspace ] };
178154daed1Smrg
17947fb91feSmrg// Configures the "," for the numeric keypad
180154daed1Smrg    include "kpdl(comma)"
181154daed1Smrg
182154daed1Smrg// Configures the use of the AltGr key
183154daed1Smrg    include "level3(ralt_switch)"
184154daed1Smrg};
185154daed1Smrg
186154daed1Smrg
187154daed1Smrg//
188797b363dSmrg// Brazilian Nativo layout.
189797b363dSmrg//     This is a Dvorak-based layout, designed for the Portuguese language.
190154daed1Smrg//
191797b363dSmrg// Ari Caldeira    <ari@tecladobrasileiro.com.br>    2005-07-19
192154daed1Smrg//
193154daed1Smrgpartial alphanumeric_keys
194154daed1Smrgxkb_symbols "nativo" {
195154daed1Smrg
196797b363dSmrg    name[Group1]="Portuguese (Brazil, Nativo)";
197154daed1Smrg
198154daed1Smrg// Numeric row
199154daed1Smrg    key <TLDE> { [        equal,            plus,              section,        plusminus ] };
200154daed1Smrg    key <AE01> { [            1,          exclam,          onesuperior,       exclamdown ] };
201154daed1Smrg    key <AE02> { [            2,              at,          twosuperior,          onehalf ] };
202154daed1Smrg    key <AE03> { [            3,      numbersign,        threesuperior,    threequarters ] };
203154daed1Smrg    key <AE04> { [            4,          dollar,             sterling,       onequarter ] };
204154daed1Smrg    key <AE05> { [            5,         percent,                 cent,       0x01002030 ] };
205154daed1Smrg    key <AE06> { [            6,  dead_diaeresis,              notsign,        diaeresis ] };
206154daed1Smrg    key <AE07> { [            7,       ampersand,        dead_belowdot,    dead_abovedot ] };
207154daed1Smrg    key <AE08> { [            8,        asterisk,          dead_ogonek,        dead_horn ] };
208154daed1Smrg    key <AE09> { [            9,       parenleft,         dead_cedilla,        dead_hook ] };
209154daed1Smrg    key <AE10> { [            0,      parenright,          dead_macron,       dead_breve ] };
210154daed1Smrg    key <AE11> { [  bracketleft,       braceleft,          ordfeminine,       0x01000326 ] };
211154daed1Smrg    key <AE12> { [ bracketright,      braceright,            masculine,   dead_abovering ] };
212154daed1Smrg
213154daed1Smrg// Upper row
214154daed1Smrg    key <AD01> { [        slash,        question,               degree,     questiondown ] };
215154daed1Smrg    key <AD02> { [        comma,            less,           0x01000329,       0x01000313 ] };
216154daed1Smrg    key <AD03> { [       period,         greater,           0x01002022,   periodcentered ] };
217154daed1Smrg    key <AD04> { [            h,               H,            paragraph,        paragraph ] };
218154daed1Smrg    key <AD05> { [            x,               X,             multiply,         division ] };
219154daed1Smrg    key <AD06> { [            w,               W,               ubreve,           Ubreve ] };
220154daed1Smrg    key <AD07> { [            l,               L,              lstroke,          Lstroke ] };
221154daed1Smrg    key <AD08> { [            t,               T,            trademark,        trademark ] };
222154daed1Smrg    key <AD09> { [            c,               C,            copyright,        copyright ] };
223154daed1Smrg    key <AD10> { [            p,               P,                thorn,            THORN ] };
224154daed1Smrg    key <AD11> { [   dead_tilde, dead_circumflex,           asciitilde,      asciicircum ] };
225154daed1Smrg    key <AD12> { [        minus,      underscore,           0x01002015,       0x01000336 ] };
226154daed1Smrg
227154daed1Smrg// Central row
228154daed1Smrg    key <AC01> { [            i,               I,             idotless,        Iabovedot ] };
229154daed1Smrg    key <AC02> { [            e,               E,             EuroSign,         EuroSign ] };
230154daed1Smrg    key <AC03> { [            a,               A,                   ae,               AE ] };
231154daed1Smrg    key <AC04> { [            o,               O,                   oe,               OE ] };
23246185892Smrg    key <AC05> { [            u,               U,               oslash,           Oslash ] };
233154daed1Smrg    key <AC06> { [            m,               M,                   mu,               mu ] };
234154daed1Smrg    key <AC07> { [            d,               D,                  eth,              ETH ] };
2359d99ee05Smrg    key <AC08> { [            s,               S,               ssharp,            U1E9E ] };
236154daed1Smrg    key <AC09> { [            r,               R,           registered,       registered ] };
237154daed1Smrg    key <AC10> { [            n,               N,                  eng,              ENG ] };
238154daed1Smrg    key <AC11> { [   dead_acute,      dead_grave,                acute,            grave ] };
239154daed1Smrg    key <BKSL> { [   apostrophe,        quotedbl,           dead_caron, dead_doubleacute ] };
240154daed1Smrg
241154daed1Smrg// Lower row
242154daed1Smrg    key <LSGT> { [    semicolon,           colon,           0x01000331,       0x0100032D ] };
243154daed1Smrg    key <AB01> { [            y,               Y,                  yen,              yen ] };
244154daed1Smrg    key <AB02> { [     ccedilla,        Ccedilla,            backslash,              bar ] };
245154daed1Smrg    key <AB03> { [            j,               J,           0x01000292,       0x010001B7 ] };
246154daed1Smrg    key <AB04> { [            b,               B,        guillemotleft,       0x01002039 ] };
247154daed1Smrg    key <AB05> { [            k,               K,       guillemotright,       0x0100203A ] };
248154daed1Smrg    key <AB06> { [            q,               Q,           0x01000259,       0x0100018F ] };
249797b363dSmrg    key <AB07> { [            v,               V,   doublelowquotemark,   singlelowquotemark ] };
250797b363dSmrg    key <AB08> { [            g,               G,  leftdoublequotemark,  leftsinglequotemark ] };
251154daed1Smrg    key <AB09> { [            f,               F, rightdoublequotemark, rightsinglequotemark ] };
252154daed1Smrg    key <AB10> { [            z,               Z,           0x0100201F,       0x0100201B ] };
253154daed1Smrg    key <AB11> { [    backslash,             bar,             currency,        brokenbar ] };
254154daed1Smrg
255154daed1Smrg    key <SPCE> { [        space,           space,         nobreakspace,     nobreakspace ] };
256154daed1Smrg
25747fb91feSmrg// Configures the "," for the numeric keypad
258154daed1Smrg    include "kpdl(comma)"
259154daed1Smrg
260154daed1Smrg// Configures the use of the AltGr key
261154daed1Smrg    include "level3(ralt_switch)"
262154daed1Smrg};
263154daed1Smrg
264154daed1Smrg
265154daed1Smrg//
266797b363dSmrg// Brazilian Nativo layout for US keyboards.
267154daed1Smrg//
268797b363dSmrg// Ari Caldeira    <ari@tecladobrasileiro.com.br>    2005-07-19
269154daed1Smrg//
270154daed1Smrgpartial alphanumeric_keys
271154daed1Smrgxkb_symbols "nativo-us" {
272797b363dSmrg
273154daed1Smrg    include "br(nativo)"
274154daed1Smrg
275797b363dSmrg    name[Group1]="Portuguese (Brazil, Nativo for US keyboards)";
276154daed1Smrg
277154daed1Smrg    key <AB01> { [            y,               Y,              ccedilla,        Ccedilla ] };
278154daed1Smrg    key <AB02> { [    semicolon,           colon,             backslash,             bar ] };
279154daed1Smrg};
280154daed1Smrg
281154daed1Smrg
282154daed1Smrg//
283797b363dSmrg// Brazilian Nativo layout for typing Esperanto.
284154daed1Smrg//
285797b363dSmrg// Ari Caldeira    <ari@tecladobrasileiro.com.br>    2005-07-19
286154daed1Smrg//
287154daed1Smrgpartial alphanumeric_keys
288154daed1Smrgxkb_symbols "nativo-epo" {
289797b363dSmrg
290154daed1Smrg    include "br(nativo)"
291154daed1Smrg
292797b363dSmrg    name[Group1]="Esperanto (Brazil, Nativo)";
293154daed1Smrg
294154daed1Smrg    key <AD04> { [            h,               H,          hcircumflex,      Hcircumflex ] };
295154daed1Smrg    key <AD05> { [  ccircumflex,     Ccircumflex,                    x,                X ] };
296154daed1Smrg    key <AD06> { [       ubreve,          Ubreve,                    w,                W ] };
297154daed1Smrg
298154daed1Smrg    key <AB01> { [  jcircumflex,     Jcircumflex,                    y,                Y ] };
299154daed1Smrg    key <AB02> { [  scircumflex,     Scircumflex,             ccedilla,         Ccedilla ] };
300154daed1Smrg    key <AB06> { [  gcircumflex,     Gcircumflex,                    q,                Q ] };
301154daed1Smrg};
3020412cdedSmrg
3030412cdedSmrg// EXTRAS:
3040412cdedSmrg
3050412cdedSmrgpartial alphanumeric_keys
3060412cdedSmrg	xkb_symbols "sun_type6" {
3070412cdedSmrg	include "sun_vndr/br(sun_type6)"
3080412cdedSmrg};
309