xkb/geometry/trulyergonomic
changeset 3 3503b6eb6a1b
child 4 a31ea9d76d14
equal deleted inserted replaced
2:c6af35843530 3:3503b6eb6a1b
       
     1 // -*- indent-tabs-mode: nil -*-
       
     2 
       
     3 // Created by Fabien Ninoles <fabien (at) tzone (dot) org>
       
     4 
       
     5 // Note : the special/multimedia keys (Calc, WWW, Desktop…) have a keycode
       
     6 // <I[XX]>, found in definition file /usr/share/X11/xkb/keycodes/evdev.
       
     7 // Fn           = <I120>;
       
     8 // Calc         = <I148>;
       
     9 // WWW          = <I158>;
       
    10 // CycleWindows = <I162>;
       
    11 // Mail         = <I163>;
       
    12 // PlayPause    = <I172>;
       
    13 // Desktop      = <I243>;
       
    14 
       
    15 xkb_geometry "teckD209" {
       
    16     description = "Truly Ergonomic D209";
       
    17 
       
    18     // Keyboard total size :
       
    19     width  = 308;
       
    20     height = 150;
       
    21     // Background / foreground colours
       
    22     baseColor  = "white";
       
    23     labelColor = "black";
       
    24 
       
    25     // Key shapes: base key = 16 mm each side
       
    26     shape "NORM" { cornerRadius=1, { [17,    17]   }, { [2,   2], [15,   15] }};
       
    27     shape "DBLA" { cornerRadius=1, { [35,    17]   }, { [2,   2], [33,   15] }};
       
    28 
       
    29     section "Function" {
       
    30         left = 5;
       
    31         top  = 5;
       
    32         key.gap = 0.5;
       
    33         key.color = "grey10";
       
    34         key.shape = "NORM";
       
    35         row {
       
    36             keys { <ESC> };
       
    37         };
       
    38         row {
       
    39             left = 25;
       
    40             keys { <FK01>, <FK02>, <FK03>, <FK04> };
       
    41         };
       
    42         row {
       
    43             left = 105;
       
    44             keys { <FK05>, <FK06>, <FK07>, <FK08> };
       
    45         };
       
    46         row {
       
    47             left = 185;
       
    48             keys { <FK09>, <FK10>, <FK11>, <FK12> };
       
    49         };
       
    50         row {
       
    51             left = 265;
       
    52             keys { <DELE> };
       
    53         };
       
    54         row {
       
    55             top = 17.5;
       
    56             left = 115;
       
    57             keys { <CAPS>, 
       
    58                    <DELE>, // modified from <I120>
       
    59                    <NMLK> };
       
    60         };
       
    61     };
       
    62 
       
    63     section "LeftColumn" {
       
    64         left = 4;
       
    65         top  = 80;
       
    66         key.gap = 0.5;
       
    67         key.color = "grey20";
       
    68         key.shape = "DBLA";
       
    69         row { keys { <LFSH> }; };
       
    70         row {
       
    71           top = 17.5;
       
    72           keys { <LCTL> };
       
    73         };
       
    74         row {
       
    75           top = 35;
       
    76           keys {
       
    77             { <I120>, "NORM" },
       
    78             { <LALT>, "NORM" }
       
    79           };
       
    80         };
       
    81     };
       
    82 
       
    83     section "LeftAlpha" {
       
    84         left = 39;
       
    85         top  = 45;
       
    86         key.gap = 0.5;
       
    87         key.color = "grey10";
       
    88         key.shape = "NORM";
       
    89         row {
       
    90             top  = 0;
       
    91             left = -35;
       
    92             keys { 
       
    93               <AD12>, // modified from ?
       
    94               <TLDE>,
       
    95               <AE01>, <AE02>, <AE03>, <AE04>, <AE05>
       
    96             };
       
    97         };
       
    98         row {
       
    99             left = -35;
       
   100             top  = 17.5;
       
   101             keys { 
       
   102                    <ESC>, // modified from <BKSL>
       
   103                    <BKSL>, // modified from <AB10>
       
   104                    <AD01>, <AD02>, <AD03>, <AD04>, <AD05>
       
   105                  };
       
   106         };
       
   107         row {
       
   108             top  = 35;
       
   109             keys { <AC01>, <AC02>, <AC03>, <AC04>, <AC05> };
       
   110         };
       
   111         row {
       
   112             top  = 52.5;
       
   113             keys { <AB01>, <AB02>, <AB03>, <AC04>, <AC05> };
       
   114         };
       
   115    };
       
   116     section "RightAlpha" {
       
   117         left = 161.5;
       
   118         top  = 45;
       
   119         key.gap = 0.5;
       
   120         key.color = "grey10";
       
   121         key.shape = "NORM";
       
   122         row {
       
   123             top  = 0;
       
   124             keys { 
       
   125               <AE06>, <AE07>, <AE08>, <AE09>, <AE10>,
       
   126               <AE11>, <AE12>
       
   127             };
       
   128         };
       
   129         row {
       
   130             top  = 17.5;
       
   131             keys { 
       
   132                    <AD06>, <AD07>, <AD08>, <AD09>, <AD10>,
       
   133                    <AC11>, // modified from <AD11>
       
   134                    <AD11>  // modified from <AD12>
       
   135                  };
       
   136         };
       
   137         row {
       
   138             top  = 35;
       
   139             keys { <AC06>, <AC07>, <AC08>, <AC09>, <AC10> };
       
   140         };
       
   141         row {
       
   142             top  = 52.5;
       
   143             keys { <AB06>, <AB07>, <AB08>, <AB09>, <AB10> };
       
   144         };
       
   145    };
       
   146    section "CentralColumn" {
       
   147       top = 45;
       
   148       left = 126.5;
       
   149       key.shape = "DBLA";
       
   150       key.color = "grey20";
       
   151       // Central section
       
   152       row {
       
   153           keys { <LWIN> };
       
   154       };
       
   155       row {
       
   156           top = 17.5;
       
   157           keys { <RALT> }; // modified from <DELE>
       
   158       };
       
   159       row {
       
   160           top = 35;
       
   161           keys { <TAB> };
       
   162       };
       
   163       row {
       
   164           top = 52.5;
       
   165           keys { <BKSP> };
       
   166       };
       
   167       row {
       
   168           top  = 70;
       
   169           left = -35;
       
   170           keys { <SPCE>, <RTRN>, <SPCE> };
       
   171         };
       
   172    };
       
   173    section "LeftCross" {
       
   174         left = 39;
       
   175         top  = 115;
       
   176         key.gap = 0.5;
       
   177         key.color = "grey20";
       
   178         key.shape = "NORM";
       
   179         // Cross section
       
   180         row {
       
   181             top  = 8;
       
   182             left = 0;
       
   183             keys { <AB03> }; // modified from <HOME> 
       
   184         };
       
   185         row {
       
   186             top = 0;
       
   187             left = 17.5;
       
   188             keys { <AC06> }; // modified from <PGUP>
       
   189         };
       
   190         row {
       
   191             top = 17.5;
       
   192             left = 17.5;
       
   193             keys { <AD11> }; // modified from <PGDN>
       
   194         };
       
   195         row {
       
   196             top = 8;
       
   197             left = 35;
       
   198             keys { <AD07> }; // modified from <END>
       
   199         };
       
   200    };
       
   201    section "RightCross" {
       
   202         left = 196.5;
       
   203         top  = 115;
       
   204         key.gap = 0.5;
       
   205         key.color = "grey20";
       
   206         key.shape = "NORM";
       
   207         // Cross section
       
   208         row {
       
   209             top  = 8;
       
   210             left = 0;
       
   211             keys { <LEFT> }; // modified from <HOME> 
       
   212         };
       
   213         row {
       
   214             top = 0;
       
   215             left = 17.5;
       
   216             keys { <UP> }; // modified from <PGUP>
       
   217         };
       
   218         row {
       
   219             top = 17.5;
       
   220             left = 17.5;
       
   221             keys { <DOWN> }; // modified from <PGDN>
       
   222         };
       
   223         row {
       
   224             top = 8;
       
   225             left = 35;
       
   226             keys { <RGHT> }; // modified from <END>
       
   227         };
       
   228    };
       
   229     section "RightColumn" {
       
   230         left = 250;
       
   231         top  = 80;
       
   232         key.gap = 0.5;
       
   233         key.color = "grey20";
       
   234         key.shape = "DBLA";
       
   235         row { keys { <RTSH> }; };
       
   236         row {
       
   237           top = 17.5;
       
   238           keys { <RCTL> };
       
   239         };
       
   240         row {
       
   241           top = 35;
       
   242           keys {
       
   243             { <RALT>, "NORM" },
       
   244             { <I120>, "NORM" }
       
   245           };
       
   246         };
       
   247     };
       
   248 
       
   249 }; // geometry teckD209