Shadow-Here


Server : Apache
System : Linux methusalix2 3.16.0-11-amd64 #1 SMP Debian 3.16.84-1 (2020-06-09) x86_64
User : hios ( 1437)
PHP Version : 5.6.40-0+deb8u12
Disable Function : proc_close,proc_open,dl,shell_exec,passthru
Directory :  /usr/share/X11/xkb/symbols/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :
Current File : //usr/share/X11/xkb/symbols/fr
default  partial alphanumeric_keys
xkb_symbols "basic" {

    include "latin"

    name[Group1]="French";

    key <AE01>	{ [ ampersand,          1,  onesuperior,   exclamdown ]	};
    key <AE02>	{ [    eacute,          2,   asciitilde,    oneeighth ]	};
    key <AE03>	{ [  quotedbl,          3,   numbersign,     sterling ]	};
    key <AE04>	{ [apostrophe,          4,    braceleft,       dollar ]	};
    key <AE05>	{ [ parenleft,          5,  bracketleft, threeeighths ]	};
    key <AE06>	{ [     minus,          6,          bar,  fiveeighths ]	};
    key <AE07>	{ [    egrave,          7,        grave, seveneighths ]	};
    key <AE08>	{ [underscore,          8,    backslash,    trademark ]	};
    key <AE09>	{ [  ccedilla,          9,  asciicircum,    plusminus ]	};
    key <AE10>	{ [    agrave,          0,           at,       degree ]	};
    key <AE11>	{ [parenright,     degree, bracketright, questiondown ]	};
    key <AE12>	{ [     equal,       plus,   braceright,  dead_ogonek ]	};

    key <AD01>	{ [         a,          A,           ae,           AE ]	};
    key <AD02>	{ [         z,          Z, guillemotleft,        less ]	};
    key <AD03>	{ [         e,          E,     EuroSign,         cent ]	};
    key <AD11>	{ [dead_circumflex, dead_diaeresis, dead_diaeresis, dead_abovering ] };
    key <AD12>	{ [    dollar,   sterling,     currency,  dead_macron ]	};

    key <AC01>	{ [         q,          Q,           at,  Greek_OMEGA ]	};
    key <AC10>	{ [         m,          M,           mu,    masculine ]	};
    key <AC11>	{ [    ugrave,    percent, dead_circumflex, dead_caron]	};
    key <TLDE>	{ [twosuperior, asciitilde,     notsign,      notsign ]	};

    key <BKSL>	{ [  asterisk,         mu,   dead_grave,   dead_breve ]	};
    key <AB01>	{ [         w,          W,      lstroke,      Lstroke ]	};
    key <AB07>	{ [     comma,   question,   dead_acute, dead_doubleacute ] };
    key <AB08>	{ [ semicolon,     period, horizconnector,   multiply ]	};
    key <AB09>	{ [     colon,      slash, periodcentered,   division ]	};
    key <AB10>	{ [    exclam,    section, dead_belowdot, dead_abovedot ] };

    include "level3(ralt_switch)"
};

partial alphanumeric_keys
xkb_symbols "olpc" {
    // Contact: Sayamindu Dasgupta <sayamindu@laptop.org>
    include "fr(basic)"

    name[Group1]="French";

    key <I219>	{ [ less, greater ]	};
    key <AD11>	{ [ dead_circumflex, dead_diaeresis, notsign, dead_abovering ]	};
    key <AB08>	{ [ semicolon, period, underscore, multiply ]	};
    key <TLDE>	{ [ twosuperior, asciitilde, VoidSymbol, VoidSymbol ]	};

    // Some keys only have the Shift+AltGr character printed on them (alongside
    // the unmodified one). Make such keys shift-invariant so that the printed
    // value is achieved by pressing AltGr or Shift+AltGr.
    key <AB02>	{ [ x,  X,  guillemotright, guillemotright ]	};
    key <AC02>	{ [ s,  S,  ssharp, ssharp ]	};
    key <AD02>	{ [ z,  Z,  guillemotleft, guillemotleft ]	};
};

partial alphanumeric_keys
xkb_symbols "Sundeadkeys" {

    // Modifies the basic French layout to use the Sun dead keys

    include "fr(basic)"

    key <AD11>	{ [dead_circumflex, dead_diaeresis ]	};
    key <AB07>	{ [comma,   question,  dead_acute, dead_doubleacute ]	};
};

partial alphanumeric_keys
xkb_symbols "sundeadkeys" {
    include "fr(Sundeadkeys)"

    name[Group1]="French (Sun dead keys)";
};

partial alphanumeric_keys
xkb_symbols "nodeadkeys" {

    // Modifies the basic French layout to eliminate all dead keys

    include "fr(basic)"

    name[Group1]="French (eliminate dead keys)";

    key <AE12>	{ [     equal,       plus,   braceright,       ogonek ]	};
    key <AD11>	{ [asciicircum,  diaeresis ]	};
    key <AD12>	{ [    dollar,   sterling,     currency,       macron ]	};
    key <AC11>	{ [    ugrave,    percent,  asciicircum,        caron ]	};
    key <BKSL>	{ [  asterisk,         mu,        grave,        breve ]	};
    key <AB07>	{ [     comma,   question,        acute,  doubleacute ]	};
    key <AB10>	{ [    exclam,    section, dead_belowdot,    abovedot ]	};
};


