massive patch from OLPC
[xorg/xkeyboard-config] / symbols / br
1
2 // based on 
3 // "a very simple Brasilian ABNT2 keyboard
4 // by Ricardo Y. Igarashi (iga@that.com.br)
5 // Adds suport for dead-keys in I18N applications
6 // by Conectiva  (http://www.conectiva.com.br)"
7 //
8 // $XKeyboardConfig$
9 // $XdotOrg: xc/programs/xkbcomp/symbols/br,v 1.1.4.3 2004/03/05 13:41:32 eich Exp $
10 // $XFree86: xc/programs/xkbcomp/symbols/br,v 1.3 2003/04/19 12:22:11 pascal Exp $
11
12 default
13 xkb_symbols "abnt2" {
14
15     include "latin"
16     name[Group1]="Brazil";
17
18     key <AE02>  { [         2,         at,  twosuperior,      onehalf ] };
19     key <AE03>  { [         3, numbersign, threesuperior, threequarters ] };
20     key <AE04>  { [         4,     dollar,     sterling,   onequarter ] };
21     key <AE05>  { [         5,    percent,         cent, threeeighths ] };
22     key <AE06>  { [         6, dead_diaeresis,  notsign,    diaeresis ] };
23     key <AE12>  { [     equal,       plus,      section,  dead_ogonek ] };
24
25     key <AD01>  { [         q,          Q,        slash,        slash ] };   
26     key <AD02>  { [         w,          W,     question,     question ] };   
27     key <AD03>  { [         e,          E,     EuroSign,     EuroSign ] };
28     key <AD04>  { [         r,          R,   registered,   registered ] };
29     key <AD11>  { [dead_acute, dead_grave,        acute,        grave ] };
30     key <AD12>  { [bracketleft,  braceleft, ordfeminine,  dead_macron ] };
31
32     key <AC10>  { [  ccedilla,   Ccedilla,  dead_acute, dead_doubleacute] };
33     key <AC11>  { [dead_tilde, dead_circumflex, asciitilde, asciicircum ] };
34     key <BKSL>  { [bracketright, braceright,  masculine,    masculine   ] };
35
36     key <TLDE>  { [apostrophe,   quotedbl,      notsign,      notsign ] };
37
38     key <LSGT>  { [ backslash,        bar,    masculine,   dead_breve ] };
39     key <AB03>  { [         c,          C,    copyright,    copyright ] };
40     key <AB07>  { [         m,          M,           mu,           mu ] };
41     key <AB10>  { [ semicolon,    colon, dead_belowdot, dead_abovedot ] };
42
43 // ABNT-2 keyboard has this special key
44
45     key <AB11>  { [     slash,   question,       degree, questiondown ] };
46
47     key <KPPT>  { [ KP_Decimal ]        };
48
49     include "kpdl(comma)"
50
51     include "level3(ralt_switch)"
52 };
53
54 partial alphanumeric_keys
55 xkb_symbols "nodeadkeys" {
56
57     include "br(abnt2)" // for consistent naming
58     name[Group1]="Brazil - Eliminate dead keys";
59
60     key <AE06>  { [         6,  diaeresis,      notsign,      notsign ] };
61     key <AD11>  { [apostrophe,      grave ]     };
62     key <AC10>  { [  ccedilla,   Ccedilla,        acute,  doubleacute ] };
63     key <AC11>  { [asciitilde, asciicircum ]    };
64     key <AB10>  { [ semicolon,      colon, dead_belowdot,    abovedot ] };
65 };
66
67 // ABNT2 Keyboard to IBM/Lenovo Thinkpads 
68 // by Piter PUNK <piterpk@terra.com.br>
69 //
70 partial alphanumeric_keys
71 xkb_symbols "thinkpad" {
72
73     include "br(abnt2)" // for consistent naming
74     name[Group1]="Brazil";
75
76     key <RCTL> { [     slash,   question,       degree, questiondown ] };
77 };
78
79 partial alphanumeric_keys
80 xkb_symbols "olpc" {
81
82     include "us(basic)"
83     name[Group1]="Brazil";
84
85     key <TLDE> { [   apostrophe,       quotedbl                                ] };
86
87     key <AE01> { [           1,          exclam,   onesuperior                 ] };
88     key <AE02> { [           2,              at,   twosuperior                 ] };
89     key <AE03> { [           3,      numbersign, threesuperior                 ] };
90     key <AE04> { [           4,          dollar,      sterling                 ] };
91     key <AE05> { [           5,         percent,          cent                 ] };
92     key <AE06> { [           6,  dead_diaeresis,       notsign                 ] };
93     key <AE12>  { [       equal,           plus,       section                 ] };
94
95     key <AD03> { [            e,              E,      EuroSign                 ] };
96     key <AD11> { [   dead_acute,      dead_grave                                ] };
97     key <AD12> { [  bracketleft,       braceleft,     0x10000AA                 ] };
98
99     key <AC10> { [     ccedilla,       Ccedilla                                ] };
100     key <AC11> { [   dead_tilde, dead_circumflex                               ] };
101     key <BKSL> { [ bracketright,      braceright,     0x10000BA                        ] };
102
103     key <AB01> { [            z,              Z,           bar                 ] };
104     key <AB03> { [            c,              C,     0x10020A2                 ] };
105     key <AB09> { [       period,        greater,     backslash                 ] };
106     key <AB10> { [    semicolon,           colon                                ] };
107
108     key <I219> { [        slash,       question,        degree, ISO_Next_Group ] };
109
110     include "level3(ralt_switch)"
111 };
112