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