// Unicode French derivative
// Loose refactoring of the historic Linux French keyboard layout
//
// Copyright ยฉ 2006-2008 Nicolas Mailhot <nicolas.mailhot @ laposte.net>
//
// Credits (fr-latin1, fr-latin0, fr-latin9)
//   ยฉ 199x-1996 Renรฉ Cougnenc โœ
//   ยฉ 1997-2002 Guylhem Aznar <clavier @ externe.net>
//   ยฉ 2003-2006 Nicolas Mailhot <nicolas.mailhot @ laposte.net>
//
// โ”Œโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฒโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”“
// โ”‚ ยณ ยธ โ”‚ 1 ฬจ  โ”‚ 2 ร‰ โ”‚ 3 ห˜ โ”‚ 4 โ€” โ”‚ 5 โ€“ โ”‚ 6 โ€‘ โ”‚ 7 รˆ โ”‚ 8 โ„ข โ”‚ 9 ร‡ โ”‚ 0 ร€ โ”‚ ยฐ โ‰  โ”‚ + ยฑ โ”ƒ โŒซ Retourโ”ƒ
// โ”‚ ยฒ ยน โ”‚ & ห‡ โ”‚ รฉ ~ โ”‚ " # โ”‚ ' { โ”‚ ( [ โ”‚ - | โ”‚ รจ ` โ”‚ _ \ โ”‚ รง ^ โ”‚ ร  @ โ”‚ ) ] โ”‚ = } โ”ƒ  arriรจreโ”ƒ
// โ”ขโ”โ”โ”โ”โ”โ”ทโ”โ”ฑโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”บโ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”ซ
// โ”ƒ       โ”ƒ A ร† โ”‚ Z ร‚ โ”‚ E ยข โ”‚ R รŠ โ”‚ T รž โ”‚ Y ลธ โ”‚ U ร› โ”‚ I รŽ โ”‚ O ล’ โ”‚ P ร” โ”‚ ยจ หš โ”‚ ยฃ ร˜ โ”ƒEntrรฉe โ”ƒ
// โ”ƒTab โ†น  โ”ƒ 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 โ†’ โ”‚ ? โ€ฆ โ”‚ . . โ”‚ / โˆ• โ”‚ ยง โˆ’ โ”ƒ             โ”ƒ
// โ”ƒShift โ‡งโ”ƒ < โ‰ค โ”‚ w ยซ โ”‚ x ยป โ”‚ c ยฉ โ”‚ v โฝ โ”‚ b โ†“ โ”‚ n ยฌ โ”‚ , ยฟ โ”‚ ; ร— โ”‚ : รท โ”‚ ! ยก โ”ƒShift โ‡ง      โ”ƒ
// โ”ฃโ”โ”โ”โ”โ”โ”โ”โ•‹โ”โ”โ”โ”โ”โ”ทโ”โ”ณโ”โ”โ”โ”ทโ”โ”โ”โ”ฑโ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”ฒโ”โ”ทโ”โ”โ”โ”โ”โ•ˆโ”โ”โ”โ”โ”โ”ปโ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”›
// โ”ƒ       โ”ƒ       โ”ƒ       โ”ƒ โฃ         Espace fine insรฉcable โฝ โ”ƒ       โ”ƒ       โ”ƒ       โ”ƒ
// โ”ƒCtrl   โ”ƒMeta   โ”ƒAlt    โ”ƒ โฃ Espace       Espace insรฉcable โฝ โ”ƒAltGr โ‡ฎโ”ƒMenu   โ”ƒCtrl   โ”ƒ
// โ”—โ”โ”โ”โ”โ”โ”โ”โ”ปโ”โ”โ”โ”โ”โ”โ”โ”ปโ”โ”โ”โ”โ”โ”โ”โ”นโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”บโ”โ”โ”โ”โ”โ”โ”โ”ปโ”โ”โ”โ”โ”โ”โ”โ”ปโ”โ”โ”โ”โ”โ”โ”โ”›
partial alphanumeric_keys
xkb_symbols "oss" {

    include "latin"
    include "level3(ralt_switch)"
    include "nbsp(level4nl)"
    include "keypad(oss)"

    name[Group1]="French (alternative)";

    // First row
    key <TLDE>	{ [      twosuperior,    threesuperior,          onesuperior,          dead_cedilla ] }; // ยฒ ยณ ยน ยธ
    key <AE01>	{ [        ampersand,                1,           dead_caron,           dead_ogonek ] }; // & 1 ห‡ ฬจ
    key <AE02>	{ [           eacute,                2,           asciitilde,                Eacute ] }; // รฉ 2 ~ ร‰
    key <AE03>	{ [         quotedbl,                3,           numbersign,            dead_breve ] }; // " 3 # ห˜
    key <AE04>	{ [       apostrophe,                4,            braceleft,             0x1002014 ] }; // ' 4 { โ€” (tiret cadratin)
    key <AE05>	{ [        parenleft,                5,          bracketleft,             0x1002013 ] }; // ( 5 [ โ€“ (tiret demi-cadratin)
    key <AE06>	{ [            minus,                6,                  bar,             0x1002011 ] }; // - 6 | โ€‘ (tiret insรฉcable)
    key <AE07>	{ [           egrave,                7,                grave,                Egrave ] }; // รจ 7 ` รˆ
    key <AE08>	{ [       underscore,                8,            backslash,             trademark ] }; // _ 8 \ โ„ข
    key <AE09>	{ [         ccedilla,                9,          asciicircum,              Ccedilla ] }; // รง 9 ^ ร‡
    key <AE10>	{ [           agrave,                0,                   at,                Agrave ] }; // ร  0 @ ร€
    key <AE11>	{ [       parenright,           degree,         bracketright,              notequal ] }; // ) ยฐ ] โ‰ 
    key <AE12>	{ [            equal,             plus,           braceright,             plusminus ] }; // = + } ยฑ

    // Second row
    key <AD01>	{ [                a,                A,                   ae,                    AE ] }; // a A รฆ ร†
    key <AD02>	{ [                z,                Z,          acircumflex,           Acircumflex ] }; // z Z รข ร‚
    key <AD03>	{ [                e,                E,             EuroSign,                  cent ] }; // e E โ‚ฌ ยข
    key <AD04>	{ [                r,                R,          ecircumflex,           Ecircumflex ] }; // r R รช รŠ
    key <AD05>	{ [                t,                T,                thorn,                 THORN ] }; // t T รพ รž
    key <AD06>	{ [                y,                Y,           ydiaeresis,            Ydiaeresis ] }; // y Y รฟ ลธ
    key <AD07>	{ [                u,                U,          ucircumflex,           Ucircumflex ] }; // u U รป ร›
    key <AD08>	{ [                i,                I,          icircumflex,           Icircumflex ] }; // i I รฎ รŽ
    key <AD09>	{ [                o,                O,                   oe,                    OE ] }; // o O ล“ ล’
    key <AD10>	{ [                p,                P,          ocircumflex,           Ocircumflex ] }; // p P รด ร”
    key <AD11>	{ [  dead_circumflex,   dead_diaeresis,           dead_tilde,        dead_abovering ] }; // ^ ฬˆ ฬƒ หš
    key <AD12>	{ [           dollar,         sterling,               oslash,              Ooblique ] }; // $ ยฃ รธ ร˜

    // Third row
    key <AC01>	{ [                q,                Q,           adiaeresis,            Adiaeresis ] }; // q Q รค ร„
    key <AC02>	{ [                s,                S,               ssharp,    doublelowquotemark ] }; // s S รŸ โ€ž
    key <AC03>	{ [                d,                D,           ediaeresis,            Ediaeresis ] }; // d D รซ ร‹
    key <AC04>	{ [                f,                F,  leftsinglequotemark,    singlelowquotemark ] }; // f F โ€˜ โ€š
    key <AC05>	{ [                g,                G, rightsinglequotemark,                   yen ] }; // g G โ€™ ยฅ
    key <AC06>	{ [                h,                H,                  eth,                   ETH ] }; // h H รฐ ร
    key <AC07>	{ [                j,                J,           udiaeresis,            Udiaeresis ] }; // j J รผ รœ
    key <AC08>	{ [                k,                K,           idiaeresis,            Idiaeresis ] }; // k K รฏ ร
    key <AC09>	{ [                l,                L,            0x1000140,             0x100013F ] }; // l L ล€ ฤฟ
    key <AC10>	{ [                m,                M,           odiaeresis,            Odiaeresis ] }; // m M รถ ร–
    key <AC11>	{ [           ugrave,          percent,           dead_acute,                Ugrave ] }; // รน % ' ร™
    key <BKSL>	{ [         asterisk,               mu,           dead_grave,           dead_macron ] }; // * ยต ` ฬ„

    // Fourth row
    key <LSGT>  { [             less,          greater,        lessthanequal,      greaterthanequal ] }; // < > โ‰ค โ‰ฅ
    key <AB01>  { [                w,                W,        guillemotleft,   leftdoublequotemark ] }; // w W ยซ โ€œ
    key <AB02>  { [                x,                X,       guillemotright,  rightdoublequotemark ] }; // x X ยป โ€
    key <AB03>  { [                c,                C,            copyright,            registered ] }; // c C ยฉ ยฎ
    key <AB04>  { [                v,                V,            0x100202F,             leftarrow ] }; // v V โฝ โ† (espace fine insรฉcable)
    key <AB05>  { [                b,                B,            downarrow,               uparrow ] }; // b B โ†“ โ†‘
    key <AB06>  { [                n,                N,              notsign,            rightarrow ] }; // n N ยฌ โ†’
    key <AB07>  { [            comma,         question,         questiondown,             0x1002026 ] }; // , ? ยฟ โ€ฆ
    key <AB08>  { [        semicolon,           period,             multiply,             0x10022C5 ] }; // ; . ร— โ‹…
    key <AB09>  { [            colon,            slash,             division,             0x1002215 ] }; // : / รท โˆ•
    key <AB10>  { [           exclam,          section,           exclamdown,             0x1002212 ] }; // ! ยง ยก โˆ’
};

partial alphanumeric_keys
xkb_symbols "oss_latin9" {

    // Restricts the fr(oss) layout to latin9 symbols

    include "fr(oss)"
    include "keypad(oss_latin9)"

    name[Group1]="French (alternative, Latin-9 only)";

    // First row
    key <AE01>	{ [        ampersand,                1,           dead_caron,          dead_cedilla ] }; // & 1 ห‡ ยธ
    key <AE03>	{ [         quotedbl,                3,           numbersign,            dead_tilde ] }; // " 3 # ~
    key <AE04>	{ [       apostrophe,                4,            braceleft,            underscore ] }; // ' 4 { _
    key <AE05>	{ [        parenleft,                5,          bracketleft,                 minus ] }; // ( 5 [ -
    key <AE06>	{ [            minus,                6,                  bar,                 minus ] }; // - 6 | -
    key <AE08>	{ [       underscore,                8,            backslash,             backslash ] }; // _ 8 \ \
    key <AE11>	{ [       parenright,           degree,         bracketright,                 equal ] }; // ) ยฐ ] =

    // Third row
    key <AC02>	{ [                s,                S,               ssharp,         guillemotleft ] }; // s S รŸ ยซ
    key <AC04>	{ [                f,                F,           apostrophe,            apostrophe ] }; // f F ' '
    key <AC05>	{ [                g,                G,           apostrophe,                   yen ] }; // g G ' ยฅ
    key <AC09>	{ [                l,                L,       periodcentered,        periodcentered ] }; // l L ยท ยท
    key <BKSL>	{ [         asterisk,               mu,           dead_grave,       dead_circumflex ] }; // * ยต ` ^

    // Fourth row
    key <LSGT>  { [             less,          greater,                 less,               greater ] }; // < > < >
    key <AB01>  { [                w,                W,        guillemotleft,         guillemotleft ] }; // w W ยซ ยซ
    key <AB02>  { [                x,                X,       guillemotright,        guillemotright ] }; // x X ยป ยป
    key <AB04>  { [                v,                V,         nobreakspace,                  less ] }; // v V โฝ < (espace insรฉcable)
    key <AB05>  { [                b,                B,                minus,           asciicircum ] }; // b B - ^
    key <AB06>  { [                n,                N,              notsign,               greater ] }; // n N ยฌ >
    key <AB07>  { [            comma,         question,         questiondown,                period ] }; // , ? ยฟ .
    key <AB08>  { [        semicolon,           period,             multiply,        periodcentered ] }; // ; . ร— ยท
    key <AB09>  { [            colon,            slash,             division,                 slash ] }; // : / รท /
    key <AB10>  { [           exclam,          section,           exclamdown,                 minus ] }; // ! ยง ยก -
};

partial alphanumeric_keys
xkb_symbols "oss_Sundeadkeys" {

    // Modifies the basic fr(oss) layout to use the Sun dead keys

    include "fr(oss)"

    key <TLDE>	{ [      twosuperior,    threesuperior,          onesuperior,          dead_cedilla ] }; // ยน ยฒ ยณ ยธ

    key <AD11>	{ [  dead_circumflex,   dead_diaeresis,           dead_tilde,        dead_abovering ] }; // ^ ฬˆ ฬƒ หš

    key <AC11>	{ [           ugrave,          percent,           dead_acute,                Ugrave ] }; // รน % ' ร™
    key <BKSL>	{ [         asterisk,               mu,           dead_grave,           dead_macron ] }; // * ยต ` ฬ„
};

partial alphanumeric_keys
xkb_symbols "oss_sundeadkeys" {

    include "fr(oss_Sundeadkeys)"

    name[Group1]="French (alternative, Sun dead keys)";
};

partial alphanumeric_keys
xkb_symbols "oss_nodeadkeys" {

    // Modifies the basic fr(oss) layout to eliminate all dead keys

    include "fr(oss)"

    name[Group1]="French (alternative, eliminate dead keys)";

    key <TLDE>	{ [      twosuperior,    threesuperior,          onesuperior,               cedilla ] }; // ยฒ ยณ ยน ยธ
    key <AE01>	{ [        ampersand,                1,                caron,                ogonek ] }; // & 1 ห‡ ฬจ
    key <AE03>	{ [         quotedbl,                3,           numbersign,                 breve ] }; // " 3 # ห˜

    key <AD11>	{ [      asciicircum,        diaeresis,           asciitilde,                 Aring ] }; // ^ ฬˆ ฬƒ ร…
    key <AC11>	{ [           ugrave,          percent,                acute,                Ugrave ] }; // รน % ' ร™
    key <BKSL>	{ [         asterisk,               mu,                grave,                macron ] }; // * ยต ` ฬ„
};


