/usr/share/X11/xkb/geometry
Edit: /usr/share/X11/xkb/geometry/steelseries (8282B)
//
//Copyright 1996, 1998 The Open Group
//
//Permission to use, copy, modify, distribute, and sell this software and its
//documentation for any purpose is hereby granted without fee, provided that
//the above copyright notice appear in all copies and that both that
//copyright notice and this permission notice appear in supporting
//documentation.
//
//The above copyright notice and this permission notice shall be
//included in all copies or substantial portions of the Software.
//
//THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
//EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
//MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
//IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR
//OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
//ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
//OTHER DEALINGS IN THE SOFTWARE.
//
//Except as contained in this notice, the name of The Open Group shall
//not be used in advertising or otherwise to promote the sale, use or
//other dealings in this Software without prior written authorization
//from The Open Group.
//
// modified from /usr/share/X11/xkb/geometry/pc(pc104)
//
// The Apex 300 (Apex RAW) has 21 additional keys and
//
is replaced by a hardware key. These
// additions to the basic PC104 layout are shown in red.
//
// Currently the kernel doesn't initialize these keys; a userspace
// tool is needed (apexctl: https://github.com/tuxmark5/ApexCtl).
// With this tool or a proper driver, the extra keys (except FN)
// can be assigned keycodes via udev-hwdb.
//
// FIXME: Keycodes shown here should be changed to match
// kernel defaults when a driver is developed.
//
// The additional keys are in 4 groups:
// 1) L1-L2 left of Escape (column) ,
// 2) M1-M12 above F1-F12 (row) -
// 3) MX1-MX5 left of alpha keys (column) -
// 4) LeftUp, RightUp with regular arrows ,
//
// Known key functions:
// + = kbd backlight step dimmer (NoSymbol)
// + = kbd backlight step brighter (NoSymbol)
// + = (AudioPrev)
// + = (AudioPlay, AudioPause)
// + = (AudioNext)
// + = (AudioMute)
// + = (VolumeUp)
// + = (VolumeDown)
//
// And yes, the spacebar really is that ridiculous.
//
// 2017.April
//
default xkb_geometry "apex300" {
description= "SteelSeries Apex 300 (Apex RAW)";
width= 450;
height= 150;
shape.cornerRadius= 1;
shape "NORM" { { [ 18,18] }, { [2,1], [ 16,16] } };
shape "BKSP" { { [ 38,18] }, { [2,1], [ 36,16] } };
shape "TABK" { { [ 28,18] }, { [2,1], [ 26,16] } };
shape "BKSL" { { [ 28,18] }, { [2,1], [ 26,16] } };
shape "RTRN" { { [ 42,18] }, { [2,1], [ 40,16] } };
shape "CAPS" { { [ 33,18] }, { [2,1], [ 31,16] } };
shape "LFSH" { { [ 42,18] }, { [2,1], [ 40,16] } };
shape "RTSH" { { [ 52,18] }, { [2,1], [ 50,16] } };
shape "MODK" { { [ 27,18] }, { [2,1], [ 25,16] } };
shape "SMOD" { { [ 23,18] }, { [2,1], [ 21,16] } };
shape "SPCE" { { [113,37] }, { [2,1], [111,35] } };
shape "KP0" { { [ 37,18] }, { [2,1], [ 35,16] } };
shape "KPAD" { { [ 18,37] }, { [2,1], [ 16,35] } };
shape "MKEY" { { [ 18,8] }, { [2,1], [ 16,7] } };
shape "ESCA" { { [ 18,28] }, { [2,1], [ 16,27] } };
shape "LKEY" { { [ 18,14] }, { [2,1], [ 16,13] } };
shape "LEDS" { cornerRadius= 0, { [ 54, 6 ] } };
shape "LED" { cornerRadius= 0, { [ 4, 1 ] } };
solid "LedPanel" {
shape= "LEDS";
top= 2;
left= 315;
color= "grey10";
};
indicator.onColor= "red";
indicator.offColor= "red";
indicator.top= 7;
indicator.shape= "LED";
indicator "Num Lock" { left= 321; };
indicator "Caps Lock" { left= 340; };
indicator "Scroll Lock" { left= 359; };
text.top= 2;
text.color= "black";
text "NumLockLabel" { left= 322; text="N"; };
text "CapsLockLabel" { left= 341; text="C"; };
text "ScrollLockLabel" { left= 360; text="S"; };
text "SteelSeriesLogo" { top= 10; left= 400; text="SteelSeries"; };
text "FNLogoKeyLabel" { top= 130; left= 248; text="FN"; };
key.shape= "NORM";
key.gap= 1;
key.color= "grey10";
section "Lkeys" {
key.shape= "LKEY";
key.color= "red";
row { top= 1; keys { }; };
row { top= 15; keys { }; };
}; // end of "Lkeys" section
section "MXkeys" {
key.shape= "NORM";
key.color= "red";
row { top= 35; keys { }; }; // 40 59 78 97 116
row { top= 54; keys { }; }; // 35 54 73 92 111
row { top= 73; keys { }; };
row { top= 92; keys { }; };
row { top=111; keys { }; };
}; // end of "MXkeys" section
section "Escape" {
left= 23;
key.shape= "ESCA";
key.color= "grey30";
row { top= 1; keys { }; };
}; // end of "Escape" section
section "Mkeys" {
left= 61;
key.color= "red";
key.shape= "MKEY";
row { top= 1;
keys { , , , ,
{ , 11 }, , , ,
{ , 11 }, , , }; };
}; // end of "Mkeys" section
section "Function" {
left= 61;
key.color= "grey30";
row { top= 10;
keys { , , , ,
{ , 11 }, , , ,
{ , 11 }, , , ,
{ , 5 }, , }; };
}; // end of "Function" section
section "Alpha" {
top= 35;
left= 23;
key.color= "grey10";
row { keys { , , , , ,
, , , , ,
, , ,
{ , "BKSP", color="grey30" } }; };
row { top= 19;
keys { { , "TABK", color="grey30" },
, , , , ,
, , , , ,
, , { , "BKSL" } }; };
row { top= 38;
keys { { , "CAPS", color="grey30" },
, , , , ,
, , , , ,
, { , "RTRN", color="grey30" } }; };
row { top= 57;
keys { { , "LFSH", color="grey30" },
, , , , ,
, , , , ,
{ , "RTSH", color="grey30" } }; };
row { top= 76;
key.shape= "SMOD";
key.color= "grey30";
keys { { , "MODK" }, , , { , "SPCE" },
, { , color="red" },