home *** CD-ROM | disk | FTP | other *** search
/ Mac Easy 2010 May / Mac Life Ubuntu.iso / casper / filesystem.squashfs / usr / share / X11 / xkb / symbols / us < prev    next >
Encoding:
Text File  |  2009-03-31  |  45.1 KB  |  1,054 lines

  1. // $XKeyboardConfig$
  2.  
  3. //
  4. // $XdotOrg: xc/programs/xkbcomp/symbols/us,v 1.1.4.3 2004/03/05 13:41:33 eich Exp $
  5. // $XFree86: xc/programs/xkbcomp/symbols/us,v 1.6 2003/10/31 14:32:05 pascal Exp $
  6.  
  7. default
  8. partial alphanumeric_keys modifier_keys 
  9. xkb_symbols "basic" {
  10.  
  11.     name[Group1]= "USA";
  12.  
  13.     // Alphanumeric section
  14.     key <TLDE> {    [     grave,    asciitilde    ]    };
  15.     key <AE01> {    [      1,    exclam         ]    };
  16.     key <AE02> {    [      2,    at        ]    };
  17.     key <AE03> {    [      3,    numbersign    ]    };
  18.     key <AE04> {    [      4,    dollar        ]    };
  19.     key <AE05> {    [      5,    percent        ]    };
  20.     key <AE06> {    [      6,    asciicircum    ]    };
  21.     key <AE07> {    [      7,    ampersand    ]    };
  22.     key <AE08> {    [      8,    asterisk    ]    };
  23.     key <AE09> {    [      9,    parenleft    ]    };
  24.     key <AE10> {    [      0,    parenright    ]    };
  25.     key <AE11> {    [     minus,    underscore    ]    };
  26.     key <AE12> {    [     equal,    plus        ]    };
  27.  
  28.     key <AD01> {    [      q,    Q         ]    };
  29.     key <AD02> {    [      w,    W        ]    };
  30.     key <AD03> {    [      e,    E        ]    };
  31.     key <AD04> {    [      r,    R        ]    };
  32.     key <AD05> {    [      t,    T        ]    };
  33.     key <AD06> {    [      y,    Y        ]    };
  34.     key <AD07> {    [      u,    U        ]    };
  35.     key <AD08> {    [      i,    I        ]    };
  36.     key <AD09> {    [      o,    O        ]    };
  37.     key <AD10> {    [      p,    P        ]    };
  38.     key <AD11> {    [ bracketleft,    braceleft    ]    };
  39.     key <AD12> {    [ bracketright,    braceright    ]    };
  40.  
  41.     key <AC01> {    [      a,    A         ]    };
  42.     key <AC02> {    [      s,    S        ]    };
  43.     key <AC03> {    [      d,    D        ]    };
  44.     key <AC04> {    [      f,    F        ]    };
  45.     key <AC05> {    [      g,    G        ]    };
  46.     key <AC06> {    [      h,    H        ]    };
  47.     key <AC07> {    [      j,    J        ]    };
  48.     key <AC08> {    [      k,    K        ]    };
  49.     key <AC09> {    [      l,    L        ]    };
  50.     key <AC10> {    [ semicolon,    colon        ]    };
  51.     key <AC11> {    [ apostrophe,    quotedbl    ]    };
  52.  
  53.     key <AB01> {    [      z,    Z         ]    };
  54.     key <AB02> {    [      x,    X        ]    };
  55.     key <AB03> {    [      c,    C        ]    };
  56.     key <AB04> {    [      v,    V        ]    };
  57.     key <AB05> {    [      b,    B        ]    };
  58.     key <AB06> {    [      n,    N        ]    };
  59.     key <AB07> {    [      m,    M        ]    };
  60.     key <AB08> {    [     comma,    less        ]    };
  61.     key <AB09> {    [    period,    greater        ]    };
  62.     key <AB10> {    [     slash,    question    ]    };
  63.  
  64.     key <BKSL> {    [ backslash,         bar    ]    };
  65.     // End alphanumeric section
  66. };
  67.  
  68. partial alphanumeric_keys
  69. xkb_symbols "euro" {
  70.  
  71.     name[Group1]= "USA - With EuroSign on 5";
  72.  
  73.     include "us(basic)"
  74.  
  75.     include "eurosign(5)"
  76.  
  77.     include "level3(ralt_switch)"
  78. };
  79.  
  80.  
  81. partial alphanumeric_keys
  82. xkb_symbols "intl" {
  83.  
  84.     name[Group1]= "USA - International (with dead keys)";
  85.  
  86.     include "us(basic)"
  87.  
  88.     // Alphanumeric section
  89.     key <TLDE> { [dead_grave, dead_tilde,         grave,       asciitilde ] };
  90.     key <AE01> { [       1,     exclam,    exclamdown,      onesuperior ] };
  91.     key <AE02> { [       2,         at,   twosuperior, dead_doubleacute ] };
  92.     key <AE03> { [       3, numbersign, threesuperior,      dead_macron ] };
  93.     key <AE04> { [       4,     dollar,      currency,         sterling ] };
  94.     key <AE05> { [       5,    percent,      EuroSign                   ] };
  95.     key <AE06> { [    6, dead_circumflex,    onequarter,      asciicircum ] };
  96.     key <AE07> { [       7,  ampersand,       onehalf,    dead_horn ] };
  97.     key <AE08> { [       8,   asterisk, threequarters,      dead_ogonek ] };
  98.     key <AE09> { [       9,  parenleft, leftsinglequotemark, dead_breve ] };
  99.     key <AE10> { [       0, parenright, rightsinglequotemark, dead_abovering ] };
  100.     key <AE11> { [     minus, underscore,           yen,    dead_belowdot ] };
  101.     key <AE12> { [     equal,       plus,      multiply,         division ] };
  102.  
  103.     key <AD01> { [       q,          Q,    adiaeresis,       Adiaeresis ] };
  104.     key <AD02> { [       w,          W,         aring,            Aring ] };
  105.     key <AD03> { [       e,          E,        eacute,           Eacute ] };
  106.     key <AD04> { [       r,          R,    registered,       registered ] };
  107.     key <AD05> { [       t,          T,         thorn,            THORN ] };
  108.     key <AD06> { [       y,          Y,    udiaeresis,       Udiaeresis ] };
  109.     key <AD07> { [       u,          U,        uacute,           Uacute ] };
  110.     key <AD08> { [       i,          I,        iacute,           Iacute ] };
  111.     key <AD09> { [       o,          O,        oacute,           Oacute ] };
  112.     key <AD10> { [       p,          P,    odiaeresis,       Odiaeresis ] };
  113.     key <AD11> { [ bracketleft,  braceleft,  guillemotleft, leftdoublequotemark ] };
  114.     key <AD12> { [bracketright, braceright, guillemotright, rightdoublequotemark ] };
  115.  
  116.     key <AC01> { [       a,          A,        aacute,           Aacute ] };
  117.     key <AC02> { [       s,          S,        ssharp,          section ] };
  118.     key <AC03> { [       d,          D,           eth,              ETH ] };
  119.     key <AC08> { [       k,          K,            oe,               OE ] };
  120.  
  121.     key <AC09> { [       l,          L,        oslash,         Ooblique ] };
  122.     key <AC10> { [ semicolon,      colon,     paragraph,           degree ] };
  123.     key <AC11> { [dead_acute, dead_diaeresis, apostrophe,        quotedbl ] };
  124.  
  125.     key <AB01> { [       z,          Z,            ae,               AE ] };
  126.     key <AB03> { [       c,          C,     copyright,             cent ] };
  127.     key <AB06> { [       n,          N,        ntilde,           Ntilde ] };
  128.     key <AB07> { [       m,          M,            mu,               mu ] };
  129.     key <AB08> { [     comma,       less,      ccedilla,         Ccedilla ] };
  130.     key <AB09> { [    period,    greater, dead_abovedot,       dead_caron ] };
  131.     key <AB10> { [     slash,   question,  questiondown,        dead_hook ] };
  132.     key <BKSL> { [ backslash,        bar,       notsign,        brokenbar ] };
  133.  
  134.     include "level3(ralt_switch)"
  135. };
  136.  
  137. // Based on symbols/us_intl keyboard map:
  138. // Dead-keys definition for a very simple US/ASCII layout.
  139. // by Conectiva (http://www.conectiva.com.br)
  140. // modified by Ricardo Y. Igarashi (iga@that.com.br)
  141.  
  142. // Added the following deadkeys, to make it truly international:
  143. //
  144. // dead_macron: on AltGr-minus
  145. // dead_breve: on AltGr-parenleft
  146. // dead_abovedot: on AltGr-period
  147. // dead_abovering: on AltGr-0
  148. // dead_doubleacute: on AltGr-equal (as quotedbl is already used)
  149. // dead_caron: on AltGr-less (AltGr-shift-comma)
  150. // dead_cedilla: on AltGr-comma
  151. // dead_ogonek: on AltGr-semicolon
  152. // dead_belowdot: on AltGr-underscore (AltGr-shift-minus)
  153. // dead_hook: on AltGr-question
  154. // dead_horn: on AltGr-plus (AltGr-shift-equal)
  155. // dead_diaeresis: on AltGr-colon (Alt-shift-semicolon)
  156. //
  157. // those were already there:
  158. // dead_grave
  159. // dead_acute
  160. // dead_circumflex
  161. // dead_tilde
  162. // dead_diaeresis
  163.  
  164. partial alphanumeric_keys
  165. xkb_symbols "alt-intl" {
  166.  
  167.   name[Group1]= "USA - Alternative international (former us_intl)";
  168.  
  169.   include "us"
  170.  
  171.   key <TLDE> { [ dead_grave, dead_tilde,    grave,          asciitilde    ] };
  172.   key <AE05> { [          5, percent,        EuroSign                ] };
  173.   key <AE06> { [      6, dead_circumflex, asciicircum,    asciicircum   ] };
  174.   key <AE09> { [      9, parenleft, leftsinglequotemark,  dead_breve ] };
  175.   key <AE10> { [      0, parenright, rightsinglequotemark, dead_abovering ] };
  176.   key <AE11> { [      minus, underscore,    dead_macron,      dead_belowdot ] };
  177.   key <AE12> { [      equal, plus,        dead_doubleacute, dead_horn        ] };
  178.  
  179.   key <AD03> { [          e, E,             EuroSign,         cent        ] };
  180.  
  181.   key <AC10> { [  semicolon, colon,         dead_ogonek,   dead_diaeresis  ] };
  182.   key <AC11> { [ dead_acute, dead_diaeresis, apostrophe,    quotedbl        ] };
  183.  
  184.   key <AB08> { [      comma, less,         dead_cedilla,  dead_caron        ] };
  185.   key <AB09> { [     period, greater,         dead_abovedot, dead_circumflex ] };
  186.   key <AB10> { [      slash, question,         dead_hook,        dead_hook        ] };
  187.  
  188.   include "level3(ralt_switch)"
  189. };
  190.  
  191. // based on a keyboard map from an 'xkb/symbols/dk' file
  192. //
  193. // $XFree86: xc/programs/xkbcomp/symbols/dvorak,v 1.5 2004/01/03 16:35:07 herrb Exp $
  194.  
  195. partial alphanumeric_keys
  196. xkb_symbols "dvorak" {
  197.  
  198.     name[Group1]= "USA - Dvorak";
  199.  
  200.     // Alphanumeric section
  201.  
  202.     key <TLDE> { [       grave,    asciitilde, dead_grave, dead_tilde    ] };
  203.  
  204.     key <AE01> { [        1,    exclam         ]    };
  205.     key <AE02> { [        2,    at        ]    };
  206.     key <AE03> { [        3,    numbersign    ]    };
  207.     key <AE04> { [        4,    dollar        ]    };
  208.     key <AE05> { [        5,    percent        ]    };
  209.     key <AE06> { [        6,    asciicircum, dead_circumflex, dead_circumflex ]    };
  210.     key <AE07> { [        7,    ampersand    ]    };
  211.     key <AE08> { [        8,    asterisk    ]    };
  212.     key <AE09> { [        9,    parenleft,  dead_grave]    };
  213.     key <AE10> { [        0,    parenright    ]    };
  214.     key <AE11> { [ bracketleft,    braceleft    ]    };
  215.     key <AE12> { [ bracketright, braceright,  dead_tilde] };
  216.  
  217.     key <AD01> { [  apostrophe,    quotedbl, dead_acute, dead_diaeresis    ] };
  218.     key <AD02> { [    comma,    less,   dead_cedilla, dead_caron    ] };
  219.     key <AD03> { [      period,    greater, dead_abovedot, periodcentered    ] };
  220.     key <AD04> { [        p,    P        ]    };
  221.     key <AD05> { [        y,    Y        ]    };
  222.     key <AD06> { [        f,    F        ]    };
  223.     key <AD07> { [        g,    G        ]    };
  224.     key <AD08> { [        c,    C        ]    };
  225.     key <AD09> { [        r,    R        ]    };
  226.     key <AD10> { [        l,    L        ]    };
  227.     key <AD11> { [    slash,    question    ]    };
  228.     key <AD12> { [    equal,    plus        ]    };
  229.  
  230.     key <AC01> { [        a,    A         ]    };
  231.     key <AC02> { [        o,    O        ]    };
  232.     key <AC03> { [        e,    E        ]    };
  233.     key <AC04> { [        u,    U        ]    };
  234.     key <AC05> { [        i,    I        ]    };
  235.     key <AC06> { [        d,    D        ]    };
  236.     key <AC07> { [        h,    H        ]    };
  237.     key <AC08> { [        t,    T        ]    };
  238.     key <AC09> { [        n,    N        ]    };
  239.     key <AC10> { [        s,    S        ]    };
  240.     key <AC11> { [    minus,    underscore    ]    };
  241.  
  242.     key <AB01> { [   semicolon,    colon, dead_ogonek, dead_doubleacute ] };
  243.     key <AB02> { [        q,    Q        ]    };
  244.     key <AB03> { [        j,    J        ]    };
  245.     key <AB04> { [        k,    K        ]    };
  246.     key <AB05> { [        x,    X        ]    };
  247.     key <AB06> { [        b,    B        ]    };
  248.     key <AB07> { [        m,    M        ]    };
  249.     key <AB08> { [        w,    W        ]    };
  250.     key <AB09> { [        v,    V        ]    };
  251.     key <AB10> { [        z,    Z        ]    };
  252.  
  253.     key <BKSL> { [  backslash,  bar             ]       };
  254. };
  255.  
  256. // Dvorak international
  257. // Stephane Magnenat (stephane at magnenat dot net, http://stephane.magnenat.net)
  258. // Based on information from http://www.poupinou.org/dvorak/index.html
  259. //
  260. //  `   1   2   3   4   5   6   7   8   9   0   [   ]   \
  261. //                  ‚Ǩ
  262. //
  263. //      '   ,   .   p   y   f   g   c   r   l   /   =
  264. //          √§   √™   √´   √º           √ß
  265. //
  266. //      a   o   e   u   i   d   h   t   n   s   -
  267. //      √†   √¥   √©   √ª   √Æ                   √ü
  268. //
  269. //      ;   q   j   k   x   b   m   w   v   z
  270. //      √¢   √∂   √®   √π   √Ø
  271.  
  272. partial alphanumeric_keys
  273. xkb_symbols "dvorak-intl" {
  274.  
  275.     name[Group1]= "USA - Dvorak international";
  276.  
  277.     include "us(dvorak)"
  278.  
  279.     key <AE04> { [         4,  dollar,    EuroSign ] };
  280.  
  281.     key <AD02> { [     comma,    less,  adiaeresis,       dead_caron ] };
  282.     key <AD03> { [    period, greater, ecircumflex,   periodcentered    ] };
  283.     key <AD04> { [         p,       P,  ediaeresis,     dead_cedilla ] };
  284.     key <AD05> { [         y,       Y,  udiaeresis ] };
  285.     key <AD08> { [         c,       C,    ccedilla,    dead_abovedot ] };
  286.  
  287.     key <AC01> { [         a,       A,      agrave ] };
  288.     key <AC02> { [         o,       O, ocircumflex ] };
  289.     key <AC03> { [         e,       E,      eacute ] };
  290.     key <AC04> { [         u,       U, ucircumflex ] };
  291.     key <AC05> { [         i,       I, icircumflex ] };
  292.     key <AC10> { [         s,       S,      ssharp ] };
  293.  
  294.     key <AB01> { [ semicolon,   colon, acircumflex ] };
  295.     key <AB02> { [         q,       Q,  odiaeresis,      dead_ogonek ] };
  296.     key <AB03> { [         j,       J,      egrave, dead_doubleacute ] };
  297.     key <AB04> { [         k,       K,      ugrave ] };
  298.     key <AB05> { [         x,       X,  idiaeresis ] };
  299.  
  300.     include "level3(ralt_switch)"
  301. };
  302.  
  303. // Left and right handed dvorak layouts
  304. // by sqweek <sqweek@gmail.com> 2006-01-30
  305. // Based on the corresponding layouts in the console-tools package.
  306. partial alphanumeric_keys
  307. xkb_symbols "dvorak-l" {
  308.  
  309.     include "us(dvorak)"
  310.     name[Group1]= "USA - Left handed Dvorak";
  311.  
  312.     key <AE01> {    [ bracketleft,    braceleft    ]    };
  313.     key <AE02> {    [ bracketright,    braceright    ]    };
  314.     key <AE03> {    [    slash,    question    ]    };
  315.     key <AE04> {    [        p,    P        ]    };
  316.     key <AE05> {    [        f,    F        ]    };
  317.     key <AE06> {    [        m,    M        ]    };
  318.     key <AE07> {    [        l,    L        ]    };
  319.     key <AE08> {    [        j,    J        ]    };
  320.     key <AE09> {    [        4,    dollar        ]    };
  321.     key <AE10> {    [        3,    numbersign    ]    };
  322.     key <AE11> {    [        2,    at        ]    };
  323.     key <AE12> {    [        1,    exclam         ]    };
  324.  
  325.     key <AD01> {    [   semicolon,    colon         ]    };
  326.     key <AD02> {    [        q,    Q        ]    };
  327.     key <AD03> {    [        b,    B        ]    };
  328.     key <AD04> {    [        y,    Y        ]    };
  329.     key <AD05> {    [        u,    U        ]    };
  330.     key <AD06> {    [        r,    R        ]    };
  331.     key <AD07> {    [        s,    S        ]    };
  332.     key <AD08> {    [        o,    O        ]    };
  333.     key <AD09> {    [      period,    greater        ]    };
  334.     key <AD10> {    [        6,    asciicircum    ]    };
  335.     key <AD11> {    [        5,    percent        ]    };
  336.     key <AD12> {    [    equal,    plus        ]    };
  337.  
  338.     key <AC01> {    [    minus,    underscore    ]    };
  339.     key <AC02> {    [        k,    K        ]    };
  340.     key <AC03> {    [        c,    C        ]    };
  341.     key <AC04> {    [        d,    D        ]    };
  342.     key <AC05> {    [        t,    T        ]    };
  343.     key <AC06> {    [        h,    H        ]    };
  344.     key <AC07> {    [        e,    E        ]    };
  345.     key <AC08> {    [        a,    A         ]    };
  346.     key <AC09> {    [        z,    Z        ]    };
  347.     key <AC10> {    [        8,    asterisk    ]    };
  348.     key <AC11> {    [        7,    ampersand    ]    };
  349.  
  350.     key <AB01> {    [  apostrophe,    quotedbl    ]     };
  351.     key <AB02> {    [        x,    X        ]    };
  352.     key <AB03> {    [        g,    G        ]    };
  353.     key <AB04> {    [        v,    V        ]    };
  354.     key <AB05> {    [        w,    W        ]    };
  355.     key <AB06> {    [        n,    N        ]    };
  356.     key <AB07> {    [        i,    I        ]    };
  357.     key <AB08> {    [    comma,    less        ]    };
  358.     key <AB09> {    [        0,    parenright    ]    };
  359.     key <AB10> {    [        9,    parenleft    ]    };
  360. };
  361.  
  362. partial alphanumeric_keys
  363. xkb_symbols "dvorak-r" {
  364.     
  365.     include "us(dvorak)"
  366.     name[Group1]= "USA - Right handed Dvorak";
  367.  
  368.     key <AE01> {    [        1,    exclam         ]    };
  369.     key <AE02> {    [        2,    at        ]    };
  370.     key <AE03> {    [        3,    numbersign    ]    };
  371.     key <AE04> {    [        4,    dollar        ]    };
  372.     key <AE05> {    [        j,    J        ]    };
  373.     key <AE06> {    [        l,    L        ]    };
  374.     key <AE07> {    [        m,    M        ]    };
  375.     key <AE08> {    [        f,    F        ]    };
  376.     key <AE09> {    [        p,    P        ]    };
  377.     key <AE10> {    [    slash,    question    ]    };
  378.     key <AE11> {    [ bracketleft,    braceleft    ]    };
  379.     key <AE12> {    [ bracketright,    braceright    ]    };
  380.  
  381.     key <AD01> {    [        5,    percent        ]    };
  382.     key <AD02> {    [        6,    asciicircum ]    };
  383.     key <AD03> {    [        q,    Q        ]    };
  384.     key <AD04> {    [      period,    greater        ]    };
  385.     key <AD05> {    [        o,    O        ]    };
  386.     key <AD06> {    [        r,    R        ]    };
  387.     key <AD07> {    [        s,    S        ]    };
  388.     key <AD08> {    [        u,    U        ]    };
  389.     key <AD09> {    [        y,    Y        ]    };
  390.     key <AD10> {    [        b,    B        ]    };
  391.     key <AD11> {    [   semicolon,    colon         ]    };
  392.     key <AD12> {    [    equal,    plus        ]    };
  393.  
  394.     key <AC01> {    [        7,    ampersand    ]    };
  395.     key <AC02> {    [        8,    asterisk    ]    };
  396.     key <AC03> {    [        z,    Z        ]    };
  397.     key <AC04> {    [        a,    A         ]    };
  398.     key <AC05> {    [        e,    E        ]    };
  399.     key <AC06> {    [        h,    H        ]    };
  400.     key <AC07> {    [        t,    T        ]    };
  401.     key <AC08> {    [        d,    D        ]    };
  402.     key <AC09> {    [        c,    C        ]    };
  403.     key <AC10> {    [        k,    K        ]    };
  404.     key <AC11> {    [    minus,    underscore    ]    };
  405.  
  406.     key <AB01> {    [        9,    parenleft    ]    };
  407.     key <AB02> {    [        0,    parenright    ]    };
  408.     key <AB03> {    [        x,    X        ]    };
  409.     key <AB04> {    [    comma,    less        ]    };
  410.     key <AB05> {    [        i,    I        ]    };
  411.     key <AB06> {    [        n,    N        ]    };
  412.     key <AB07> {    [        w,    W        ]    };
  413.     key <AB08> {    [        v,    V        ]    };
  414.     key <AB09> {    [        g,    G        ]    };
  415.     key <AB10> {    [  apostrophe,    quotedbl    ]     };
  416. };
  417.  
  418. // Classic dvorak layout
  419. // by Piter Punk <piterpk@terra.com.br> - 2006-07-06 
  420. // Based on dvorak layout and e-mail from Russel L. Harris rlharris@oplink.net 
  421. // on xorg list.
  422. partial alphanumeric_keys
  423. xkb_symbols "dvorak-classic" {
  424.  
  425.     name[Group1]= "USA - Classic Dvorak";
  426.  
  427.     // Alphanumeric section
  428.  
  429.     key <TLDE> { [       grave,    asciitilde, dead_grave, dead_tilde    ] };
  430.  
  431.     key <AE01> { [ bracketleft,    braceleft    ]    };
  432.     key <AE02> { [        7,    ampersand    ]    };
  433.     key <AE03> { [        5,    percent        ]    };
  434.     key <AE04> { [        3,    numbersign    ]    };
  435.     key <AE05> { [        1,    exclam         ]    };
  436.     key <AE06> { [        9,    parenleft,  dead_grave]    };
  437.     key <AE07> { [        0,    parenright    ]    };
  438.     key <AE08> { [        2,    at        ]    };
  439.     key <AE09> { [        4,    dollar        ]    };
  440.     key <AE10> { [        6,    asciicircum, dead_circumflex, dead_circumflex ]    };
  441.     key <AE11> { [        8,    asterisk    ]    };
  442.     key <AE12> { [ bracketright, braceright,  dead_tilde] };
  443.  
  444.     key <AD01> { [    slash,    question    ]    };
  445.     key <AD02> { [    comma,    less,   dead_cedilla, dead_caron    ] };
  446.     key <AD03> { [      period,    greater, dead_abovedot, periodcentered    ] };
  447.     key <AD04> { [        p,    P        ]    };
  448.     key <AD05> { [        y,    Y        ]    };
  449.     key <AD06> { [        f,    F        ]    };
  450.     key <AD07> { [        g,    G        ]    };
  451.     key <AD08> { [        c,    C        ]    };
  452.     key <AD09> { [        r,    R        ]    };
  453.     key <AD10> { [        l,    L        ]    };
  454.     key <AD11> { [  apostrophe,    quotedbl, dead_acute, dead_diaeresis    ] };
  455.     key <AD12> { [    equal,    plus        ]    };
  456.  
  457.     key <AC01> { [        a,    A         ]    };
  458.     key <AC02> { [        o,    O        ]    };
  459.     key <AC03> { [        e,    E        ]    };
  460.     key <AC04> { [        u,    U        ]    };
  461.     key <AC05> { [        i,    I        ]    };
  462.     key <AC06> { [        d,    D        ]    };
  463.     key <AC07> { [        h,    H        ]    };
  464.     key <AC08> { [        t,    T        ]    };
  465.     key <AC09> { [        n,    N        ]    };
  466.     key <AC10> { [        s,    S        ]    };
  467.     key <AC11> { [    minus,    underscore    ]    };
  468.  
  469.     key <AB01> { [   semicolon,    colon, dead_ogonek, dead_doubleacute ] };
  470.     key <AB02> { [        q,    Q        ]    };
  471.     key <AB03> { [        j,    J        ]    };
  472.     key <AB04> { [        k,    K        ]    };
  473.     key <AB05> { [        x,    X        ]    };
  474.     key <AB06> { [        b,    B        ]    };
  475.     key <AB07> { [        m,    M        ]    };
  476.     key <AB08> { [        w,    W        ]    };
  477.     key <AB09> { [        v,    V        ]    };
  478.     key <AB10> { [        z,    Z        ]    };
  479.     key <BKSL> { [  backslash,  bar             ]       };
  480. };
  481.  
  482. // Programmer Dvorak, by Roland Kaufmann <rlndkfmn at gmail dot com>
  483. // License: BSD, available at <http://www.kaufmann.no/roland/dvorak/license.html>
  484. // Main features: Numbers are in shift position (like French), symbols have been
  485. // placed in locations that give good hand-alternation and finger rolling with
  486. // symbols that usually follows, accented characters are possible for I18N.
  487. partial alphanumeric_keys
  488. xkb_symbols "dvp" {
  489.     include "us(dvorak)"
  490.  
  491.     name[Group1] = "USA - Programmer Dvorak";
  492.  
  493.     //             Unmodified       Shift           AltGr            Shift+AltGr
  494.     // symbols row, left side
  495.     key <TLDE> { [ dollar,          asciitilde,     dead_tilde                  ] };
  496.     key <AE01> { [ ampersand,       percent                                     ] };
  497.     key <AE02> { [ bracketleft,     7,              currency                    ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
  498.     key <AE03> { [ braceleft,       5,              cent                        ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
  499.     key <AE04> { [ braceright,      3,              yen                         ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
  500.     key <AE05> { [ parenleft,       1,              EuroSign                    ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
  501.     key <AE06> { [ equal,           9,              sterling                    ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
  502.  
  503.     // symbols row, right side
  504.     key <AE07> { [ asterisk,        0                                           ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
  505.     key <AE08> { [ parenright,      2,              onehalf                     ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
  506.     key <AE09> { [ plus,            4                                           ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
  507.     key <AE10> { [ bracketright,    6                                           ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
  508.     key <AE11> { [ exclam,          8,              exclamdown                  ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
  509.     key <AE12> { [ numbersign,      grave,          dead_grave                  ] };
  510.     key <BKSP> { [ BackSpace                                                    ] };
  511.  
  512.     // upper row, left side
  513.     key <AD01> { [ semicolon,       colon,          dead_diaeresis              ] };
  514.     key <AD02> { [ comma,           less,           guillemotleft               ] };
  515.     key <AD03> { [ period,          greater,        guillemotright              ] };
  516.     key <AD04> { [ p,               P,              paragraph,       section    ] };
  517.     key <AD05> { [ y,               Y,              udiaeresis,      Udiaeresis ] };
  518.  
  519.     // upper row, right side
  520.     key <AD08> { [ c,               C,              ccedilla,        Ccedilla   ] };
  521.     key <AD09> { [ r,               R,              registered,      trademark  ] };
  522.     key <AD11> { [ slash,           question,       questiondown                ] };
  523.     key <AD12> { [ at,              asciicircum,    dead_circumflex, dead_caron ] };
  524.  
  525.     // home row, left side
  526.     key <AC01> { [ a,               A,              aring,           Aring      ] };
  527.     key <AC02> { [ o,               O,              oslash,          Ooblique   ] };
  528.     key <AC03> { [ e,               E,              ae,              AE         ] };
  529.     key <AC04> { [ u,               U,              eacute,          Eacute     ] };
  530.  
  531.     // home row, right side
  532.     key <AC06> { [ d,               D,              eth,             ETH        ] };
  533.     key <AC07> { [ h,               H,              dead_acute                  ] };
  534.     key <AC08> { [ t,               T,              thorn,           THORN      ] };
  535.     key <AC09> { [ n,               N,              ntilde,          Ntilde     ] };
  536.     key <AC10> { [ s,               S,              ssharp                      ] };
  537.     key <AC11> { [ minus,           underscore,     hyphen                      ], type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
  538.     key <BKSL> { [ backslash,       bar                                         ] };
  539.  
  540.     // lower row, left side
  541.     key <AB01> { [ apostrophe,      quotedbl,       dead_acute                  ] };
  542. };
  543.  
  544. // phonetic layout for Russian letters on an US keyboard
  545. // by Ivan Popov <pin@konvalo.org> 2005-07-17
  546.  
  547. // level3 modifier is a shortcut to the "us" meaning of the keys where
  548. // we place cyrillic letters, handy for accessing the corresponding
  549. // punctuation marks.
  550. // It is important to have access to punctuation marks, and the rest of
  551. // alphabetical keys are added for being consequent so that the users
  552. // can expect the level3 modifier to give what the key label shows.
  553.  
  554. partial alphanumeric_keys
  555. xkb_symbols "rus" {
  556.  
  557.     name[Group1]= "USA - Russian phonetic";
  558.  
  559.     include "us(basic)"
  560.  
  561. key.type[group1]="FOUR_LEVEL_ALPHABETIC";
  562.  
  563.     key    <LatA> {    [ Cyrillic_a, Cyrillic_A ]    };
  564.     key    <LatB> {    [ Cyrillic_be, Cyrillic_BE ]    };
  565.     key    <LatW> {    [ Cyrillic_ve, Cyrillic_VE ]    };
  566.     key    <LatG> {    [ Cyrillic_ghe, Cyrillic_GHE ]    };
  567.     key    <LatD> {    [ Cyrillic_de, Cyrillic_DE ]    };
  568.     key    <LatE> {    [ Cyrillic_ie, Cyrillic_IE ]    };
  569.     key    <TLDE> {    [ Cyrillic_io, Cyrillic_IO, grave, asciitilde ] };
  570.     key    <LatV> {    [ Cyrillic_zhe, Cyrillic_ZHE ]    };
  571.     key    <LatZ> {    [ Cyrillic_ze, Cyrillic_ZE ]    };
  572.     key    <LatI> {    [ Cyrillic_i, Cyrillic_I ]    };
  573.     key    <LatJ> {    [ Cyrillic_shorti, Cyrillic_SHORTI ]    };
  574.     key    <LatK> {    [ Cyrillic_ka, Cyrillic_KA ]    };
  575.     key    <LatL> {    [ Cyrillic_el, Cyrillic_EL ]    };
  576.     key    <LatM> {    [ Cyrillic_em, Cyrillic_EM ]    };
  577.     key    <LatN> {    [ Cyrillic_en, Cyrillic_EN ]    };
  578.     key    <LatO> {    [ Cyrillic_o, Cyrillic_O ]    };
  579.     key    <LatP> {    [ Cyrillic_pe, Cyrillic_PE ]    };
  580.     key    <LatR> {    [ Cyrillic_er, Cyrillic_ER ]    };
  581.     key    <LatS> {    [ Cyrillic_es, Cyrillic_ES ]    };
  582.     key    <LatT> {    [ Cyrillic_te, Cyrillic_TE ]    };
  583.     key    <LatU> {    [ Cyrillic_u, Cyrillic_U ]    };
  584.     key    <LatF> {    [ Cyrillic_ef, Cyrillic_EF ]    };
  585.     key    <LatH> {    [ Cyrillic_ha, Cyrillic_HA ]    };
  586.     key    <LatC> {    [ Cyrillic_tse, Cyrillic_TSE ]    };
  587.     key <AC10> {        [ Cyrillic_che, Cyrillic_CHE, semicolon, colon ] };
  588.     key    <AD11> {    [ Cyrillic_sha, Cyrillic_SHA, bracketleft, braceleft] };
  589.     key    <AD12> {    [ Cyrillic_shcha, Cyrillic_SHCHA, bracketright, braceright ]    };
  590.     key <AE12> {        [ Cyrillic_hardsign, Cyrillic_HARDSIGN, equal, plus ] };
  591.     key    <LatY> {    [ Cyrillic_yeru, Cyrillic_YERU ]    };
  592.     key    <LatX> {    [ Cyrillic_softsign, Cyrillic_SOFTSIGN ]    };
  593.     key    <BKSL> {    [ Cyrillic_e, Cyrillic_E, backslash, bar ]    };
  594.     key <AC11> {        [ Cyrillic_yu, Cyrillic_YU, apostrophe, quotedbl ] };
  595.     key    <LatQ> {    [ Cyrillic_ya, Cyrillic_YA ]    };
  596.  
  597.     include "level3(ralt_switch)"
  598. };
  599.  
  600. partial alphanumeric_keys
  601. xkb_symbols "mac" {
  602.  
  603.     include "us(basic)"
  604.     name[Group1]= "USA - Macintosh";
  605.     key.type[group1]="FOUR_LEVEL";
  606.  
  607.     // Slightly improvised from http://homepage.mac.com/thgewecke/kblayout.jpg
  608.     key <LSGT> { [   section,  plusminus,       section,        plusminus ] };
  609.     key <TLDE> { [     grave, asciitilde,    dead_grave,        dead_horn ] };
  610.     key <AE01> { [       1,     exclam,    exclamdown,            U2044 ] };
  611.     key <AE02> { [       2,         at,     trademark,         EuroSign ] };
  612.     key <AE03> { [       3, numbersign,      sterling,            U2039 ] };
  613.     key <AE04> { [       4,     dollar,          cent,            U203A ] };
  614.     key <AE05> { [       5,    percent,      infinity,            UFB01 ] };
  615.     key <AE06> { [         6,asciicircum,       section,            UFB02 ] };
  616.     key <AE07> { [       7,  ampersand,     paragraph,     doubledagger ] };
  617.     key <AE08> { [       8,   asterisk, enfilledcircbullet,      degree ] };
  618.     key <AE09> { [       9,  parenleft,   ordfeminine,   periodcentered ] };
  619.     key <AE10> { [       0, parenright,     masculine,singlelowquotemark] };
  620.     key <AE11> { [     minus, underscore,        endash,           emdash ] };
  621.     key <AE12> { [     equal,       plus,      notequal,        plusminus ] };
  622.  
  623.     key <AD01> { [       q,          Q,            oe,               OE ] };
  624.     key <AD02> { [       w,          W,         U2211,doublelowquotemark] };
  625.     key <AD03> { [       e,          E,    dead_acute,            acute ] };
  626.     key <AD04> { [       r,          R,    registered,            U2030 ] };
  627.     key <AD05> { [       t,          T,        dagger,       dead_caron ] };
  628.     key <AD06> { [       y,          Y,           yen,       onequarter ] };
  629.     key <AD07> { [       u,        U,  dead_diaeresis,        diaeresis ] };
  630.     key <AD08> { [       i,        I, dead_circumflex,            U02C6 ] };
  631.     key <AD09> { [       o,          O,        oslash,         Ooblique ] };
  632.     key <AD10> { [       p,          P,      Greek_pi,            U220F ] };
  633.     key <AD11> { [ bracketleft,  braceleft, leftdoublequotemark, rightdoublequotemark ] };
  634.     key <AD12> { [bracketright, braceright, leftsinglequotemark, rightsinglequotemark ] };
  635.     key <BKSL> { [ backslash,        bar, guillemotleft,   guillemotright ] };
  636.  
  637.     key <AC01> { [       a,          A,         aring,            Aring ] };
  638.     key <AC02> { [       s,          S,        ssharp,      dead_stroke ] };
  639.     key <AC03> { [       d,          D, partialderivative,          eth ] };
  640.     key <AC04> { [       f,          F,      function,        dead_hook ] };
  641.     key <AC05> { [       g,          G,     copyright, dead_doubleacute ] };
  642.     key <AC06> { [       h,          H, dead_abovedot,    dead_belowdot ] };
  643.     key <AC07> { [       j,          J,         U2206,          onehalf ] };
  644.     key <AC08> { [       k,          K,dead_abovering,            UF8FF ] };
  645.  
  646.     key <AC09> { [       l,          L,       notsign,            THORN ] };
  647.     key <AC10> { [ semicolon,      colon,         U2026,            thorn ] };
  648.     key <AC11> { [apostrophe,   quotedbl,            ae,               AE ] };
  649.  
  650.     key <AB01> { [       z,          Z,   Greek_OMEGA,     dead_cedilla ] };
  651.     key <AB02> { [       x,          X,         U2248,      dead_ogonek ] };
  652.                 // unclear whether "approxeq" is 2248 or 2245
  653.     key <AB03> { [       c,          C,      ccedilla,         Ccedilla ] };
  654.     key <AB04> { [       v,          V,    squareroot,            U25CA ] };
  655.     key <AB05> { [       b,          B,      integral,         idotless ] };
  656.     key <AB06> { [       n,          N,    dead_tilde,            U02DC ] };
  657.     key <AB07> { [       m,          M,            mu,    threequarters ] };
  658.     key <AB08> { [     comma,       less, lessthanequal,      dead_macron ] };
  659.     key <AB09> { [    period,    greater, greaterthanequal,    dead_breve ] };
  660.     key <AB10> { [     slash,   question,      division,     questiondown ] };
  661.  
  662.     include "level3(ralt_switch)"
  663. };
  664.  
  665. // Colemak symbols for xkb on X.Org Server 7.x
  666. // 2006-01-01 Shai Coleman, http://colemak.com/ . Public domain.
  667.  
  668. partial alphanumeric_keys
  669. xkb_symbols "colemak" {
  670.     include "us"
  671.     name[Group1]= "USA - Colemak";
  672.  
  673.     // Alphanumeric section
  674.     key <TLDE> { [        grave,   asciitilde,      dead_tilde,       asciitilde ] };
  675.     key <AE01> { [            1,       exclam,      exclamdown,      onesuperior ] };
  676.     key <AE02> { [            2,           at,       masculine,      twosuperior ] };
  677.     key <AE03> { [            3,   numbersign,     ordfeminine,    threesuperior ] };
  678.     key <AE04> { [            4,       dollar,            cent,         sterling ] };
  679.     key <AE05> { [            5,      percent,        EuroSign,              yen ] };
  680.     key <AE06> { [            6,  asciicircum,         hstroke,          Hstroke ] };
  681.     key <AE07> { [            7,    ampersand,             eth,              ETH ] };
  682.     key <AE08> { [            8,     asterisk,           thorn,            THORN ] };
  683.     key <AE09> { [            9,    parenleft,  leftsinglequotemark,  leftdoublequotemark ] };
  684.     key <AE10> { [            0,   parenright, rightsinglequotemark,  rightdoublequotemark ] };
  685.     key <AE11> { [        minus,   underscore,          endash,           emdash ] };
  686.     key <AE12> { [        equal,         plus,        multiply,         division ] };
  687.  
  688.     key <AD01> { [            q,            Q,      adiaeresis,       Adiaeresis ] };
  689.     key <AD02> { [            w,            W,           aring,            Aring ] };
  690.     key <AD03> { [            f,            F,          atilde,           Atilde ] };
  691.     key <AD04> { [            p,            P,          oslash,         Ooblique ] };
  692.     key <AD05> { [            g,            G,     dead_ogonek,       asciitilde ] };
  693.     key <AD06> { [            j,            J,         dstroke,          Dstroke ] };
  694.     key <AD07> { [            l,            L,         lstroke,          Lstroke ] };
  695.     key <AD08> { [            u,            U,          uacute,           Uacute ] };
  696.     key <AD09> { [            y,            Y,      udiaeresis,       Udiaeresis ] };
  697.     key <AD10> { [    semicolon,        colon,      odiaeresis,       Odiaeresis ] };
  698.     key <AD11> { [  bracketleft,    braceleft,   guillemotleft,        0x1002039 ] };
  699.     key <AD12> { [ bracketright,   braceright,  guillemotright,        0x100203a ] };
  700.     key <BKSL> { [    backslash,          bar,      asciitilde,       asciitilde ] };
  701.  
  702.     key <AC01> { [            a,            A,          aacute,           Aacute ] };
  703.     key <AC02> { [            r,            R,      dead_grave,       asciitilde ] };
  704.     key <AC03> { [            s,            S,          ssharp,       asciitilde ] };
  705.     key <AC04> { [            t,            T,      dead_acute, dead_doubleacute ] };
  706.     key <AC05> { [            d,            D,  dead_diaeresis,       asciitilde ] };
  707.     key <AC06> { [            h,            H,      dead_caron,       asciitilde ] };
  708.     key <AC07> { [            n,            N,          ntilde,           Ntilde ] };
  709.     key <AC08> { [            e,            E,          eacute,           Eacute ] };
  710.     key <AC09> { [            i,            I,          iacute,           Iacute ] };
  711.     key <AC10> { [            o,            O,          oacute,           Oacute ] };
  712.     key <AC11> { [   apostrophe,     quotedbl,          otilde,           Otilde ] };
  713.  
  714.     key <AB01> { [            z,            Z,              ae,               AE ] };
  715.     key <AB02> { [            x,            X, dead_circumflex,       asciitilde ] };
  716.     key <AB03> { [            c,            C,        ccedilla,         Ccedilla ] };
  717.     key <AB04> { [            v,            V,              oe,               OE ] };
  718.     key <AB05> { [            b,            B,      dead_breve,       asciitilde ] };
  719.     key <AB06> { [            k,            K,  dead_abovering,       asciitilde ] };
  720.     key <AB07> { [            m,            M,     dead_macron,       asciitilde ] };
  721.     key <AB08> { [        comma,         less,    dead_cedilla,       asciitilde ] };
  722.     key <AB09> { [       period,      greater,   dead_abovedot,       asciitilde ] };
  723.     key <AB10> { [        slash,     question,    questiondown,       asciitilde ] };
  724.  
  725.     key <CAPS> { [    BackSpace,    BackSpace,       BackSpace,        BackSpace ] };
  726.     key <LSGT> { [        minus,   underscore,          endash,           emdash ] };
  727.     key <SPCE> { [        space,        space,           space,     nobreakspace ] };
  728.  
  729.     include "level3(ralt_switch)"
  730. };
  731.  
  732. // I do NOT like dead-keys - the International keyboard as defined by Microsoft
  733. // doesn't fit my needs. Why use two keystrokes for all simple characters (eg '
  734. // and <space> generates a single ') just to have an √© (eacute) in two strokes
  735. // as well? I type ' more often than √© (eacute).
  736. //
  737. // This file works just like a regular keyboard, BUT has all dead-keys
  738. // accessible at level3 (through AltGr). An √´ (ediaeresis) is now: AltGr+"
  739. // followed by an e. In other words, this keyboard is not international as long
  740. // as you leave the right Alt key alone.
  741. //
  742. // The original MS International keyboard was intended for Latin1 (iso8859-1).
  743. // With the introduction of iso8859-15, the (important) ligature oe (and OE)
  744. // became available. I added them next to ae. Because I write ediaeresis more
  745. // often than registered, I moved registered to be next to copyright and added
  746. // ediaeresis and idiaeresis. - Adriaan
  747.  
  748. partial alphanumeric_keys
  749. xkb_symbols "altgr-intl" {
  750.  
  751.    name[Group1]= "USA - International (AltGr dead keys)";
  752.  
  753.    include "us(intl)"
  754.  
  755. // five dead keys moved into level3:
  756.  
  757.    key <TLDE> { [    grave, asciitilde,  dead_grave,   dead_tilde      ] };
  758.    key <AC11> { [apostrophe,quotedbl,    dead_acute,   dead_diaeresis  ] };
  759.  
  760. // diversions from the MS Intl keyboard:
  761.  
  762.    key <AE01> { [        1, exclam,      onesuperior,  exclamdown      ] };
  763.    key <AD04> { [        r, R,           ediaeresis,   Ediaeresis      ] };
  764.    key <AC07> { [        j, J,           idiaeresis,   Idiaeresis      ] };
  765.    key <AB02> { [        x, X,           oe,           OE              ] };
  766.    key <AB04> { [        v, V,           registered,   registered      ] };
  767.  
  768. // onequarter etc (not in iso8859-15) deleted to get three unshifted deadkeys:
  769.  
  770.    key <AE06> { [        6, asciicircum,       dead_circumflex         ] };
  771.    key <AE07> { [        7, ampersand,         dead_horn               ] };
  772.    key <AE08> { [        8, asterisk,          dead_ogonek             ] };
  773.  
  774.    include "level3(ralt_switch)"
  775. };
  776.  
  777. // Intel ClassmatePC Keyboard Layout
  778. // by Piter PUNK <piterpk@terra.com.br>
  779. //
  780. // The keyboard layouts below maps the us(basic), us(intl) and us(alt-intl)
  781. // to ClassmatePC keyboard. All layouts uses RCTL as level3(switch) since
  782. // the keyboard doesn't have AltGr key. The EuroSign is engraved at 5 key.
  783.  
  784. // classmate - us(basic)
  785. partial alphanumeric_keys
  786. xkb_symbols "classmate" {
  787.     include "us(basic)"
  788.     name[Group1]= "USA - ClassmatePC";
  789.  
  790.     key <LSGT> { [ backslash,    bar,        backslash,    bar ] };
  791.  
  792.     include "eurosign(5)"
  793.     include "level3(switch)"
  794. };
  795.  
  796. // classmate-intl - us(intl)
  797. // RCTL is generated by Fn+Alt, because that, when trying to access
  798. // the level3 symbols at 7,8,9,0,u,i,o,p,j,k,l,;,m,. and / we got
  799. // the keypad keycodes. The keypad is changed to make Fn+Alt+<KP_key>
  800. // generate the same symbol as the original key.
  801. partial alphanumeric_keys
  802. xkb_symbols "classmate-intl" {
  803.     include "us(intl)"
  804.     name[Group1]= "USA - ClassmatePC (International)";
  805.     key.type[Group1]="FOUR_LEVEL";
  806.  
  807.     key <LSGT> { [ backslash,    bar,        backslash,    bar ] };
  808.  
  809.     key <KP7>  { [    KP_Home,        KP_7,    
  810.             onehalf,        dead_horn    ] };
  811.     key <KP8>  { [    KP_Up,            KP_8,
  812.             threequarters,        dead_ogonek    ] };
  813.     key <KP9>  { [    KP_Prior,        KP_9,
  814.             leftsinglequotemark,    dead_breve    ] };
  815.     key <KPMU> { [     KP_Multiply,        KP_Multiply,
  816.             rightsinglequotemark,    dead_abovering    ] };
  817.  
  818.     key <KP4>  { [    KP_Left,        KP_4,
  819.             uacute,            Uacute        ] };
  820.     key <KP5>  { [    KP_Begin,        KP_5,
  821.             iacute,            Iacute        ] };
  822.     key <KP6>  { [    KP_Right,        KP_6,
  823.             oacute,            Oacute        ] };
  824.     key <KPSU> { [    KP_Subtract,        KP_Subtract,
  825.             odiaeresis,        Odiaeresis    ] };
  826.  
  827.     key <KP2>  { [    KP_Down,        KP_2,
  828.             oe,            OE        ] };
  829.     key <KP3>  { [    KP_Next,        KP_3,
  830.             oslash,            Ooblique    ] };
  831.     key <KPAD> { [     KP_Add,             KP_Add,
  832.             paragraph,        degree          ] };
  833.    
  834.     key <KP0>  { [    KP_Insert,        KP_0,
  835.             mu,            mu    ] };
  836.     key <KPDL> { [    KP_Delete,        KP_Decimal,
  837.             dead_abovedot,        dead_caron    ] }; 
  838.     key <KPDV> { [     KP_Divide,           KP_Divide,
  839.             questiondown,        dead_hook       ] };
  840.  
  841.     include "level3(switch)"
  842. };
  843.  
  844. // classmate-alt-intl - us(alt-intl)
  845. // RCTL is generated by Fn+Alt, because that, when trying to access
  846. // the level3 symbols at 7,8,9,0,u,i,o,p,j,k,l,;,m,. and / we got
  847. // the keypad keycodes. The keypad is changed to make Fn+Alt+<KP_key>
  848. // generate the same symbol as the original key.
  849. partial alphanumeric_keys
  850. xkb_symbols "classmate-alt-intl" {
  851.     include "us(alt-intl)"
  852.     name[Group1]= "USA - ClassmatePC (Alternative international)";
  853.     key.type[Group1]="FOUR_LEVEL";
  854.  
  855.     key <LSGT> { [ backslash,    bar,        backslash,    bar ] };
  856.  
  857.     key <KPSU> { [    KP_Subtract,        KP_Subtract    ] };
  858.  
  859.     key <KP9>  { [    KP_Prior,        KP_9,
  860.             leftsinglequotemark,    dead_breve    ] };
  861.     key <KPMU> { [     KP_Multiply,        KP_Multiply,
  862.             rightsinglequotemark,    dead_abovering    ] };
  863.  
  864.     key <KPAD> { [     KP_Add,             KP_Add,
  865.             dead_ogonek,        dead_diaeresis   ] };
  866.     
  867.     key <KPDL> { [    KP_Delete,        KP_Decimal,
  868.             dead_abovedot,        dead_circumflex    ] }; 
  869.     key <KPDV> { [     KP_Divide,           KP_Divide,
  870.             dead_hook,        dead_hook       ] };
  871.  
  872.     include "level3(switch)"
  873. };
  874.  
  875. // classmate-altgr-intl - us(altgr-intl)
  876. // RCTL is generated by Fn+Alt, because that, when trying to access
  877. // the level3 symbols at 7,8,9,0,u,i,o,p,j,k,l,;,m,. and / we got
  878. // the keypad keycodes. The keypad is changed to make Fn+Alt+<KP_key>
  879. // generate the same symbol as the original key.
  880. partial alphanumeric_keys
  881. xkb_symbols "classmate-altgr-intl" {
  882.     include "us(altgr-intl)"
  883.     name[Group1]= "USA - ClassmatePC (International Fn+Alt dead-keys)";
  884.     key.type[Group1]="FOUR_LEVEL";
  885.  
  886.     key <LSGT> { [ backslash,    bar,        backslash,    bar ] };
  887.  
  888.     key <KP7>  { [    KP_Home,        KP_7,    
  889.             dead_horn,        dead_horn    ] };
  890.     key <KP8>  { [    KP_Up,            KP_8,
  891.             dead_ogonek,        dead_ogonek    ] };
  892.     key <KP9>  { [    KP_Prior,        KP_9,
  893.             leftsinglequotemark,    dead_breve    ] };
  894.     key <KPMU> { [     KP_Multiply,        KP_Multiply,
  895.             rightsinglequotemark,    dead_abovering    ] };
  896.  
  897.     key <KP4>  { [    KP_Left,        KP_4,
  898.             uacute,            Uacute        ] };
  899.     key <KP5>  { [    KP_Begin,        KP_5,
  900.             iacute,            Iacute        ] };
  901.     key <KP6>  { [    KP_Right,        KP_6,
  902.             oacute,            Oacute        ] };
  903.     key <KPSU> { [    KP_Subtract,        KP_Subtract,
  904.             odiaeresis,        Odiaeresis    ] };
  905.  
  906.     key <KP1>  { [    KP_End,            KP_1,
  907.             idiaeresis,        Idiaeresis    ] };
  908.     key <KP2>  { [    KP_Down,        KP_2,
  909.             oe,            OE        ] };
  910.     key <KP3>  { [    KP_Next,        KP_3,
  911.             oslash,            Ooblique    ] };
  912.     key <KPAD> { [     KP_Add,             KP_Add,
  913.             paragraph,        degree          ] };
  914.    
  915.     key <KP0>  { [    KP_Insert,        KP_0,
  916.             mu,            mu    ] };
  917.     key <KPDL> { [    KP_Delete,        KP_Decimal,
  918.             dead_abovedot,        dead_caron    ] }; 
  919.     key <KPDV> { [     KP_Divide,           KP_Divide,
  920.             questiondown,        dead_hook       ] };
  921.  
  922.     include "level3(switch)"
  923. };
  924.  
  925. partial alphanumeric_keys
  926. xkb_symbols "olpc" {
  927.  
  928.    include "us(basic)"
  929.    name[Group1]= "USA";
  930.  
  931.    // OLPC international US English keyboard layout.
  932.    // It's a little different from the usual international layout.
  933.    // See: http://wiki.laptop.org/go/Image:Keyboard_english.png
  934.  
  935.    key <TLDE> { [     grave, asciitilde,    dead_grave, dead_tilde ] };
  936.    key <AE01> { [         1,     exclam,    exclamdown, exclamdown ] };
  937.    key <AE02> { [         2,         at,       notsign,    notsign ] };
  938.    key <AE03> { [         3, numbersign,     0x1000300,  0x1000300 ] }; // combining grave
  939.    key <AE04> { [         4,     dollar,     0x1000301,  0x1000301 ] }; // combining acute
  940.    key <AE05> { [         5,    percent,     0x1000306,  0x1000306 ] }; // combining breve above
  941.    key <AE06> { [         6,asciicircum,     0x100030A,  0x100030A ] }; // combining ring above
  942.    key <AE07> { [         7,  ampersand,     0x1000302,  0x1000302 ] }; // combining circumflex above
  943.    key <AE08> { [         8,   asterisk,     0x100030C,  0x100030C ] }; // combining caron above
  944.    key <AE09> { [         9,  parenleft,     0x1000307,  0x1000307 ] }; // combining dot above
  945.    key <AE10> { [         0, parenright,     0x1000308,  0x1000308 ] }; // combining diaeresis above
  946.    key <AE11> { [     minus, underscore,     0x1000304,  0x1000304 ] }; // combining macron above
  947.    key <AE12> { [     equal,       plus,     0x1000303,  0x1000303 ] }; // combining tilde above
  948.  
  949.    key <AD01> { [         q,          Q,  Greek_omega, Greek_OMEGA ] };
  950.    key <AD02> { [         w,          W,       oslash,      Oslash ] };
  951.    key <AD03> { [         e,          E,           oe,          OE ] };
  952.    key <AD04> { [         r,          R,    0x1000327,   0x1000327 ] }; // combining cedilla
  953.    key <AD05> { [         t,          T,    0x100032E,   0x100032E ] }; // combining breve below
  954.    key <AD06> { [         y,          Y,    0x1000325,   0x1000325 ] }; // combining ring below
  955.    key <AD07> { [         u,          U,    0x100032D,   0x100032D ] }; // combining circumflex below
  956.    key <AD08> { [         i,          I,    0x100032C,   0x100032C ] }; // combining caron below
  957.    key <AD09> { [         o,          O,    0x1000323,   0x1000323 ] }; // combining dot below
  958.    key <AD10> { [         p,          P,    0x1000324,   0x1000324 ] }; // combining diaeresis below
  959.    key <AD11> { [ bracketleft,  braceleft,  0x1000331,   0x1000331 ] }; // combining macron below
  960.    key <AD12> { [bracketright, braceright,  0x1000330,   0x1000330 ] }; // combining tilde below
  961.  
  962.    key <AC01>  { [         a,          A,          ae,               AE ] };
  963.    key <AC02>  { [         s,          S,      ssharp,        0x1001E9C ] }; // uppercase S sharp
  964.    key <AC03>  { [         d,          D,         eth,              ETH ] };
  965.    key <AC04>  { [         f,          F,       thorn,            THORN ] };
  966.    key <AC06>  { [         h,          H,    sterling,         sterling ] };
  967.    key <AC07>  { [         j,          J,    EuroSign,         EuroSign ] };
  968.    key <AC10>  { [ semicolon,      colon,   masculine,      ordfeminine ] };
  969.    key <AC11>  { [ apostrophe,  quotedbl,    currency,         currency ] };
  970.    key <BKSL>  { [ backslash,        bar,      section,         section ] };
  971.  
  972.    key <AB03>  { [         c,          C,    ccedilla,         Ccedilla ] };
  973.    key <AB06>  { [         n,          N,      ntilde,           Ntilde ] };
  974.    key <AB07>  { [         m,          M,          mu,               mu ] };
  975.    key <AB08>  { [     comma,     less,  guillemotleft,   guillemotleft ] };
  976.    key <AB09>  { [    period,  greater, guillemotright,  guillemotright ] };
  977.    key <AB10>  { [     slash,   question, questiondown,    questiondown ] };
  978.  
  979.    key <I219>  { [  multiply,   division, ISO_Next_Group, ISO_Prev_Group ] };
  980.  
  981.    include "level3(ralt_switch)"
  982. };
  983.  
  984. partial alphanumeric_keys
  985. xkb_symbols "olpc2" {
  986.    include "us(olpc)"
  987.    name[Group1]= "USA - Group toggle on multiply/divide key";
  988.    include "group(olpc)"
  989. };
  990.  
  991. // Based on Cherokee Nation Official Layout
  992. // http://www.cherokee.org/extras/downloads/font/Keyboard.htm
  993.  
  994. partial alphanumeric_keys modifier_keys
  995. xkb_symbols "chr" {
  996.  
  997.     name[Group1]= "USA - Cherokee";
  998.     key.type[group1]="ALPHABETIC";
  999.  
  1000.     // Alphanumeric section
  1001.     key <TLDE> { [      grave,      U13CA ] };
  1002.     key <AE01> { [          1,      U13B1 ] };
  1003.     key <AE02> { [          2,      U13C7 ] };
  1004.     key <AE03> { [          3,      U13E7 ] };
  1005.     key <AE04> { [      U13D9,      U13B0 ] };
  1006.     key <AE05> { [      U13E6,      U13B9 ] };
  1007.     key <AE06> { [      U13DC,      U13DD ] };
  1008.     key <AE07> { [      U13CB,      U13E1 ] };
  1009.     key <AE08> { [      U13D6,      U13BA ] };
  1010.     key <AE09> { [      U13D2,  parenleft ] };
  1011.     key <AE10> { [      U13C4, parenright ] };
  1012.     key <AE11> { [      U13BF,      U13BC ] };
  1013.     key <AE12> { [      U13F3,      U13BD ] };
  1014.  
  1015.     key <AD01> { [      U13AA,      U13C6 ] };
  1016.     key <AD02> { [      U13B3,      U13EB ] };
  1017.     key <AD03> { [      U13A1,      U13E3 ] };
  1018.     key <AD04> { [      U13DB,      U13CF ] };
  1019.     key <AD05> { [      U13D4,      U13D8 ] };
  1020.     key <AD06> { [      U13EF,      U13F2 ] };
  1021.     key <AD07> { [      U13A4,      U13AD ] };
  1022.     key <AD08> { [      U13A2,      U13F1 ] };
  1023.     key <AD09> { [      U13A3,      U13EC ] };
  1024.     key <AD10> { [      U13C1,      U13EA ] };
  1025.     key <AD11> { [      U13D5,      U13D1 ] };
  1026.     key <AD12> { [      U13B6,      U13E4 ] };
  1027.     key <BKSL> { [      U13E9,      U13EE ] };
  1028.  
  1029.     key <AC01> { [      U13A0,      U13CC ] };
  1030.     key <AC02> { [      U13CD,      U13CE ] };
  1031.     key <AC03> { [      U13D7,      U13D0 ] };
  1032.     key <AC04> { [      U13A9,      U13C8 ] };
  1033.     key <AC05> { [      U13A6,      U13E5 ] };
  1034.     key <AC06> { [      U13AF,      U13B2 ] };
  1035.     key <AC07> { [      U13DA,      U13AB ] };
  1036.     key <AC08> { [      U13B8,      U13A7 ] };
  1037.     key <AC09> { [      U13B5,      U13AE ] };
  1038.     key <AC10> { [      U13E8,      U13E0 ] };
  1039.     key <AC11> { [ apostrophe,   quotedbl ] };
  1040.  
  1041.     key <AB01> { [      U13AC,      U13C3 ] };
  1042.     key <AB02> { [      U13F4,      U13ED ] };
  1043.     key <AB03> { [      U13D3,      U13DF ] };
  1044.     key <AB04> { [      U13A5,      U13DE ] };
  1045.     key <AB05> { [      U13A8,      U13F0 ] };
  1046.     key <AB06> { [      U13BE,      U13BB ] };
  1047.     key <AB07> { [      U13C5,      U13B7 ] };
  1048.     key <AB08> { [      comma,      U13E2 ] };
  1049.     key <AB09> { [     period,      U13B4 ] };
  1050.     key <AB10> { [      U13C2,      U13C9 ] };
  1051.  
  1052.     // End alphanumeric section
  1053. };
  1054.