// Historic Linux French keyboard layout (fr-latin9)
// Copyright (c) 199x, 2002 Rene Cougnenc (original work)
//                          Guylhem Aznar <clavier @ externe.net> (maintainer)
//                          Nicolas Mailhot <Nicolas.Mailhot @ laposte.net>
//                              (XFree86 submission)
//
// 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 layout 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 to be sent to him at <clavier @ externe.net>, so he can sync
// the identically named linux console map (kbd, linux-console) and his
// out-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 | Super| Alt  | Space    Nobreakspace | AltGr | Super|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 : รฉ
// AltGr+(1) puis E : ร‰
//
partial alphanumeric_keys

xkb_symbols "latin9" {

    include "latin"
    include "nbsp(level3)"

    name[Group1]="French (legacy, alternative)";

    key <TLDE>	{ [              oe,              OE, leftdoublequotemark, rightdoublequotemark ] };
    key <AE01>	{ [       ampersand,               1,          dead_acute,       periodcentered ] };
    key <AE02>	{ [          eacute,               2,          asciitilde,               Eacute ] };
    key <AE03>	{ [        quotedbl,               3,          numbersign,              cedilla ] };
    key <AE04>	{ [      apostrophe,               4,           braceleft,                acute ] };
    key <AE05>	{ [       parenleft,               5,         bracketleft,            diaeresis ] };
    key <AE06>	{ [           minus,               6,                 bar,            brokenbar ] };
    key <AE07>	{ [          egrave,               7,          dead_grave,               Egrave ] };
    key <AE08>	{ [      underscore,               8,           backslash,               macron ] };
    key <AE09>	{ [        ccedilla,               9,         asciicircum,             Ccedilla ] };
    key <AE10>	{ [          agrave,               0,                  at,               Agrave ] };
    key <AE11>	{ [      parenright,          degree,        bracketright,           ydiaeresis ] };
    key <AE12>	{ [           equal,            plus,          braceright,       dead_abovering ] };

    key <AD01>	{ [               a,               A,         acircumflex,           adiaeresis ] };
    key <AD02>	{ [               z,               Z,               aring,                Aring ] };
    key <AD03>	{ [               e,               E,            EuroSign,                 cent ] };
    key <AD04>	{ [               r,               R,            ccedilla,             Ccedilla ] };
    key <AD05>	{ [               t,               T,               thorn,                THORN ] };
    key <AD06>	{ [               y,               Y,              yacute,               Yacute ] };
    key <AD07>	{ [               u,               U,         ucircumflex,           udiaeresis ] };
    key <AD08>	{ [               i,               I,         icircumflex,           idiaeresis ] };
    key <AD09>	{ [               o,               O,         ocircumflex,           odiaeresis ] };
    key <AD10>	{ [               p,               P,           paragraph,                grave ] };
    key <AD11>	{ [ dead_circumflex,  dead_diaeresis,          dead_tilde,           apostrophe ] };
    key <AD12>	{ [          dollar,	    sterling,         ecircumflex,           ediaeresis ] };

    key <AC01>	{ [               q,               Q,         Acircumflex,           Adiaeresis ] };
    key <AC02>	{ [               s,               S,              oslash,             Ooblique ] };
    key <AC03>	{ [               d,               D,         Ecircumflex,           Ediaeresis ] };
    key <AC04>	{ [               f,               F,           plusminus,          ordfeminine ] };
    key <AC05>	{ [               g,               G,                  ae,                   AE ] };
    key <AC06>	{ [               h,               H,                 eth,                  ETH ] };
    key <AC07>	{ [               j,               J,         Ucircumflex,           Udiaeresis ] };
    key <AC08>	{ [               k,               K,         Icircumflex,           Idiaeresis ] };
    key <AC09>	{ [               l,               L,         Ocircumflex,           Odiaeresis ] };
    key <AC10>	{ [               m,               M,         onesuperior,            masculine ] };
    key <AC11>	{ [          ugrave,         percent,         twosuperior,               Ugrave ] };
    key <BKSL>  { [        asterisk,              mu,       threesuperior,                  yen ] };

    key <LSGT>	{ [            less,         greater,                 bar                       ] };
    key <AB01>	{ [               w,               W,       guillemotleft	        	] };
    key <AB02>	{ [               x,               X,      guillemotright                       ] };
    key <AB03>	{ [               c,               C,           copyright                       ] };
    key <AB04>	{ [               v,               V,          registered		        ] };
    key <AB05>	{ [               b,               B,              ssharp                       ] };
    key <AB06>	{ [               n,               N,             notsign                       ] };
    key <AB07>	{ [           comma,        question,        questiondown                       ] };
    key <AB08>	{ [       semicolon,          period,            multiply		        ] };
    key <AB09>	{ [           colon,           slash,            division                       ] };
    key <AB10>	{ [          exclam,         section,          exclamdown                       ] };

    // 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 <KPDL>  { [       KP_Delete,      KP_Decimal,           KP_Delete,           KP_Decimal ] };

    include "level3(ralt_switch)"
};

partial alphanumeric_keys
xkb_symbols "latin9_Sundeadkeys" {

    // Modifies the basic fr-latin9 layout to use the Sun dead keys

    include "fr(latin9)"

    key <AE01>	{ [       ampersand,               1,         dead_acute,       periodcentered ] };
    key <AE07>	{ [          egrave,               7,         dead_grave,               Egrave ] };
    key <AD11>	{ [ dead_circumflex,  dead_diaeresis,         dead_tilde,           apostrophe ] };
};

partial alphanumeric_keys
xkb_symbols "latin9_sundeadkeys" {

    include "fr(latin9_Sundeadkeys)"

    name[Group1]="French (legacy, alternative, Sun dead keys)";
};

partial alphanumeric_keys
xkb_symbols "latin9_nodeadkeys" {

    // Modifies the basic fr-latin9 layout to eliminate all dead keys

    include "fr(latin9)"

    name[Group1]="French (legacy, alternative, eliminate dead keys)";

    key <AE01>	{ [       ampersand,               1,          apostrophe,       periodcentered ] };
    key <AE07>	{ [          egrave,               7,               grave,               Egrave ] };
    key <AE12>	{ [           equal,            plus,          braceright         	        ] };
    key <AD11>	{ [	asciicircum,  	   diaeresis,          asciitilde,           apostrophe ] };
};

