adding the keyword
[xorg/xkeyboard-config] / symbols / fr
1 // $XKeyboardConfig$
2
3 // based on a keyboard map from an 'xkb/symbols/fr' file
4 //
5 // $XFree86: xc/programs/xkbcomp/symbols/fr,v 1.2 2002/11/22 04:03:28 dawes Exp $
6
7 partial default alphanumeric_keys
8 xkb_symbols "basic" {
9
10     include "latin"
11
12     name[Group1]="French";
13
14     key <AE01>  { [ ampersand,          1,  onesuperior,   exclamdown ] };
15     key <AE02>  { [    eacute,          2,   asciitilde,    oneeighth ] };
16     key <AE03>  { [  quotedbl,          3,   numbersign,     sterling ] };
17     key <AE04>  { [apostrophe,          4,    braceleft,       dollar ] };
18     key <AE05>  { [ parenleft,          5,  bracketleft, threeeighths ] };
19     key <AE06>  { [     minus,          6,          bar,  fiveeighths ] };
20     key <AE07>  { [    egrave,          7,        grave, seveneighths ] };
21     key <AE08>  { [underscore,          8,    backslash,    trademark ] };
22     key <AE09>  { [  ccedilla,          9,  asciicircum,    plusminus ] };
23     key <AE10>  { [    agrave,          0,           at,       degree ] };
24     key <AE11>  { [parenright,     degree, bracketright, questiondown ] };
25     key <AE12>  { [     equal,       plus,   braceright,  dead_ogonek ] };
26
27     key <AD01>  { [         a,          A,           ae,           AE ] };
28     key <AD02>  { [         z,          Z, guillemotleft,        less ] };
29     key <AD03>  { [         e,          E,     EuroSign,         cent ] };
30     key <AD11>  { [dead_circumflex, dead_diaeresis, dead_diaeresis, dead_abovering ] };
31     key <AD12>  { [    dollar,   sterling,     currency,  dead_macron ] };
32
33     key <AC01>  { [         q,          Q,           at,  Greek_OMEGA ] };
34     key <AC10>  { [         m,          M,           mu,    masculine ] };
35     key <AC11>  { [    ugrave,    percent, dead_circumflex, dead_caron] };
36     key <TLDE>  { [twosuperior, asciitilde,     notsign,      notsign ] };
37
38     key <BKSL>  { [  asterisk,         mu,   dead_grave,   dead_breve ] };
39     key <AB01>  { [         w,          W,      lstroke,      Lstroke ] };
40     key <AB07>  { [     comma,   question,   dead_acute, dead_doubleacute ] };
41     key <AB08>  { [ semicolon,     period, horizconnector,   multiply ] };
42     key <AB09>  { [     colon,      slash, periodcentered,   division ] };
43     key <AB10>  { [    exclam,    section, dead_belowdot, dead_abovedot ] };
44
45     include "level3(ralt_switch)"
46 };
47
48 partial alphanumeric_keys
49 xkb_symbols "Sundeadkeys" {
50
51     // Modifies the basic French layout to use the Sun dead keys
52
53     include "fr(basic)"
54
55     key <AD11>  { [SunFA_Circum, SunFA_Diaeresis ]      };
56     key <AB07>  { [comma,   question,  SunFA_Acute, dead_doubleacute ]  };
57 };
58
59 partial alphanumeric_keys
60 xkb_symbols "sundeadkeys" {
61     include "fr(Sundeadkeys)"
62
63 };
64
65 partial alphanumeric_keys
66 xkb_symbols "nodeadkeys" {
67
68     // Modifies the basic French layout to eliminate all dead keys
69
70     include "fr(basic)"
71
72     key <AE12>  { [     equal,       plus,   braceright,       ogonek ] };
73     key <AD11>  { [asciicircum,  diaeresis ]    };
74     key <AD12>  { [    dollar,   sterling,     currency,       macron ] };
75     key <AC11>  { [    ugrave,    percent,  asciicircum,        caron ] };
76     key <BKSL>  { [  asterisk,         mu,        grave,        breve ] };
77     key <AB07>  { [     comma,   question,        acute,  doubleacute ] };
78     key <AB10>  { [    exclam,    section, dead_belowdot,    abovedot ] };
79 };
80
81 // Historic Linux French keyboard layout (fr-latin9)
82 // Copyright (c) 199x, 2002 Rene Cougnenc (original work)
83 //                          Guylhem Aznar <clavier @ externe.net> (maintainer)
84 //                          Nicolas Mailhot <Nicolas.Mailhot @ laposte.net>
85 //                              (XFree86 submission)
86 //
87 //  $XFree86: xc/programs/xkbcomp/symbols/fr-latin9,v 1.1 2002/12/20 02:07:11 dawes Exp $
88 //
89 // This layout has long been distributed and refined outside official channels.
90 // To this day it remains more feature-rich and popular than the 'fr' layout.
91 //
92 // This file is derived from an original version by Guylhem Aznar.  The
93 // original version is always available from:
94 // http://en.tldp.org/HOWTO/Francophones-HOWTO.html
95 // and is distributed under a GPL license.
96 //
97 // The author has given permission for this derived version to be distributed
98 // under the standard XFree86 license. He would like all changes to this
99 // version be send to him at <clavier @ externe.net> so he can sync the
100 // identically named linux console map (kbd, linux-console) and this
101 // fileout-of-tree GPL version.
102 //
103 // Now follows the keyboard design description in French.
104 // (If you can't read it you probably have no business changing this file anyway:)
105 //
106 // Les accents circonflexes des principales voyelles sont obtenus avec
107 // la touche Alt_Gr, les trémas sont obtenus par Alt_Gr + Shift.
108 //
109 //  ____                                     _________ _____________ _______
110 // | S A| S = Shift,  A = AltGr + Shift     | Imprime | Arrêt défil | Pause |
111 // | s a| s = normal, a = AltGr             |  Exec   |             | Halte |
112 //  ¯¯¯¯                                     ¯¯¯¯¯¯¯¯¯ ¯¯¯¯¯¯¯¯¯¯¯¯¯ ¯¯¯¯¯¯¯
113 //  ____ ____ ____ ____ ____ ____ ____ ____ ____ ____ ____ ____ ____ _______
114 // | ½ "| 1 ·| 2 É| 3 ,| 4 '| 5 "| 6 || 7 È| 8 ¯| 9 Ç| 0 À| ° ÿ| + °| <--   |
115 // | ¼ "| & '| é ~| " #| ' {| ( [| - || è `| _ \| ç ^| à @| ) ]| = }|       |
116 //  ========================================================================
117 // | |<-  | A ä| Z Å| E ¢| R Ç| T Þ| Y Ý| U ü| I ï| O ö| P '| " `| $ ë|   , |
118 // |  ->| | a â| z å| e ¤| r ç| t þ| y ý| u û| i î| o ô| p ¶| ^ ~| £ ê| <-' |
119 //  ===================================================================¬    |
120 // |       | Q Ä| S Ø| D Ë| F ª| G Æ| H Ð| J Ü| K Ï| L Ö| M º| % Ù| µ ¥|    |
121 // | MAJ   | q Â| s ø| d Ê| f ±| g æ| h ð| j Û| k Î| l Ô| m ¹| ù ²| * ³|    |
122 //  ========================================================================
123 // | ^   | >  | W  | X  | C  | V  | B  | N  | ?  | .  | /  | §  |     ^     |
124 // | |   | < || w «| x »| c ©| v ®| b ß| n ¬| , ¿| ; ×| : ÷| ! ¡|     |     |
125 //  ========================================================================
126 // |      |      |      |                       |       |      |     |      |
127 // | Ctrl | Meta | Alt  | Space    Nobreakspace | AltGr | Multi|Menu | Ctrl |
128 //  ¯¯¯¯¯¯ ¯¯¯¯¯¯ ¯¯¯¯¯¯ ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯ ¯¯¯¯¯¯¯ ¯¯¯¯¯¯ ¯¯¯¯¯ ¯¯¯¯¯¯
129 //
130 //
131 //              Si les touches mortes fonctionnent, utiliser les accents dits
132 //              « morts », i.e. fonctionnant comme l'accent circonflexe & le
133 //              tréma des machines à écrire ; sont disponibles :
134 //
135 // (^) : accent circonflexe,
136 // Shift+(^) : tréma,
137 // Shift+AltGr (^) : tilde,
138 // AltGr (1) : accent aigu,
139 // AltGr (7) : accent grave
140 //
141 // Pour s'en servir, procéder comme avec l'accent circonflexe & le tréma
142 // sur les vielles machines à écrire :
143 //
144 // AltGr (1) puis e : é
145 // Shift+AltGr (1) puis e : É ...
146
147 partial alphanumeric_keys
148
149 xkb_symbols "latin9" {
150
151     include "latin"
152
153     name[Group1]="fr-latin9";
154
155     key <TLDE>  { [              oe,              OE, leftdoublequotemark, rightdoublequotemark ] };
156     key <AE01>  { [       ampersand,               1,          dead_acute,       periodcentered ] };
157     key <AE02>  { [          eacute,               2,          asciitilde,               Eacute ] };
158     key <AE03>  { [        quotedbl,               3,          numbersign,              cedilla ] };
159     key <AE04>  { [      apostrophe,               4,           braceleft,                acute ] };
160     key <AE05>  { [       parenleft,               5,         bracketleft,            diaeresis ] };
161     key <AE06>  { [           minus,               6,                 bar,            brokenbar ] };
162     key <AE07>  { [          egrave,               7,          dead_grave,               Egrave ] };
163     key <AE08>  { [      underscore,               8,           backslash,               macron ] };
164     key <AE09>  { [        ccedilla,               9,         asciicircum,             Ccedilla ] };
165     key <AE10>  { [          agrave,               0,                  at,               Agrave ] };
166     key <AE11>  { [      parenright,          degree,        bracketright,           ydiaeresis ] };
167     key <AE12>  { [           equal,            plus,          braceright,       dead_abovering ] };
168
169     key <AD01>  { [               a,               A,         acircumflex,           adiaeresis ] };
170     key <AD02>  { [               z,               Z,               aring,                Aring ] };
171     key <AD03>  { [               e,               E,            EuroSign,                 cent ] };
172     key <AD04>  { [               r,               R,            ccedilla,             Ccedilla ] };
173     key <AD05>  { [               t,               T,               thorn,                THORN ] };
174     key <AD06>  { [               y,               Y,              yacute,               Yacute ] };
175     key <AD07>  { [               u,               U,         ucircumflex,           udiaeresis ] };
176     key <AD08>  { [               i,               I,         icircumflex,           idiaeresis ] };
177     key <AD09>  { [               o,               O,         ocircumflex,           odiaeresis ] };
178     key <AD10>  { [               p,               P,           paragraph,            quoteleft ] };
179     key <AD11>  { [ dead_circumflex,  dead_diaeresis,          dead_tilde,           quoteright ] };
180     key <AD12>  { [          dollar,        sterling,         ecircumflex,           ediaeresis ] };
181
182     key <AC01>  { [               q,               Q,         Acircumflex,           Adiaeresis ] };
183     key <AC02>  { [               s,               S,              oslash,             Ooblique ] };
184     key <AC03>  { [               d,               D,         Ecircumflex,           Ediaeresis ] };
185     key <AC04>  { [               f,               F,           plusminus,          ordfeminine ] };
186     key <AC05>  { [               g,               G,                  ae,                   AE ] };
187     key <AC06>  { [               h,               H,                 eth,                  ETH ] };
188     key <AC07>  { [               j,               J,         Ucircumflex,           Udiaeresis ] };
189     key <AC08>  { [               k,               K,         Icircumflex,           Idiaeresis ] };
190     key <AC09>  { [               l,               L,         Ocircumflex,           Odiaeresis ] };
191     key <AC10>  { [               m,               M,         onesuperior,            masculine ] };
192     key <AC11>  { [          ugrave,         percent,         twosuperior,               Ugrave ] };
193     key <BKSL>  { [        asterisk,              mu,       threesuperior,                  yen ] };
194
195     key <LSGT>  { [            less,         greater,                 bar                       ] };
196     key <AB01>  { [               w,               W,       guillemotleft                       ] };
197     key <AB02>  { [               x,               X,      guillemotright                       ] };
198     key <AB03>  { [               c,               C,           copyright                       ] };
199     key <AB04>  { [               v,               V,          registered                       ] };
200     key <AB05>  { [               b,               B,              ssharp                       ] };
201     key <AB06>  { [               n,               N,             notsign                       ] };
202     key <AB07>  { [           comma,        question,        questiondown                       ] };
203     key <AB08>  { [       semicolon,          period,            multiply                       ] };
204     key <AB09>  { [           colon,           slash,            division                       ] };
205     key <AB10>  { [          exclam,         section,          exclamdown                       ] };
206
207     key <SPCE>  { [           space,           space,        nobreakspace                       ] };
208
209     // French uses a comma as decimal separator, but keyboards are labeled with a period
210     // Will take effect when KP_Decimal is mapped to the locale decimal separator
211     key <KPDL>  { [       KP_Delete,          period,           KP_Delete,           KP_Decimal ] };
212
213     include "level3(ralt_switch)"
214 };
215
216 partial alphanumeric_keys
217 xkb_symbols "latin9_Sundeadkeys" {
218
219     // Modifies the basic fr-latin9 layout to use the Sun dead keys
220
221     include "fr(latin9)"
222
223     key <AE01>  { [       ampersand,               1,         SunFA_Acute,       periodcentered ] };
224     key <AE07>  { [          egrave,               7,         SunFA_Grave,               Egrave ] };
225     key <AD11>  { [    SunFA_Circum, SunFA_Diaeresis,         SunFA_Tilde,           quoteright ] };
226
227 };
228
229 partial alphanumeric_keys
230 xkb_symbols "latin9_sundeadkeys" {
231
232     include "fr(latin9_Sundeadkeys)"
233
234 };
235
236 partial alphanumeric_keys
237 xkb_symbols "latin9_nodeadkeys" {
238
239     // Modifies the basic fr-latin9 layout to eliminate all dead keys
240
241     include "fr(latin9)"
242
243     key <AE01>  { [       ampersand,               1,          apostrophe,       periodcentered ] };
244     key <AE07>  { [          egrave,               7,               grave,               Egrave ] };
245     key <AE12>  { [           equal,            plus,          braceright                       ] };
246     key <AD11>  { [     asciicircum,       diaeresis,          asciitilde,           quoteright ] };
247 };
248
249 // Keymap Dvorak pour le Français
250 // par Josselin Mouette <josselin.mouette@ens-lyon.org>.
251
252 partial alphanumeric_keys
253 xkb_symbols "dvorak" {
254
255     name[Group1]= "French dvorak";
256
257     key <TLDE>  { [         oe,       OE,              ae,             AE ] };
258
259     key <AE01>  { [      slash,        1,       ampersand,    onesuperior ] };
260     key <AE02>  { [       plus,        2,      asciitilde,    twosuperior ] };
261     key <AE03>  { [      minus,        3,      numbersign,  threesuperior ] };
262     key <AE04>  { [   asterisk,        4,            less,  guillemotleft ] };
263     key <AE05>  { [      equal,        5,         greater, guillemotright ] };
264     key <AE06>  { [  backslash,        6,              at,        notsign ] };
265     key <AE07>  { [  parenleft,        7, dead_circumflex,       multiply ] };
266     key <AE08>  { [      grave,        8,      dead_grave,       division ] };
267     key <AE09>  { [ parenright,        9,     asciicircum,      plusminus ] };
268     key <AE10>  { [   quotedbl,        0,  dead_diaeresis, dead_diaeresis ] };
269     key <AE11>  { [bracketleft,   braceleft,          bar,         degree ] };
270     key <AE12>  { [bracketright, braceright,      percent,        percent ] };
271
272     key <AD01>  { [      colon, question,        question,   questiondown ] };
273     key <AD02>  { [     agrave,   Agrave,           aring,          Aring ] };
274     key <AD03>  { [     eacute,   Eacute,        EuroSign,           cent ] };
275     key <AD04>  { [          g,        G,          oslash,       Ooblique ] };
276     key <AD05>  { [     period,   exclam,  periodcentered,     exclamdown ] };
277     key <AD06>  { [          h,        H,             eth,            ETH ] };
278     key <AD07>  { [          v,        V              ] };
279     key <AD08>  { [          c,        C,       copyright,     registered ] };
280     key <AD09>  { [          m,        M,              mu,             mu ] };
281     key <AD10>  { [          k,        K,          dollar,         dollar ] };
282     key <AD11>  { [     egrave,   Egrave,        sterling,       sterling ] };
283     key <AD12>  { [          z,        Z,             yen,            yen ] };
284
285     key <AC01>  { [          o,        O,     ocircumflex,    Ocircumflex ] };
286     key <AC02>  { [          a,        A,     acircumflex,    Acircumflex ] };
287     key <AC03>  { [          u,        U,     ucircumflex,    Ucircumflex ] };
288     key <AC04>  { [          e,        E,     ecircumflex,    Ecircumflex ] };
289     key <AC05>  { [          b,        B,          ssharp,         ssharp ] };
290     key <AC06>  { [          f,        F      ] };
291     key <AC07>  { [          s,        S      ] };
292     key <AC08>  { [          t,        T,           thorn,          THORN ] };
293     key <AC09>  { [          n,        N,          ntilde,         Ntilde ] };
294     key <AC10>  { [          d,        D,         section,        section ] };
295     key <AC11>  { [          w,        W,       paragraph,      paragraph ] };
296     key <BKSL>  { [     ugrave,   Ugrave,       masculine,    ordfeminine ] };
297
298     key <AB01>  { [ apostrophe, underscore,    dead_acute,         macron ] };
299     key <AB02>  { [          q,        Q,   guillemotleft,  guillemotleft ] };
300     key <AB03>  { [     comma, semicolon,  guillemotright, guillemotright ] };
301     key <AB04>  { [          i,        I,     icircumflex,    Icircumflex ] };
302     key <AB05>  { [          y,        Y,      ydiaeresis,     Ydiaeresis ] };
303     key <AB06>  { [          x,        X,      ediaeresis,     Ediaeresis ] };
304     key <AB07>  { [          r,        R,      udiaeresis,     Udiaeresis ] };
305     key <AB08>  { [          l,        L,      adiaeresis,     Adiaeresis ] };
306     key <AB09>  { [          p,        P,      odiaeresis,     Odiaeresis ] };
307     key <AB10>  { [          j,        J,      idiaeresis,     Idiaeresis ] };
308
309     key <SPCE>  { [      space,    space,    nobreakspace,   nobreakspace ] };
310     key <LSGT>  { [   ccedilla, Ccedilla      ] };
311
312     include "level3(ralt_switch)"
313 };
314