// based on a keyboard map from an 'xkb/symbols/fr' file // // $XFree86: xc/programs/xkbcomp/symbols/fr,v 1.2 2002/11/22 04:03:28 dawes Exp $ partial default alphanumeric_keys xkb_symbols "basic" { include "latin" name[Group1]="French"; key { [ ampersand, 1, onesuperior, exclamdown ] }; key { [ eacute, 2, asciitilde, oneeighth ] }; key { [ quotedbl, 3, numbersign, sterling ] }; key { [apostrophe, 4, braceleft, dollar ] }; key { [ parenleft, 5, bracketleft, threeeighths ] }; key { [ minus, 6, bar, fiveeighths ] }; key { [ egrave, 7, grave, seveneighths ] }; key { [underscore, 8, backslash, trademark ] }; key { [ ccedilla, 9, asciicircum, plusminus ] }; key { [ agrave, 0, at, degree ] }; key { [parenright, degree, bracketright, questiondown ] }; key { [ equal, plus, braceright, dead_ogonek ] }; key { [ a, A, ae, AE ] }; key { [ z, Z, guillemotleft, less ] }; key { [ e, E, EuroSign, cent ] }; key { [dead_circumflex, dead_diaeresis, dead_diaeresis, dead_abovering ] }; key { [ dollar, sterling, currency, dead_macron ] }; key { [ q, Q, at, Greek_OMEGA ] }; key { [ m, M, mu, masculine ] }; key { [ ugrave, percent, dead_circumflex, dead_caron] }; key { [twosuperior, asciitilde, notsign, notsign ] }; key { [ asterisk, mu, dead_grave, dead_breve ] }; key { [ w, W, lstroke, Lstroke ] }; key { [ comma, question, dead_acute, dead_doubleacute ] }; key { [ semicolon, period, horizconnector, multiply ] }; key { [ colon, slash, periodcentered, division ] }; key { [ exclam, section, dead_belowdot, dead_abovedot ] }; include "level3(ralt_switch_multikey)" }; partial alphanumeric_keys xkb_symbols "Sundeadkeys" { // Modifies the basic French layout to use the Sun dead keys include "fr(basic)" key { [SunFA_Circum, SunFA_Diaeresis ] }; key { [comma, question, SunFA_Acute, dead_doubleacute ] }; }; partial alphanumeric_keys xkb_symbols "sundeadkeys" { include "fr(Sundeadkeys)" }; partial alphanumeric_keys xkb_symbols "nodeadkeys" { // Modifies the basic French layout to eliminate all dead keys include "fr(basic)" key { [ equal, plus, braceright, ogonek ] }; key { [asciicircum, diaeresis ] }; key { [ dollar, sterling, currency, macron ] }; key { [ ugrave, percent, asciicircum, caron ] }; key { [ asterisk, mu, grave, breve ] }; key { [ comma, question, acute, doubleacute ] }; key { [ exclam, section, dead_belowdot, abovedot ] }; }; // Historic Linux French keyboard layout (fr-latin9) // Copyright (c) 199x, 2002 Rene Cougnenc (original work) // Guylhem Aznar (maintainer) // Nicolas Mailhot // (XFree86 submission) // // $XFree86: xc/programs/xkbcomp/symbols/fr-latin9,v 1.1 2002/12/20 02:07:11 dawes Exp $ // // This layout has long been distributed and refined outside official channels. // To this day it remains more feature-rich and popular than the 'fr' layout. // // This file is derived from an original version by Guylhem Aznar. The // original version is always available from: // http://en.tldp.org/HOWTO/Francophones-HOWTO.html // and is distributed under a GPL license. // // The author has given permission for this derived version to be distributed // under the standard XFree86 license. He would like all changes to this // version be send to him at so he can sync the // identically named linux console map (kbd, linux-console) and this // fileout-of-tree GPL version. // // Now follows the keyboard design description in French. // (If you can't read it you probably have no business changing this file anyway:) // // Les accents circonflexes des principales voyelles sont obtenus avec // la touche Alt_Gr, les trémas sont obtenus par Alt_Gr + Shift. // // ____ _________ _____________ _______ // | S A| S = Shift, A = AltGr + Shift | Imprime | Arrêt défil | Pause | // | s a| s = normal, a = AltGr | Exec | | Halte | // ¯¯¯¯ ¯¯¯¯¯¯¯¯¯ ¯¯¯¯¯¯¯¯¯¯¯¯¯ ¯¯¯¯¯¯¯ // ____ ____ ____ ____ ____ ____ ____ ____ ____ ____ ____ ____ ____ _______ // | ½ "| 1 ·| 2 É| 3 ,| 4 '| 5 "| 6 || 7 È| 8 ¯| 9 Ç| 0 À| ° ÿ| + °| <-- | // | ¼ "| & '| é ~| " #| ' {| ( [| - || è `| _ \| ç ^| à @| ) ]| = }| | // ======================================================================== // | |<- | A ä| Z Å| E ¢| R Ç| T Þ| Y Ý| U ü| I ï| O ö| P '| " `| $ ë| , | // | ->| | a â| z å| e ¤| r ç| t þ| y ý| u û| i î| o ô| p ¶| ^ ~| £ ê| <-' | // ===================================================================¬ | // | | Q Ä| S Ø| D Ë| F ª| G Æ| H Ð| J Ü| K Ï| L Ö| M º| % Ù| µ ¥| | // | MAJ | q Â| s ø| d Ê| f ±| g æ| h ð| j Û| k Î| l Ô| m ¹| ù ²| * ³| | // ======================================================================== // | ^ | > | W | X | C | V | B | N | ? | . | / | § | ^ | // | | | < || w «| x »| c ©| v ®| b ß| n ¬| , ¿| ; ×| : ÷| ! ¡| | | // ======================================================================== // | | | | | | | | | // | Ctrl | Meta | Alt | Space Nobreakspace | AltGr | Multi|Menu | Ctrl | // ¯¯¯¯¯¯ ¯¯¯¯¯¯ ¯¯¯¯¯¯ ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯ ¯¯¯¯¯¯¯ ¯¯¯¯¯¯ ¯¯¯¯¯ ¯¯¯¯¯¯ // // // Si les touches mortes fonctionnent, utiliser les accents dits // « morts », i.e. fonctionnant comme l'accent circonflexe & le // tréma des machines à écrire ; sont disponibles : // // (^) : accent circonflexe, // Shift+(^) : tréma, // Shift+AltGr (^) : tilde, // AltGr (1) : accent aigu, // AltGr (7) : accent grave // // Pour s'en servir, procéder comme avec l'accent circonflexe & le tréma // sur les vielles machines à écrire : // // AltGr (1) puis e : é // Shift+AltGr (1) puis e : É ... partial alphanumeric_keys xkb_symbols "latin9" { include "latin" name[Group1]="fr-latin9"; key { [ oe, OE, leftdoublequotemark, rightdoublequotemark ] }; key { [ ampersand, 1, dead_acute, periodcentered ] }; key { [ eacute, 2, asciitilde, Eacute ] }; key { [ quotedbl, 3, numbersign, cedilla ] }; key { [ apostrophe, 4, braceleft, acute ] }; key { [ parenleft, 5, bracketleft, diaeresis ] }; key { [ minus, 6, bar, brokenbar ] }; key { [ egrave, 7, dead_grave, Egrave ] }; key { [ underscore, 8, backslash, macron ] }; key { [ ccedilla, 9, asciicircum, Ccedilla ] }; key { [ agrave, 0, at, Agrave ] }; key { [ parenright, degree, bracketright, ydiaeresis ] }; key { [ equal, plus, braceright, dead_abovering ] }; key { [ a, A, acircumflex, adiaeresis ] }; key { [ z, Z, aring, Aring ] }; key { [ e, E, EuroSign, cent ] }; key { [ r, R, ccedilla, Ccedilla ] }; key { [ t, T, thorn, THORN ] }; key { [ y, Y, yacute, Yacute ] }; key { [ u, U, ucircumflex, udiaeresis ] }; key { [ i, I, icircumflex, idiaeresis ] }; key { [ o, O, ocircumflex, odiaeresis ] }; key { [ p, P, paragraph, quoteleft ] }; key { [ dead_circumflex, dead_diaeresis, dead_tilde, quoteright ] }; key { [ dollar, sterling, ecircumflex, ediaeresis ] }; key { [ q, Q, Acircumflex, Adiaeresis ] }; key { [ s, S, oslash, Ooblique ] }; key { [ d, D, Ecircumflex, Ediaeresis ] }; key { [ f, F, plusminus, ordfeminine ] }; key { [ g, G, ae, AE ] }; key { [ h, H, eth, ETH ] }; key { [ j, J, Ucircumflex, Udiaeresis ] }; key { [ k, K, Icircumflex, Idiaeresis ] }; key { [ l, L, Ocircumflex, Odiaeresis ] }; key { [ m, M, onesuperior, masculine ] }; key { [ ugrave, percent, twosuperior, Ugrave ] }; key { [ asterisk, mu, threesuperior, yen ] }; key { [ less, greater, bar ] }; key { [ w, W, guillemotleft ] }; key { [ x, X, guillemotright ] }; key { [ c, C, copyright ] }; key { [ v, V, registered ] }; key { [ b, B, ssharp ] }; key { [ n, N, notsign ] }; key { [ comma, question, questiondown ] }; key { [ semicolon, period, multiply ] }; key { [ colon, slash, division ] }; key { [ exclam, section, exclamdown ] }; key { [ space, space, nobreakspace ] }; // French uses a comma as decimal separator, but keyboards are labeled with a period // Will take effect when KP_Decimal is mapped to the locale decimal separator key { [ KP_Delete, period, KP_Delete, KP_Decimal ] }; include "level3(ralt_switch_multikey)" }; partial alphanumeric_keys xkb_symbols "latin9_Sundeadkeys" { // Modifies the basic fr-latin9 layout to use the Sun dead keys include "fr(latin9)" key { [ ampersand, 1, SunFA_Acute, periodcentered ] }; key { [ egrave, 7, SunFA_Grave, Egrave ] }; key { [ SunFA_Circum, SunFA_Diaeresis, SunFA_Tilde, quoteright ] }; }; partial alphanumeric_keys xkb_symbols "latin9_sundeadkeys" { include "fr(latin9_Sundeadkeys)" }; partial alphanumeric_keys xkb_symbols "latin9_nodeadkeys" { // Modifies the basic fr-latin9 layout to eliminate all dead keys include "fr(latin9)" key { [ ampersand, 1, apostrophe, periodcentered ] }; key { [ egrave, 7, grave, Egrave ] }; key { [ equal, plus, braceright ] }; key { [ asciicircum, diaeresis, asciitilde, quoteright ] }; }; // Keymap Dvorak pour le Français // par Josselin Mouette . partial alphanumeric_keys xkb_symbols "dvorak" { name[Group1]= "French dvorak"; key { [ oe, OE, ae, AE ] }; key { [ slash, 1, ampersand, onesuperior ] }; key { [ plus, 2, asciitilde, twosuperior ] }; key { [ minus, 3, numbersign, threesuperior ] }; key { [ asterisk, 4, less, guillemotleft ] }; key { [ equal, 5, greater, guillemotright ] }; key { [ backslash, 6, at, notsign ] }; key { [ parenleft, 7, dead_circumflex, multiply ] }; key { [ grave, 8, dead_grave, division ] }; key { [ parenright, 9, asciicircum, plusminus ] }; key { [ quotedbl, 0, dead_diaeresis, dead_diaeresis ] }; key { [bracketleft, braceleft, bar, degree ] }; key { [bracketright, braceright, percent, percent ] }; key { [ colon, question, question, questiondown ] }; key { [ agrave, Agrave, aring, Aring ] }; key { [ eacute, Eacute, EuroSign, cent ] }; key { [ g, G, oslash, Ooblique ] }; key { [ period, exclam, periodcentered, exclamdown ] }; key { [ h, H, eth, ETH ] }; key { [ v, V ] }; key { [ c, C, copyright, registered ] }; key { [ m, M, mu, mu ] }; key { [ k, K, dollar, dollar ] }; key { [ egrave, Egrave, sterling, sterling ] }; key { [ z, Z, yen, yen ] }; key { [ o, O, ocircumflex, Ocircumflex ] }; key { [ a, A, acircumflex, Acircumflex ] }; key { [ u, U, ucircumflex, Ucircumflex ] }; key { [ e, E, ecircumflex, Ecircumflex ] }; key { [ b, B, ssharp, ssharp ] }; key { [ f, F ] }; key { [ s, S ] }; key { [ t, T, thorn, THORN ] }; key { [ n, N, ntilde, Ntilde ] }; key { [ d, D, section, section ] }; key { [ w, W, paragraph, paragraph ] }; key { [ ugrave, Ugrave, masculine, ordfeminine ] }; key { [ apostrophe, underscore, dead_acute, macron ] }; key { [ q, Q, guillemotleft, guillemotleft ] }; key { [ comma, semicolon, guillemotright, guillemotright ] }; key { [ i, I, icircumflex, Icircumflex ] }; key { [ y, Y, ydiaeresis, Ydiaeresis ] }; key { [ x, X, ediaeresis, Ediaeresis ] }; key { [ r, R, udiaeresis, Udiaeresis ] }; key { [ l, L, adiaeresis, Adiaeresis ] }; key { [ p, P, odiaeresis, Odiaeresis ] }; key { [ j, J, idiaeresis, Idiaeresis ] }; key { [ space, space, nobreakspace, nobreakspace ] }; key { [ ccedilla, Ccedilla ] }; include "level3(ralt_switch_multikey)" };