// Bรฉpoย :ย Improved ergonomic french keymap using Dvorak method.
// Built by community on 'Dvorak Fr / Bรฉpo'ย :
// see http://www.clavier-dvorak.org/wiki/ to join and help.
// XOrg integration (1.0rc2 version) in 2008
// by Frรฉdรฉric Boiteux <fboiteux at free dot fr>
//
// Bรฉpo layout (1.0rc2 version) for a pc105 keyboard (french)ย :
// โ”Œโ”€โ”€โ”€โ”€โ”€โ”
// โ”‚ S A โ”‚   S = Shift,  A = AltGr + Shift
// โ”‚ s a โ”‚   s = normal, a = AltGr
// โ””โ”€โ”€โ”€โ”€โ”€โ”˜
//
// โ”Œโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฒโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”“
// โ”‚ # ยถ โ”‚ 1 โ€ž โ”‚ 2 โ€œ โ”‚ 3 โ€ โ”‚ 4 โ‰ค โ”‚ 5 โ‰ฅ โ”‚ 6   โ”‚ 7 ยฌ โ”‚ 8 ยผ โ”‚ 9 ยฝ โ”‚ 0 ยพ โ”‚ ยฐ โ€ฒ โ”‚ ` โ€ณ โ”ƒ โŒซ Retourโ”ƒ
// โ”‚ $ โ€“ โ”‚ " โ€” โ”‚ ยซ < โ”‚ ยป > โ”‚ ( [ โ”‚ ) ] โ”‚ @ ^ โ”‚ + ยฑ โ”‚ - โˆ’ โ”‚ / รท โ”‚ * ร— โ”‚ = โ‰  โ”‚ % โ€ฐ โ”ƒ  arriรจreโ”ƒ
// โ”ขโ”โ”โ”โ”โ”โ”ทโ”โ”ฑโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”บโ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”ซ
// โ”ƒ       โ”ƒ B ยฆ โ”‚ ร‰ ห โ”‚ P ยง โ”‚ O ล’ โ”‚ รˆ ` โ”‚ !   โ”‚ V   โ”‚ D ร โ”‚ L   โ”‚ J ฤฒ โ”‚ Z ฦ โ”‚ W   โ”ƒEntrรฉe โ”ƒ
// โ”ƒTab โ†น  โ”ƒ b | โ”‚ รฉ หŠ โ”‚ p & โ”‚ o ล“ โ”‚ รจ ` โ”‚ ห† ยก โ”‚ v ห‡ โ”‚ d รฐ โ”‚ l / โ”‚ j ฤณ โ”‚ z ษ™ โ”‚ w ฬ†  โ”ƒ   โŽ   โ”ƒ
// โ”ฃโ”โ”โ”โ”โ”โ”โ”โ”ปโ”ฑโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”บโ”“      โ”ƒ
// โ”ƒ        โ”ƒ A ร† โ”‚ U ร™ โ”‚ I ห™ โ”‚ E ยค โ”‚ ; ฬ›  โ”‚ C ลฟ โ”‚ T รž โ”‚ S แบž โ”‚ R โ„ข โ”‚ N   โ”‚ M ยบ โ”‚ ร‡ , โ”ƒ      โ”ƒ
// โ”ƒMaj โ‡ฌ   โ”ƒ a รฆ โ”‚ u รน โ”‚ i ฬˆ  โ”‚ e โ‚ฌ โ”‚ , โ€™ โ”‚ c ยฉ โ”‚ t รพ โ”‚ s รŸ โ”‚ r ยฎ โ”‚ n หœ โ”‚ m ยฏ โ”‚ รง ยธ โ”ƒ      โ”ƒ
// โ”ฃโ”โ”โ”โ”โ”โ”โ”โ”ณโ”นโ”€โ”€โ”€โ”€โ”ฌโ”ดโ”€โ”€โ”€โ”€โ”ฌโ”ดโ”€โ”€โ”€โ”€โ”ฌโ”ดโ”€โ”€โ”€โ”€โ”ฌโ”ดโ”€โ”€โ”€โ”€โ”ฌโ”ดโ”€โ”€โ”€โ”€โ”ฌโ”ดโ”€โ”€โ”€โ”€โ”ฌโ”ดโ”€โ”€โ”€โ”€โ”ฌโ”ดโ”€โ”€โ”€โ”€โ”ฌโ”ดโ”€โ”€โ”€โ”€โ”ฌโ”ดโ”€โ”€โ”€โ”€โ”ฒโ”ทโ”โ”โ”โ”โ”โ”ปโ”โ”โ”โ”โ”โ”โ”ซ
// โ”ƒ       โ”ƒ รŠ   โ”‚ ร€   โ”‚ Y โ€˜ โ”‚ X โ€™ โ”‚ : ยท โ”‚ K   โ”‚ ? ฬ‰  โ”‚ Q ฬฃ  โ”‚ G   โ”‚ H โ€ก โ”‚ F ยช โ”ƒ             โ”ƒ
// โ”ƒShift โ‡งโ”ƒ รช / โ”‚ ร  \ โ”‚ y { โ”‚ x } โ”‚ . โ€ฆ โ”‚ k ~ โ”‚ ' ยฟ โ”‚ q หš โ”‚ g ยต โ”‚ h โ€  โ”‚ f ห› โ”ƒShift โ‡ง      โ”ƒ
// โ”ฃโ”โ”โ”โ”โ”โ”โ”โ•‹โ”โ”โ”โ”โ”โ”ทโ”โ”ณโ”โ”โ”โ”ทโ”โ”โ”โ”ฑโ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”ฒโ”โ”ทโ”โ”โ”โ”โ”โ•ˆโ”โ”โ”โ”โ”โ”ปโ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”›
// โ”ƒ       โ”ƒ       โ”ƒ       โ”ƒ Espace insรฉc.   Espace insรฉc. fin โ”ƒ       โ”ƒ       โ”ƒ       โ”ƒ
// โ”ƒCtrl   โ”ƒMeta   โ”ƒAlt    โ”ƒ โฃ (Espace)      _               โฃ โ”ƒAltGr โ‡ฎโ”ƒMenu   โ”ƒCtrl   โ”ƒ
// โ”—โ”โ”โ”โ”โ”โ”โ”โ”ปโ”โ”โ”โ”โ”โ”โ”โ”ปโ”โ”โ”โ”โ”โ”โ”โ”นโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”บโ”โ”โ”โ”โ”โ”โ”โ”ปโ”โ”โ”โ”โ”โ”โ”โ”ปโ”โ”โ”โ”โ”โ”โ”โ”›
partial alphanumeric_keys
xkb_symbols "bepo" {

    include "level3(ralt_switch)"
    include "keypad(oss)"

    name[Group1]= "French (Bepo, ergonomic, Dvorak way)";

    // First row
    key <TLDE> { [          dollar,   numbersign,        endash,       paragraph ] }; // $ # โ€“ ยถ
    key <AE01> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [        quotedbl,            1,         emdash, doublelowquotemark ] }; // " 1 โ€” โ€ž
    key <AE02> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [   guillemotleft,            2,           less,  leftdoublequotemark ] }; // ยซ 2 < โ€œ
    key <AE03> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [  guillemotright,            3,        greater, rightdoublequotemark ] }; // ยป 3 > โ€
    key <AE04> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [       parenleft,            4,    bracketleft,      lessthanequal ] }; // ( 4 [ โ‰ค
    key <AE05> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [      parenright,            5,   bracketright,   greaterthanequal ] }; // ) 5 ] โ‰ฅ
    key <AE06> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [              at,            6,    asciicircum                 ] }; // @ 6 ^
    key <AE07> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [            plus,            7,      plusminus,        notsign ] }; // + 7 ยฑ ยฌ
    key <AE08> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [           minus,            8,          U2212,     onequarter ] }; // - 8 โˆ’ ยผ
    key <AE09> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [           slash,            9,       division,        onehalf ] }; // / 9 รท ยฝ
    key <AE10> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [        asterisk,            0,       multiply,  threequarters ] }; // * 0 ร— ยพ
    key <AE11> { [           equal,       degree,       notequal,        minutes ] }; // = ยฐ โ‰  โ€ฒ
    key <AE12> { [         percent,        grave,          U2030,        seconds ] }; // % ` โ€ฐ โ€ณ

    // Second row
    key <AD01> { [               b,            B,            bar,      brokenbar ] }; // b B | ยฆ
    key <AD02> { [          eacute,       Eacute,     dead_acute, dead_doubleacute ] }; // รฉ ร‰ หŠ ห
    key <AD03> { [               p,            P,      ampersand,        section ] }; // p P & ยง
    key <AD04> { [               o,            O,             oe,             OE ] }; // o O ล“ ล’
    key <AD05> { [          egrave,       Egrave,     dead_grave,          grave ] }; // รจ รˆ ` `
    key <AD06> { [ dead_circumflex,       exclam,     exclamdown                 ] }; // ^ ! ยก
    key <AD07> { [               v,            V,     dead_caron                 ] }; // v V ห‡
    key <AD08> { [               d,            D,            eth,            ETH ] }; // d D รฐ ร
    key <AD09> { [               l,            L,    dead_stroke                 ] }; // l L /
    key <AD10> { [               j,            J,          U0133,          U0132 ] }; // j J ฤณ ฤฒ
    key <AD11> { [               z,            Z,          schwa,          SCHWA ] }; // z Z ษ™ ฦ
    key <AD12> { [               w,            W,     dead_breve                 ] }; // w W ฬ†

    // Third row
    key <AC01> { [               a,            A,             ae,             AE ] }; // a A รฆ ร†
    key <AC02> { [               u,            U,         ugrave,         Ugrave ] }; // u U รน ร™
    key <AC03> { [               i,            I, dead_diaeresis,  dead_abovedot ] }; // i I ฬˆ ห™
    key <AC04> { [               e,            E,       EuroSign,  dead_currency ] }; // e E โ‚ฌ ยค
    key <AC05> { [           comma,    semicolon, rightsinglequotemark, dead_horn ] }; // , ; โ€™ ฬ›
    key <AC06> { [               c,            C,      copyright,          U017F ] }; // c C ยฉ ลฟ
    key <AC07> { [               t,            T,          thorn,          THORN ] }; // t T รพ รž
    key <AC08> { [               s,            S,         ssharp,          U1E9E ] }; // s S รŸ แบž
    key <AC09> { [               r,            R,     registered,      trademark ] }; // r R ยฎ โ„ข
    key <AC10> { [               n,            N,     dead_tilde                 ] }; // n N ~
    key <AC11> { [               m,            M,    dead_macron,      masculine ] }; // m M ฬ„ ยบ
    key <BKSL> { [        ccedilla,     Ccedilla,   dead_cedilla, dead_belowcomma ] }; // รง ร‡ ยธ ,

    // Fourth row
    key <LSGT> { [     ecircumflex,  Ecircumflex,          slash                 ] }; // รช รŠ /
    key <AB01> { [          agrave,       Agrave,      backslash                 ] }; // ร  ร€ \
    key <AB02> { [               y,            Y,      braceleft, leftsinglequotemark  ] }; // y Y { โ€˜
    key <AB03> { [               x,            X,     braceright, rightsinglequotemark ] }; // x X } โ€™
    key <AB04> { [          period,        colon,       ellipsis, periodcentered ] }; // . : โ€ฆ ยท
    key <AB05> { [               k,            K,     asciitilde                 ] }; // k K ~
    key <AB06> { [      apostrophe,     question,   questiondown,      dead_hook ] }; // ' ? ยฟ ฬ‰
    key <AB07> { [               q,            Q, dead_abovering,  dead_belowdot ] }; // q Q หš ฬฃ
    key <AB08> { [               g,            G,     dead_greek                 ] }; // g G ยต
    key <AB09> { [               h,            H,         dagger,   doubledagger ] }; // h H โ€  โ€ก
    key <AB10> { [               f,            F,    dead_ogonek,    ordfeminine ] }; // f F ฬจ ยช

    key <SPCE> { [           space, nobreakspace,     underscore,          U202F ] }; // โฃ (espace insรฉcable) _ (espace insรฉcable fin)
};

partial alphanumeric_keys
xkb_symbols "bepo_latin9" {

    // Restricts the fr(bepo) layout to latin9 symbols

    include "fr(bepo)"
    include "keypad(oss_latin9)"

    name[Group1]="French (Bepo, ergonomic, Dvorak way, Latin-9 only)";

    key <TLDE> { [          dollar,   numbersign,        dollar,       paragraph ] }; // $ # $ ยถ

    key <AE01> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [        quotedbl,            1                                 ] }; // " 1
    key <AE02> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [   guillemotleft,            2,           less                 ] }; // ยซ 2 <
    key <AE03> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [  guillemotright,            3,        greater                 ] }; // ยป 3 >
    key <AE04> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [       parenleft,            4,    bracketleft                 ] }; // ( 4 [
    key <AE05> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [      parenright,            5,   bracketright                 ] }; // ) 5 ]
    key <AE08> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [           minus,            8,          minus,     onequarter ] }; // - 8 - ยผ
    key <AE11> { [           equal,       degree                                 ] }; // = ยฐ
    key <AE12> { [         percent,        grave                                 ] }; // % `

    key <AD01> { [               b,            B,            bar                 ] }; // b B |
    key <AD02> { [          eacute,       Eacute,     dead_acute                 ] }; // รฉ ร‰ หŠ
    key <AD10> { [               j,            J                                 ] }; // j J
    key <AD11> { [               z,            Z                                 ] }; // z Z
    key <AD12> { [               w,            W                                 ] }; // w W

    key <AC03> { [               i,            I, dead_diaeresis                 ] }; // i I ฬˆ
    key <AC05> { [           comma,    semicolon,          comma,      dead_horn ] }; // , ; , ฬ›
    key <AC06> { [               c,            C,      copyright                 ] }; // c C ยฉ
    key <AC08> { [               s,            S,         ssharp                 ] }; // s S รŸ
    key <AC09> { [               r,            R,     registered                 ] }; // r R ยฎ
    key <AC11> { [               m,            M,         macron,      masculine ] }; // m M ฬ„ ยบ

    key <AB02> { [               y,            Y,      braceleft                 ] }; // y Y {
    key <AB03> { [               x,            X,     braceright                 ] }; // x X }
    key <AB04> { [          period,        colon                                 ] }; // . :
    key <AB09> { [               h,            H                                 ] }; // h H
    key <AB10> { [               f,            F,              f,    ordfeminine ] }; // f F   ยช

    // Noteย : on a besoin de redรฉfinir les niveaux 3 et 4,
    // donc nbsp(level2) ne suffit pasย !
    key <SPCE> { [           space,  nobreakspace,    underscore,   nobreakspace ] }; // โฃ (espace insรฉcable) _ (espace insรฉcable)
};

// Author   : Francis Leboutte, http://www.algo.be/ergo/dvorak-fr.html
//            thanks to Fabien Cazenave for his help
// Licence  : X11
// Version  : 0.3

// Base layer + dead AltGr key (`):
// โ”Œโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฒโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”“
// โ”‚ *   โ”‚ 1   โ”‚ 2   โ”‚ 3   โ”‚ 4   โ”‚ 5   โ”‚ 6   โ”‚ 7   โ”‚ 8   โ”‚ 9   โ”‚ 0   โ”‚ +   โ”‚ %   โ”ƒ          โ”ƒ
// โ”‚ _   โ”‚ =   โ”‚ / ยฑ โ”‚ - ยผ โ”‚ รจ ยฝ โ”‚ \ ยพ โ”‚ ^   โ”‚ (   โ”‚ ` ` โ”‚ )   โ”‚ "   โ”‚ [   โ”‚ ]   โ”ƒ โŒซ        โ”ƒ
// โ”ขโ”โ”โ”โ”โ”โ”ทโ”โ”โ”ฑโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”บโ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”ซ
// โ”ƒ        โ”ƒ ? ร† โ”‚ <   โ”‚ >   โ”‚ G   โ”‚ !   โ”‚ H   โ”‚ V   โ”‚ C ร‡ โ”‚ M   โ”‚ K   โ”‚ Z   โ”‚ &   โ”ƒ       โ”ƒ
// โ”ƒ โ†น      โ”ƒ : รฆ โ”‚ ' $ โ”‚ รฉ ร‰ โ”‚ g โ‚ฌ โ”‚ . ยฐ โ”‚ h   โ”‚ v   โ”‚ c รง โ”‚ m ยต โ”‚ k   โ”‚ z   โ”‚ ยจ   โ”ƒ       โ”ƒ
// โ”ฃโ”โ”โ”โ”โ”โ”โ”โ”โ”ปโ”ฑโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”บโ”“  โŽ   โ”ƒ
// โ”ƒ         โ”ƒ O ร’ โ”‚ A ร€ โ”‚ U ร™ โ”‚ E รˆ โ”‚ B   โ”‚ F   โ”‚ S   โ”‚ T   โ”‚ N   โ”‚ D   โ”‚ W   โ”‚ #   โ”ƒ      โ”ƒ
// โ”ƒ โ‡ฌ       โ”ƒ o รฒ โ”‚ a ร  โ”‚ u รน โ”‚ e รจ โ”‚ b   โ”‚ f   โ”‚ s ยซ โ”‚ t   โ”‚ n ยป โ”‚ d   โ”‚ w   โ”‚ ~   โ”ƒ      โ”ƒ
// โ”ฃโ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”นโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฒโ”โ”โ”ทโ”โ”โ”โ”โ”โ”ปโ”โ”โ”โ”โ”โ”โ”ซ
// โ”ƒ      โ”ƒ รง ร‡ โ”‚ | ล’ โ”‚ Q   โ”‚ @   โ”‚ I รŒ โ”‚ Y   โ”‚ X   โ”‚ R   โ”‚ L   โ”‚ P   โ”‚ J   โ”ƒ               โ”ƒ
// โ”ƒ โ‡ง    โ”ƒ ร  ร€ โ”‚ ; ล“ โ”‚ q { โ”‚ , } โ”‚ i รฌ โ”‚ y ยฃ โ”‚ x   โ”‚ r ยบ โ”‚ l   โ”‚ p ยง โ”‚ j   โ”ƒ โ‡ง             โ”ƒ
// โ”ฃโ”โ”โ”โ”โ”โ”โ”ปโ”ณโ”โ”โ”โ”โ”ทโ”โ”โ”ณโ”โ”โ”ทโ”โ”โ”โ”โ”ฑโ”ดโ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”ฒโ”โ”โ”โ”ทโ”โ”โ”โ”ณโ”โ”ทโ”โ”โ”โ”โ”โ•‹โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”ซ
// โ”ƒ       โ”ƒ       โ”ƒ       โ”ƒ โฃ                            โฝ โ”ƒ       โ”ƒ       โ”ƒ       โ”ƒ       โ”ƒ
// โ”ƒ ctrl  โ”ƒ super โ”ƒ alt   โ”ƒ โฃ Espace    Espace insรฉcable โฝ โ”ƒ alt   โ”ƒ super โ”ƒ menu  โ”ƒ ctrl  โ”ƒ
// โ”—โ”โ”โ”โ”โ”โ”โ”โ”ปโ”โ”โ”โ”โ”โ”โ”โ”ปโ”โ”โ”โ”โ”โ”โ”โ”นโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”บโ”โ”โ”โ”โ”โ”โ”โ”ปโ”โ”โ”โ”โ”โ”โ”โ”ปโ”โ”โ”โ”โ”โ”โ”โ”ปโ”โ”โ”โ”โ”โ”โ”โ”›

// Notice the specific Caps_Lock layer:
// โ”Œโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฒโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”“
// โ”‚ *   โ”‚ 1   โ”‚ 2   โ”‚ 3   โ”‚ 4   โ”‚ 5   โ”‚ 6   โ”‚ 7   โ”‚ 8   โ”‚ 9   โ”‚ 0   โ”‚ +   โ”‚ %   โ”ƒ          โ”ƒ
// โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”ƒ โŒซ        โ”ƒ
// โ”ขโ”โ”โ”โ”โ”โ”ทโ”โ”โ”ฑโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”บโ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”ซ
// โ”ƒ        โ”ƒ     โ”‚ <   โ”‚ >   โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”ƒ       โ”ƒ
// โ”ƒ โ†น      โ”ƒ     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”ƒ       โ”ƒ
// โ”ฃโ”โ”โ”โ”โ”โ”โ”โ”โ”ปโ”ฑโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”บโ”“  โŽ   โ”ƒ
// โ”ƒ         โ”ƒ     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”ƒ      โ”ƒ
// โ”ƒ โ‡ฌ       โ”ƒ     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”ƒ      โ”ƒ
// โ”ฃโ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”นโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฌโ”€โ”€โ”ดโ”€โ”€โ”ฒโ”โ”โ”ทโ”โ”โ”โ”โ”โ”ปโ”โ”โ”โ”โ”โ”โ”ซ
// โ”ƒ      โ”ƒ /   โ”‚ -   โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”ƒ               โ”ƒ
// โ”ƒ โ‡ง    โ”ƒ     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”‚     โ”ƒ โ‡ง             โ”ƒ
// โ”ฃโ”โ”โ”โ”โ”โ”โ”ปโ”ณโ”โ”โ”โ”โ”ทโ”โ”โ”ณโ”โ”โ”ทโ”โ”โ”โ”โ”ฑโ”ดโ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”ฒโ”โ”โ”โ”ทโ”โ”โ”โ”ณโ”โ”ทโ”โ”โ”โ”โ”โ•‹โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”ซ
// โ”ƒ       โ”ƒ       โ”ƒ       โ”ƒ โฃ                            โฝ โ”ƒ       โ”ƒ       โ”ƒ       โ”ƒ       โ”ƒ
// โ”ƒ ctrl  โ”ƒ super โ”ƒ alt   โ”ƒ โฃ Espace    Espace insรฉcable โฝ โ”ƒ alt   โ”ƒ super โ”ƒ menu  โ”ƒ ctrl  โ”ƒ
// โ”—โ”โ”โ”โ”โ”โ”โ”โ”ปโ”โ”โ”โ”โ”โ”โ”โ”ปโ”โ”โ”โ”โ”โ”โ”โ”นโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”บโ”โ”โ”โ”โ”โ”โ”โ”ปโ”โ”โ”โ”โ”โ”โ”โ”ปโ”โ”โ”โ”โ”โ”โ”โ”ปโ”โ”โ”โ”โ”โ”โ”โ”›

partial alphanumeric_keys modifier_keys
xkb_symbols "dvorak" {
  name[Group1]="French (Dvorak)";

  // First row
  key <TLDE> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [       underscore,   asterisk                  ] };
  key <AE01> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [            equal,          1                  ] };
  key <AE02> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [            slash,          2,       plusminus ] };
  key <AE03> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [            minus,          3,      onequarter ] };
  key <AE04> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [           egrave,          4,         onehalf ] };
  key <AE05> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [        backslash,          5,   threequarters ] };
  key <AE06> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [  dead_circumflex,          6                  ] };
  key <AE07> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [        parenleft,          7                  ] };
  key <AE08> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [ ISO_Level3_Latch,          8,           grave ] };
  key <AE09> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [       parenright,          9                  ] };
  key <AE10> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [         quotedbl,          0                  ] };
  key <AE11> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [      bracketleft,       plus                  ] };
  key <AE12> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [     bracketright,    percent                  ] };

  // Second row
  key <AD01> { [            colon,         question,              ae,               AE ] };
  key <AD02> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [       apostrophe,       less,          dollar ] };
  key <AD03> { type[group1] = "FOUR_LEVEL_SEMIALPHABETIC", [           eacute,    greater,          Eacute ] };
  key <AD04> { [                g,                G,        EuroSign                   ] };
  key <AD05> { [           period,           exclam,          degree                   ] };
  key <AD06> { [                h,                H                                    ] };
  key <AD07> { [                v,                V                                    ] };
  key <AD08> { [                c,                C,        ccedilla,         Ccedilla ] };
  key <AD09> { [                m,                M,              mu                   ] };
  key <AD10> { [                k,                K                                    ] };
  key <AD11> { [                z,                Z                                    ] };
  key <AD12> { [   dead_diaeresis,        ampersand                                    ] };

  // Third row
  key <AC01> { [                o,                O,          ograve,           Ograve ] };
  key <AC02> { [                a,                A,          agrave,           Agrave ] };
  key <AC03> { [                u,                U,          ugrave,           Ugrave ] };
  key <AC04> { [                e,                E,          egrave,           Egrave ] };
  key <AC05> { [                b,                B                                    ] };
  key <AC06> { [                f,                F                                    ] };
  key <AC07> { [                s,                S,   guillemotleft                   ] };
  key <AC08> { [                t,                T                                    ] };
  key <AC09> { [                n,                N,  guillemotright                   ] };
  key <AC10> { [                d,                D                                    ] };
  key <AC11> { [                w,                W                                    ] };
  key <BKSL> { [       asciitilde,       numbersign                                    ] };

  // Fourth row
  key <LSGT> { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [       agrave, ccedilla,  Agrave, Ccedilla,   slash ] };
  key <AB01> { type[group1] = "FOUR_LEVEL_PLUS_LOCK", [    semicolon,      bar,      oe,       OE,   minus ] };
  key <AB02> { [                q,                Q,       braceleft                   ] };
  key <AB03> { [            comma,               at,      braceright                   ] };
  key <AB04> { [                i,                I,          igrave,           Igrave ] };
  key <AB05> { [                y,                Y,        sterling                   ] };
  key <AB06> { [                x,                X                                    ] };
  key <AB07> { [                r,                R,       masculine                   ] };
  key <AB08> { [                l,                L                                    ] };
  key <AB09> { [                p,                P,         section                   ] };
  key <AB10> { [                j,                J                                    ] };

  key <SPCE> { [            space,            space,    nobreakspace,     nobreakspace ] };
};

// C'WHERTY:ย Breton keyboard. Ar c'hlavier brezhoneg.
// Copyright ยฉ 2009 Dominique Pellรฉ <dominique.pelle@gmail.com>
// Version: 0.1
//
// โ”Œโ”€โ”€โ”€โ”€โ”€โ”
// โ”‚ S A โ”‚   S = Reol = Shift,  A = ArErl + Pennlizherenn = AltGr + Shift
// โ”‚ s a โ”‚   s = normal,        a = ArErl = AltGr
// โ””โ”€โ”€โ”€โ”€โ”€โ”˜
//
// โ”Œโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฒโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”“
// โ”‚ $ ฮ“ โ”‚ 1 ฮ” โ”‚ 2 ฮ˜ โ”‚ 3 ฮ› โ”‚ 4 ฮž โ”‚ 5 ฮ  โ”‚ 6 ฮฃ โ”‚ 7 ฮฆ โ”‚ 8 ฮจ โ”‚ 9 ร‡ โ”‚ 0 ฮฉ โ”‚ ยฐ รŸ โ”‚ + ยฌ โ”ƒ โŒซ Souzaรฑโ”ƒ
// โ”‚ ยฒ ห™ โ”‚ & ยฏ โ”‚ รฉ ยด โ”‚ " # โ”‚ ' { โ”‚ ( [ โ”‚ - | โ”‚ รจ ` โ”‚ - \ โ”‚ รง ยฑ โ”‚ ร  @ โ”‚ ) ] โ”‚ = } โ”ƒ         โ”ƒ
// โ”ขโ”โ”โ”โ”โ”โ”ทโ”โ”ฑโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”บโ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”ซ
// โ”ƒToalennโ”ƒ C'h โ”‚ W ฯ‰ โ”‚ E ฮต โ”‚ R ฯ โ”‚ T ฯ„ โ”‚ Y ฯˆ โ”‚ U ฯ… โ”‚ I ฮน โ”‚ O OEโ”‚ P ฯ€ โ”‚ ยจ ยฅ โ”‚ * ยฃ โ”ƒEnankaรฑโ”ƒ
// โ”ƒ     โ†น โ”ƒ c'h โ”‚ w   โ”‚ e โ‚ฌ โ”‚ r   โ”‚ t   โ”‚ y   โ”‚ u   โ”‚ i ฤฑ โ”‚ o oeโ”‚ p   โ”‚ ^ ยซ โ”‚ / ยป โ”ƒ   โŽ   โ”ƒ
// โ”ฃโ”โ”โ”โ”โ”โ”โ”โ”ปโ”ฑโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”ดโ”ฌโ”€โ”€โ”€โ”€โ”บโ”“      โ”ƒ
// โ”ƒPrenn   โ”ƒ A ร† โ”‚ S ฯƒ โ”‚ D ฮด โ”‚ F ฯ† โ”‚ G ฮณ โ”‚ H ฮท โ”‚ J ฯ‚ โ”‚ K ฮบ โ”‚ L ฮป โ”‚ M ฮผ โ”‚ ร™ ยฎ โ”‚ ! ยก โ”ƒ      โ”ƒ
// โ”ƒPennli โ‡ฌโ”ƒ a รฆ โ”‚ s   โ”‚ d $ โ”‚ f   โ”‚ g   โ”‚ h   โ”‚ j   โ”‚ k   โ”‚ l   โ”‚ m   โ”‚ รน ลญ โ”‚ ? ยฟ โ”ƒ      โ”ƒ
// โ”ฃโ”โ”โ”โ”โ”โ”โ”โ”ณโ”นโ”€โ”€โ”€โ”€โ”ฌโ”ดโ”€โ”€โ”€โ”€โ”ฌโ”ดโ”€โ”€โ”€โ”€โ”ฌโ”ดโ”€โ”€โ”€โ”€โ”ฌโ”ดโ”€โ”€โ”€โ”€โ”ฌโ”ดโ”€โ”€โ”€โ”€โ”ฌโ”ดโ”€โ”€โ”€โ”€โ”ฌโ”ดโ”€โ”€โ”€โ”€โ”ฌโ”ดโ”€โ”€โ”€โ”€โ”ฌโ”ดโ”€โ”€โ”€โ”€โ”ฌโ”ดโ”€โ”€โ”€โ”€โ”ฒโ”ทโ”โ”โ”โ”โ”โ”ปโ”โ”โ”โ”โ”โ”โ”ซ
// โ”ƒ       โ”ƒ Q ฮธ โ”‚ Z ฮถ โ”‚ X ฮพ โ”‚ C ฯ‡ โ”‚ V   โ”‚ B ฮฒ โ”‚ N ฮฝ โ”‚ CH  โ”‚ ร‘   โ”‚ : ยฉ โ”‚ ;   โ”ƒ             โ”ƒ
// โ”ƒShift โ‡งโ”ƒ q < โ”‚ z > โ”‚ x   โ”‚ c ยข โ”‚ v   โ”‚ b   โ”‚ n   โ”‚ ch  โ”‚ รฑ   โ”‚ .   โ”‚ ,   โ”ƒShift โ‡ง      โ”ƒ
// โ”ฃโ”โ”โ”โ”โ”โ”โ”โ•‹โ”โ”โ”โ”โ”โ”ทโ”โ”ณโ”โ”โ”โ”ทโ”โ”โ”โ”ฑโ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”ฒโ”โ”ทโ”โ”โ”โ”โ”โ•ˆโ”โ”โ”โ”โ”โ”ปโ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”›
// โ”ƒ       โ”ƒ       โ”ƒ       โ”ƒ โฝ Espace insรฉcable              โฃ โ”ƒ       โ”ƒ       โ”ƒ       โ”ƒ
// โ”ƒReol   โ”ƒMeta   โ”ƒErl    โ”ƒ โฃ Espace                        โฃ โ”ƒArErl โ‡ฎโ”ƒMenu   โ”ƒReol   โ”ƒ
// โ”—โ”โ”โ”โ”โ”โ”โ”โ”ปโ”โ”โ”โ”โ”โ”โ”โ”ปโ”โ”โ”โ”โ”โ”โ”โ”นโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”บโ”โ”โ”โ”โ”โ”โ”โ”ปโ”โ”โ”โ”โ”โ”โ”โ”ปโ”โ”โ”โ”โ”โ”โ”โ”›
partial alphanumeric_keys
xkb_symbols "bre" {

    include "keypad(oss)"

    name[Group1]= "French (Breton)";

    // First row
    key <TLDE> { [     twosuperior,     dead_tilde,   dead_abovedot,    Greek_GAMMA ] };
    key <AE01> { [       ampersand,              1,     dead_macron,    Greek_DELTA ] };
    key <AE02> { [          eacute,              2,      dead_acute,    Greek_THETA ] };
    key <AE03> { [        quotedbl,              3,      numbersign,    Greek_LAMDA ] };
    key <AE04> { [      apostrophe,              4,       braceleft,       Greek_XI ] };
    key <AE05> { [       parenleft,              5,     bracketleft,       Greek_PI ] };
    key <AE06> { [           minus,              6,             bar,    Greek_SIGMA ] };
    key <AE07> { [          egrave,              7,      dead_grave,      Greek_PHI ] };
    key <AE08> { [      underscore,              8,       backslash,      Greek_PSI ] };
    key <AE09> { [        ccedilla,              9,       plusminus,       Ccedilla ] };
    key <AE10> { [          agrave,              0,              at,    Greek_OMEGA ] };
    key <AE11> { [      parenright, dead_abovering,    bracketright,         ssharp ] };
    key <AE12> { [           equal,           plus,      braceright,        notsign ] };

    // Second row
    // Handling the C'H key correctly requires an inputmethod (XIM)
    // See https://bugs.freedesktop.org/show_bug.cgi?id=19506
 // key <AD01> { [    trigraph_c_h,   trigraph_C_h,    trigraph_C_H,    Greek_alpha ] };
    key <AD01> { [           UF8FD,          UF8FE,           UF8FF,    Greek_alpha ] };
    key <AD02> { [               w,              W,     Greek_omega,    Greek_omega ] };
    key <AD03> { [               e,              E,        EuroSign,  Greek_epsilon ] };
    key <AD04> { [               r,              R,       Greek_rho,      Greek_rho ] };
    key <AD05> { [               t,              T,       Greek_tau,      Greek_tau ] };
    key <AD06> { [               y,              Y,       Greek_psi,      Greek_psi ] };
    key <AD07> { [               u,              U,   Greek_upsilon,  Greek_upsilon ] };
    key <AD08> { [               i,              I,        idotless,     Greek_iota ] };
    key <AD09> { [               o,              O,              oe,             OE ] };
    key <AD10> { [               p,              P,        Greek_pi,       Greek_pi ] };
    key <AD11> { [ dead_circumflex, dead_diaeresis,   guillemotleft,            yen ] };
    key <AD12> { [           slash,       asterisk,  guillemotright,       sterling ] };

    // Third row
    key <AC01> { [               a,              A,              ae,             AE ] };
    key <AC02> { [               s,              S,     Greek_sigma,    Greek_sigma ] };
    key <AC03> { [               d,              D,          dollar,    Greek_delta ] };
    key <AC04> { [               f,              F,       Greek_phi,      Greek_phi ] };
    key <AC05> { [               g,              G,     Greek_gamma,    Greek_gamma ] };
    key <AC06> { [               h,              H,       Greek_eta,      Greek_eta ] };
    key <AC07> { [               j,              J, Greek_finalsmallsigma, Greek_finalsmallsigma ] };
    key <AC08> { [               k,              K,       Greek_kappa,  Greek_kappa ] };
    key <AC09> { [               l,              L,       Greek_lamda, Greek_lambda ] };
    key <AC10> { [               m,              M,          Greek_mu,     Greek_mu ] };
    key <AC11> { [          ugrave,         Ugrave,            ubreve,   registered ] };
    key <BKSL> { [        question,         exclam,      questiondown,   exclamdown ] };

    // Fourth row
    key <LSGT> { [               q,              Q,            less,    Greek_theta ] };
    key <AB01> { [               z,              Z,         greater,     Greek_zeta ] };
    key <AB02> { [               x,              X,        Greek_xi,       Greek_xi ] };
    key <AB03> { [               c,              C,            cent,      Greek_chi ] };
    key <AB04> { [               v,              V                                  ] };
    key <AB05> { [               b,              B,      Greek_beta,     Greek_beta ] };
    key <AB06> { [               n,              N,        Greek_nu,       Greek_nu ] };
    // Handling the CH key correctly requires an inputmethod (XIM)
    // See https://bugs.freedesktop.org/show_bug.cgi?id=19506
 // key <AB07> { [      digraph_ch,     digraph_Ch,      digraph_CH,  Greek_omicron ] };
    key <AB07> { [           UF8FA,          UF8FB,           UF8FC,  Greek_omicron ] };
    key <AB08> { [          ntilde,         Ntilde                                  ] };
    key <AB09> { [          period,          colon,         section,      copyright ] };
    key <AB10> { [           comma,      semicolon,         percent                 ] };

    key <SPCE> { [           space,   nobreakspace,           space,   nobreakspace ] };

    include "level3(ralt_switch)"
};

// Occitan layout
// Author : 2009 Thomas Metz <tmetz @ free.fr>
// Derived from the layout defined at http://www.panoccitan.org
// Version: 0.1
// Differences from OSS French keyboard :
// - add รก, รญ, รฒ, รณ et รบ, ร, ร, ร’, ร“, รš, รฑ, ร‘
// - change position of รฆ, รผ, รฎ, รป, ล“, รด, รถ, รฏ, รข, รซ
//
// โ”Œโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”ฒโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”“
// โ”‚ ยณ ยธ โ”‚ 1 ฬจ  โ”‚ 2 ร‰ โ”‚ 3 ห˜ โ”‚ 4 โ€” โ”‚ 5 โ€“ โ”‚ 6 โ€‘ โ”‚ 7 รˆ โ”‚ 8 โ„ข โ”‚ 9 ร‡ โ”‚ 0 ร€ โ”‚ ยฐ โ‰  โ”‚ + ยฑ โ”ƒ โŒซ Retourโ”ƒ
// โ”‚ ยฒ ยน โ”‚ & ห‡ โ”‚ รฉ ~ โ”‚ " # โ”‚ ' { โ”‚ ( [ โ”‚ - | โ”‚ รจ ` โ”‚ _ \ โ”‚ รง ^ โ”‚ ร  @ โ”‚ ) ] โ”‚ = } โ”ƒ  arriรจreโ”ƒ
// โ”ขโ”โ”โ”โ”โ”โ”ทโ”โ”ฑโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”ดโ”€โ”ฌโ”€โ”€โ”€โ”บโ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”ซ
// โ”ƒ       โ”ƒ A ร โ”‚ Z ร† โ”‚ E ยข โ”‚ R รŠ โ”‚ T ร‹ โ”‚ Y ร› โ”‚ U รš โ”‚ I ร โ”‚ O ร“ โ”‚ P ร’ โ”‚ ยจ ล’ โ”‚ ยฃ ร˜ โ”ƒEntrรฉe โ”ƒ
// โ”ƒTab โ†น  โ”ƒ 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 ร‘ โ”‚ ? โ€ฆ โ”‚ . . โ”‚ / โˆ• โ”‚ ยง โˆ’ โ”ƒ             โ”ƒ
// โ”ƒShift โ‡งโ”ƒ < โ‰ค โ”‚ w ยซ โ”‚ x ยป โ”‚ c ยฉ โ”‚ v โ†’ โ”‚ b โ†“ โ”‚ n รฑ โ”‚ , ยฟ โ”‚ ; ร— โ”‚ : รท โ”‚ ! ยก โ”ƒShift โ‡ง      โ”ƒ
// โ”ฃโ”โ”โ”โ”โ”โ”โ”โ•‹โ”โ”โ”โ”โ”โ”ทโ”โ”ณโ”โ”โ”โ”ทโ”โ”โ”โ”ฑโ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”ฒโ”โ”ทโ”โ”โ”โ”โ”โ•ˆโ”โ”โ”โ”โ”โ”ปโ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”›
// โ”ƒ       โ”ƒ       โ”ƒ       โ”ƒ โฃ         Espace fine insรฉcable โฝ โ”ƒ       โ”ƒ       โ”ƒ       โ”ƒ
// โ”ƒCtrl   โ”ƒMeta   โ”ƒAlt    โ”ƒ โฃ Espace       Espace insรฉcable โฝ โ”ƒAltGr โ‡ฎโ”ƒMenu   โ”ƒCtrl   โ”ƒ
// โ”—โ”โ”โ”โ”โ”โ”โ”โ”ปโ”โ”โ”โ”โ”โ”โ”โ”ปโ”โ”โ”โ”โ”โ”โ”โ”นโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”บโ”โ”โ”โ”โ”โ”โ”โ”ปโ”โ”โ”โ”โ”โ”โ”โ”ปโ”โ”โ”โ”โ”โ”โ”โ”›
partial alphanumeric_keys
xkb_symbols "oci" {

    include "fr(oss)"

    name[Group1]= "Occitan";

    key <AD01>	{ [                a,                A,               aacute,                Aacute ] }; // a A รก ร
    key <AD02>	{ [                z,                Z,                   ae,                    AE ] }; // z Z รฆ ร†
    key <AD05>	{ [                t,                T,           ediaeresis,            Ediaeresis ] }; // t T รซ ร‹
    key <AD06>	{ [                y,                Y,          ucircumflex,           Ucircumflex ] }; // y Y รป ร›
    key <AD07>	{ [                u,                U,               uacute,                Uacute ] }; // u U รบ รš
    key <AD08>	{ [                i,                I,               iacute,                Iacute ] }; // i I รญ ร
    key <AD09>	{ [                o,                O,               oacute,                Oacute ] }; // o O รณ ร“
    key <AD10>	{ [                p,                P,               ograve,                Ograve ] }; // p P รฒ ร’
    key <AD11>	{ [  dead_circumflex,   dead_diaeresis,                   oe,                    OE ] }; // ^ ฬˆ ฬƒ ล“ ล’

    key <AC03>	{ [                d,                D,          acircumflex,           Acircumflex ] }; // d D รข ร‚
    key <AC06>	{ [                h,                H,           udiaeresis,            Udiaeresis ] }; // h H รผ รœ
    key <AC07>	{ [                j,                J,          icircumflex,           Icircumflex ] }; // j J รฎ รŽ
    key <AC08>	{ [                k,                K,           idiaeresis,            Idiaeresis ] }; // k K รฏ ร
    key <AC09>	{ [                l,                L,          ocircumflex,           Ocircumflex ] }; // l L รด ร”

    key <AB04>  { [                v,                V,           rightarrow,             leftarrow ] }; // v V โ†’ โ†
    key <AB06>  { [                n,                N,               ntilde,                Ntilde ] }; // n N รฑ ร‘
};

// Marc.Shapiro@inria.fr 19-sep-1998
// modifications : Etienne Herlent <eherlent@linux-france.org> june 2000
// adapted to the new input layer :
//        Martin Costabel <costabel@wanadoo.fr> 3-jan-2001
// adapted for Latin9 alphabet (ISO-8859-15):
//        Etienne Herlent <eherlent@linux-france.org> march 2005

// This map is an almost-complete mapping of the standard French
// MacIntosh keyboard under Xwindows.  I tried to remain as faithful
// as possible to the Mac meaning of each key.	I did this entirely by
// hand and by intuition, relying on the Clavier (Keyboard?) Desktop
// Accessory for the Mac meaning of keys, and on reading keysymdef.h
// to intuit the corresponding X names.	 Lacking proper documentation,
// I may have made some mistakes.

// Entries marked CHECK are particularly uncertain

// Entries marked MISSING mark Mac characters for which I was unable
// to find a corresponding keysym.  (Some for sure don't: e.g. the
// Apple mark and the oe/OE character; others I may have simply not
// found.)

// Copied from macintosh_vndr/fr
partial alphanumeric_keys
xkb_symbols "mac" {

    name[Group1]= "French (Macintosh)";

    key <TLDE> {	[          at, numbersign, periodcentered,  Ydiaeresis	]	}; // MISSING: Ydiaeresis; eherlent : ok in Latin9
    key <AE01> {	[   ampersand,    1,   VoidSymbol,    dead_acute	]	}; // MISSING: Apple
    key <AE02> {	[      eacute,    2,   ediaeresis,        Eacute	]	};
    key <AE03> {	[    quotedbl,    3,   VoidSymbol,    VoidSymbol	] 	}; // CHECK all quotemarks
    key <AE04> {	[  apostrophe,    4,   VoidSymbol,    VoidSymbol	] 	};
    key <AE05> {	[   parenleft,    5,    braceleft,   bracketleft	]	};
 // CHECK section
    key <AE06> {	[     section,    6,    paragraph,         aring	]	};
    key <AE07> {	[      egrave,    7, guillemotleft, guillemotright	]	};
    key <AE08> {	[      exclam,    8,   exclamdown,   Ucircumflex	]	};
    key <AE09> {	[    ccedilla,    9,     Ccedilla,        Aacute	]	};
    key <AE10> {	[      agrave,    0,       oslash,    VoidSymbol	]	}; // MISSING: Oslash
    key <AE11> {	[  parenright, degree, braceright,  bracketright	]	};
    key <AE12> {	[       minus, underscore, emdash,        endash	]	}; // CHECK dashes

    key <AD01> {	[           a,  A,           ae,          AE	]	};
    key <AD02> {	[           z,  Z,  Acircumflex,       Aring	]	};
    key <AD03> {	[           e,  E,  ecircumflex, Ecircumflex	]	};
    key <AD04> {	[           r,  R,   registered,    currency	]	};
    key <AD05> {	[           t,  T,   VoidSymbol,  VoidSymbol	]	};
    key <AD06> {	[           y,  Y,       Uacute,  Ydiaeresis	]	}; // MISSING: Ydiaeresis; eherlent : ok in Latin9
    key <AD07> {	[           u,  U,   VoidSymbol, ordfeminine	]	}; // MISSING: ordmasculine?
    key <AD08> {	[           i,  I,  icircumflex,  idiaeresis	]	};
    key <AD09> {	[           o,  O,           oe,          OE	]	}; // MISSING: oe, OE lacking in Latin1; eherlent ok in Latin9
    key <AD10> {	[           p,  P,   VoidSymbol,  VoidSymbol	]	};
    key <AD11> {	[dead_circumflex,dead_diaeresis, ocircumflex, Ocircumflex	]	};
    key <AD12> {	[      dollar, asterisk,   EuroSign, yen	]	}; // eherlent : EuroSign in Latin9

    key <AC01> {	[         q, Q, acircumflex,         Agrave	]	};
    key <AC02> {	[         s, S,      Ograve,     VoidSymbol	]	};
    key <AC03> {	[         d, D,  VoidSymbol,     VoidSymbol	]	};
    key <AC04> {	[         f, F,  VoidSymbol, periodcentered	]	}; // MISSING: oblong script f??
    key <AC05> {	[         g, G,  VoidSymbol,     VoidSymbol	]	}; // MISSING: kerned fi, fl
    key <AC06> {	[         h, H,      Igrave,    Icircumflex	]	};
    key <AC07> {	[         j, J,  Idiaeresis,         Iacute	]	};
    key <AC08> {	[         k, K,      Egrave,     Ediaeresis	]	};
    key <AC09> {	[         l, L,     notsign,            bar	]	};
    key <AC10> {	[         m, M,          mu,         Oacute	]	};
    key <AC11> {	[    ugrave,percent, Ugrave,    ucircumflex	]	}; // MISSING: per-mille
    key <BKSL> {	[ dead_grave, sterling,  at,     numbersign	]	};

    key <LSGT> {	[      less, greater, VoidSymbol, VoidSymbol	]	};
    key <AB01> {	[         w, W, VoidSymbol,   VoidSymbol	]	}; // MISSING: half-guillemot (single angle bracket)
    key <AB02> {	[         x, X, VoidSymbol,   VoidSymbol	]	}; // CHECK similarequal; MISSING: extra-slanted slash
    key <AB03> {	[         c, C,  copyright,         cent	]	};
    key <AB04> {	[         v, V,    diamond,  leftradical	]	}; // CHECK diamond, leftradical
    key <AB05> {	[         b, B,     ssharp,   VoidSymbol	]	}; // CHECK: Greek_beta or ssharp?; MISSING: oblong script s
    key <AB06> {	[         n, N,  dead_tilde,  asciitilde	]	};
    key <AB07> {	[     comma,  question, VoidSymbol,  questiondown	]	};
    key <AB08> {	[ semicolon,  period, VoidSymbol,  periodcentered	]	};
    key <AB09> {	[     colon,  slash,   division,        backslash	]	};
    key <AB10> {	[     equal,   plus, VoidSymbol,        plusminus	]	};

    key <SPCE> {	[     space,  space, nobreakspace,   nobreakspace	]	};

    key <KPDL> {	[  comma,KP_Decimal	]	};

    include "level3(ralt_switch)"
};

partial alphanumeric_keys
xkb_symbols "geo" {
    include "ge(basic)"

    name[Group1]= "Georgian (France, AZERTY Tskapo)";

    key <TLDE> { [ exclam, noSymbol ] };
    key <AE01> { [ 0x0100201e, 1 ] };
    key <AE02> { [ 0x01002116, 2 ] };
    key <AE03> { [ percent, 3    ] };
    key <AE04> { [ parenleft, 4  ] };
    key <AE05> { [ colon, 5      ] };
    key <AE06> { [ semicolon, 6  ] };
    key <AE07> { [ question, 7   ] };
    key <AE08> { [ 0x01002116, 8 ] };
    key <AE09> { [ degree, 9     ] };
    key <AE10> { [ parenright, 0 ] };
    key <AE11> { [ minus, underscore, 0x01002014 ] };
    key <AE12> { [ less, greater ] };

    key <AD01> { [ 0x010010d0,  0x010010fa     ] };
    key <AD02> { [ 0x010010d6,  Z              ] };
    key <AD03> { [ 0x010010d4,  E, 0x010010f1  ] };
    key <AD04> { [ 0x010010e0,  0x010000ae     ] };
    key <AD05> { [ 0x010010e2,  T              ] };
    key <AD06> { [ 0x010010e7,  0x010010f8     ] };
    key <AD07> { [ 0x010010e3,  U              ] };
    key <AD08> { [ 0x010010d8,  0x010010f2     ] };
    key <AD09> { [ 0x010010dd,  O              ] };
    key <AD10> { [ 0x010010de,  P              ] };
    key <AD11> { [ 0x010010d7,  T              ] };
    key <AD12> { [ 0x010010eb,  Z              ] };

    key <AC01> { [ 0x010010e5,  Q              ] };
    key <AC02> { [ 0x010010e1,  S              ] };
    key <AC03> { [ 0x010010d3,  D              ] };
    key <AC04> { [ 0x010010e4,  0x010010f6     ] };
    key <AC05> { [ 0x010010d2,  0x010010f9     ] };
    key <AC06> { [ 0x010010f0,  0x010010f5     ] };
    key <AC07> { [ 0x010010ef,  0x010010f7     ] };
    key <AC08> { [ 0x010010d9,  K              ] };
    key <AC09> { [ 0x010010da,  L              ] };
    key <AC10> { [ 0x010010db,  M              ] };
    key <AC11> { [ 0x010010df,  J              ] };
    key <BKSL> { [ 0x010010e9,  0x010000a9     ] };

    key <LSGT> { [ guillemotleft,guillemotright ] };
    key <AB01> { [ 0x010010ec,  W               ] };
    key <AB02> { [ 0x010010ee,  0x010010f4      ] };
    key <AB03> { [ 0x010010ea,  0x010000a9      ] };
    key <AB04> { [ 0x010010d5,  0x010010f3      ] };
    key <AB05> { [ 0x010010d1,  B               ] };
    key <AB06> { [ 0x010010dc,  0x010010fc      ] };
    key <AB07> { [ comma,       0x01002014      ] };
    key <AB08> { [ 0x010010e8,  S               ] };
    key <AB09> { [ 0x010010e6,  noSymbol        ] };
    key <AB10> { [ 0x010010ed,  noSymbol        ] };

};

// EXTRAS:

partial alphanumeric_keys
	xkb_symbols "sun_type6" {
	include "sun_vndr/fr(sun_type6)"
};

Samx