Advertisement
Guest User

Proposed JSON physical keyboard layout format

a guest
Apr 28th, 2015
201
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. {
  2.  
  3.     "language" : "en_US",
  4.     "type"     : "qwerty",
  5.  
  6.     "keys" : {
  7.  
  8.         "Back"  : 65288,
  9.         "Tab"   : 65289,
  10.         "Enter" : 65293,
  11.         "Esc"   : 65307,
  12.         "Home"  : 65360,
  13.         "Left"  : 65361,
  14.         "Up"    : 65362,
  15.         "Right" : 65363,
  16.         "Down"  : 65364,
  17.         "PgUp"  : 65365,
  18.         "PgDn"  : 65366,
  19.         "End"   : 65367,
  20.         "Ins"   : 65379,
  21.         "F1"    : 65470,
  22.         "F2"    : 65471,
  23.         "F3"    : 65472,
  24.         "F4"    : 65473,
  25.         "F5"    : 65474,
  26.         "F6"    : 65475,
  27.         "F7"    : 65476,
  28.         "F8"    : 65477,
  29.         "F9"    : 65478,
  30.         "F10"   : 65479,
  31.         "F11"   : 65480,
  32.         "F12"   : 65481,
  33.         "Del"   : 65535,
  34.  
  35.         "Space" : " ",
  36.  
  37.         "Menu" : [{
  38.             "title"    : "Menu",
  39.             "modifier" : "super",
  40.             "keysym"   : 65383
  41.         }],
  42.         "LeftShift" : [{
  43.             "title"    : "Shift",
  44.             "modifier" : "shift",
  45.             "keysym"   : 65505
  46.         }],
  47.         "RightShift" : [{
  48.             "title"    : "Shift",
  49.             "modifier" : "shift",
  50.             "keysym"   : 65506
  51.         }],
  52.         "LeftCtrl" : [{
  53.             "title"    : "Ctrl",
  54.             "modifier" : "control",
  55.             "keysym"   : 65507
  56.         }],
  57.         "RightCtrl" : [{
  58.             "title"    : "Ctrl",
  59.             "modifier" : "control",
  60.             "keysym"   : 65508
  61.         }],
  62.         "Caps" : [{
  63.             "title"    : "Caps",
  64.             "modifier" : "caps",
  65.             "keysym"   : 65509
  66.         }],
  67.         "LeftAlt" : [{
  68.             "title"    : "Alt",
  69.             "modifier" : "alt",
  70.             "keysym"   : 65513
  71.         }],
  72.         "RightAlt" : [{
  73.             "title"    : "Alt",
  74.             "modifier" : "alt",
  75.             "keysym"   : 65514
  76.         }],
  77.         "Super" : [{
  78.             "title"    : "Super",
  79.             "modifier" : "super",
  80.             "keysym"   : 65515
  81.         }],
  82.  
  83.         "`" : [
  84.             { "title" : "`", "requires" : [         ] },
  85.             { "title" : "~", "requires" : [ "shift" ] }
  86.         ],
  87.         "1" : [
  88.             { "title" : "1", "requires" : [         ] },
  89.             { "title" : "!", "requires" : [ "shift" ] }
  90.         ],
  91.         "2" : [
  92.             { "title" : "2", "requires" : [         ] },
  93.             { "title" : "@", "requires" : [ "shift" ] }
  94.         ],
  95.         "3" : [
  96.             { "title" : "3", "requires" : [         ] },
  97.             { "title" : "#", "requires" : [ "shift" ] }
  98.         ],
  99.         "4" : [
  100.             { "title" : "4", "requires" : [         ] },
  101.             { "title" : "$", "requires" : [ "shift" ] }
  102.         ],
  103.         "5" : [
  104.             { "title" : "5", "requires" : [         ] },
  105.             { "title" : "%", "requires" : [ "shift" ] }
  106.         ],
  107.         "6" : [
  108.             { "title" : "6", "requires" : [         ] },
  109.             { "title" : "^", "requires" : [ "shift" ] }
  110.         ],
  111.         "7" : [
  112.             { "title" : "7", "requires" : [         ] },
  113.             { "title" : "&", "requires" : [ "shift" ] }
  114.         ],
  115.         "8" : [
  116.             { "title" : "8", "requires" : [         ] },
  117.             { "title" : "*", "requires" : [ "shift" ] }
  118.         ],
  119.         "9" : [
  120.             { "title" : "9", "requires" : [         ] },
  121.             { "title" : "(", "requires" : [ "shift" ] }
  122.         ],
  123.         "0" : [
  124.             { "title" : "0", "requires" : [         ] },
  125.             { "title" : ")", "requires" : [ "shift" ] }
  126.         ],
  127.         "-" : [
  128.             { "title" : "-", "requires" : [         ] },
  129.             { "title" : "_", "requires" : [ "shift" ] }
  130.         ],
  131.         "=" : [
  132.             { "title" : "=", "requires" : [         ] },
  133.             { "title" : "+", "requires" : [ "shift" ] }
  134.         ],
  135.         "," : [
  136.             { "title" : ",", "requires" : [         ] },
  137.             { "title" : "<", "requires" : [ "shift" ] }
  138.         ],
  139.         "." : [
  140.             { "title" : ".", "requires" : [         ] },
  141.             { "title" : ">", "requires" : [ "shift" ] }
  142.         ],
  143.         "/" : [
  144.             { "title" : "/", "requires" : [         ] },
  145.             { "title" : "?", "requires" : [ "shift" ] }
  146.         ],
  147.         "[" : [
  148.             { "title" : "[", "requires" : [         ] },
  149.             { "title" : "{", "requires" : [ "shift" ] }
  150.         ],
  151.         "]" : [
  152.             { "title" : "]", "requires" : [         ] },
  153.             { "title" : "}", "requires" : [ "shift" ] }
  154.         ],
  155.         "\\" : [
  156.             { "title" : "\\", "requires" : [         ] },
  157.             { "title" : "|",  "requires" : [ "shift" ] }
  158.         ],
  159.         ";" : [
  160.             { "title" : ";", "requires" : [         ] },
  161.             { "title" : ":", "requires" : [ "shift" ] }
  162.         ],
  163.         "'" : [
  164.             { "title" : "'",  "requires" : [         ] },
  165.             { "title" : "\"", "requires" : [ "shift" ] }
  166.         ],
  167.  
  168.         "q" : [
  169.             { "title" : "q", "requires" : [                 ] },
  170.             { "title" : "Q", "requires" : [ "caps"          ] },
  171.             { "title" : "Q", "requires" : [ "shift"         ] },
  172.             { "title" : "q", "requires" : [ "caps", "shift" ] }
  173.         ],
  174.         "w" : [
  175.             { "title" : "w", "requires" : [                 ] },
  176.             { "title" : "W", "requires" : [ "caps"          ] },
  177.             { "title" : "W", "requires" : [ "shift"         ] },
  178.             { "title" : "w", "requires" : [ "caps", "shift" ] }
  179.         ],
  180.         "e" : [
  181.             { "title" : "e", "requires" : [                 ] },
  182.             { "title" : "E", "requires" : [ "caps"          ] },
  183.             { "title" : "E", "requires" : [ "shift"         ] },
  184.             { "title" : "e", "requires" : [ "caps", "shift" ] }
  185.         ],
  186.         "r" : [
  187.             { "title" : "r", "requires" : [                 ] },
  188.             { "title" : "R", "requires" : [ "caps"          ] },
  189.             { "title" : "R", "requires" : [ "shift"         ] },
  190.             { "title" : "r", "requires" : [ "caps", "shift" ] }
  191.         ],
  192.         "t" : [
  193.             { "title" : "t", "requires" : [                 ] },
  194.             { "title" : "T", "requires" : [ "caps"          ] },
  195.             { "title" : "T", "requires" : [ "shift"         ] },
  196.             { "title" : "t", "requires" : [ "caps", "shift" ] }
  197.         ],
  198.         "y" : [
  199.             { "title" : "y", "requires" : [                 ] },
  200.             { "title" : "Y", "requires" : [ "caps"          ] },
  201.             { "title" : "Y", "requires" : [ "shift"         ] },
  202.             { "title" : "y", "requires" : [ "caps", "shift" ] }
  203.         ],
  204.         "u" : [
  205.             { "title" : "u", "requires" : [                 ] },
  206.             { "title" : "U", "requires" : [ "caps"          ] },
  207.             { "title" : "U", "requires" : [ "shift"         ] },
  208.             { "title" : "u", "requires" : [ "caps", "shift" ] }
  209.         ],
  210.         "i" : [
  211.             { "title" : "i", "requires" : [                 ] },
  212.             { "title" : "I", "requires" : [ "caps"          ] },
  213.             { "title" : "I", "requires" : [ "shift"         ] },
  214.             { "title" : "i", "requires" : [ "caps", "shift" ] }
  215.         ],
  216.         "o" : [
  217.             { "title" : "o", "requires" : [                 ] },
  218.             { "title" : "O", "requires" : [ "caps"          ] },
  219.             { "title" : "O", "requires" : [ "shift"         ] },
  220.             { "title" : "o", "requires" : [ "caps", "shift" ] }
  221.         ],
  222.         "p" : [
  223.             { "title" : "p", "requires" : [                 ] },
  224.             { "title" : "P", "requires" : [ "caps"          ] },
  225.             { "title" : "P", "requires" : [ "shift"         ] },
  226.             { "title" : "p", "requires" : [ "caps", "shift" ] }
  227.         ],
  228.         "a" : [
  229.             { "title" : "a", "requires" : [                 ] },
  230.             { "title" : "A", "requires" : [ "caps"          ] },
  231.             { "title" : "A", "requires" : [ "shift"         ] },
  232.             { "title" : "a", "requires" : [ "caps", "shift" ] }
  233.         ],
  234.         "s" : [
  235.             { "title" : "s", "requires" : [                 ] },
  236.             { "title" : "S", "requires" : [ "caps"          ] },
  237.             { "title" : "S", "requires" : [ "shift"         ] },
  238.             { "title" : "s", "requires" : [ "caps", "shift" ] }
  239.         ],
  240.         "d" : [
  241.             { "title" : "d", "requires" : [                 ] },
  242.             { "title" : "D", "requires" : [ "caps"          ] },
  243.             { "title" : "D", "requires" : [ "shift"         ] },
  244.             { "title" : "d", "requires" : [ "caps", "shift" ] }
  245.         ],
  246.         "f" : [
  247.             { "title" : "f", "requires" : [                 ] },
  248.             { "title" : "F", "requires" : [ "caps"          ] },
  249.             { "title" : "F", "requires" : [ "shift"         ] },
  250.             { "title" : "f", "requires" : [ "caps", "shift" ] }
  251.         ],
  252.         "g" : [
  253.             { "title" : "g", "requires" : [                 ] },
  254.             { "title" : "G", "requires" : [ "caps"          ] },
  255.             { "title" : "G", "requires" : [ "shift"         ] },
  256.             { "title" : "g", "requires" : [ "caps", "shift" ] }
  257.         ],
  258.         "h" : [
  259.             { "title" : "h", "requires" : [                 ] },
  260.             { "title" : "H", "requires" : [ "caps"          ] },
  261.             { "title" : "H", "requires" : [ "shift"         ] },
  262.             { "title" : "h", "requires" : [ "caps", "shift" ] }
  263.         ],
  264.         "j" : [
  265.             { "title" : "j", "requires" : [                 ] },
  266.             { "title" : "J", "requires" : [ "caps"          ] },
  267.             { "title" : "J", "requires" : [ "shift"         ] },
  268.             { "title" : "j", "requires" : [ "caps", "shift" ] }
  269.         ],
  270.         "k" : [
  271.             { "title" : "k", "requires" : [                 ] },
  272.             { "title" : "K", "requires" : [ "caps"          ] },
  273.             { "title" : "K", "requires" : [ "shift"         ] },
  274.             { "title" : "k", "requires" : [ "caps", "shift" ] }
  275.         ],
  276.         "l" : [
  277.             { "title" : "l", "requires" : [                 ] },
  278.             { "title" : "L", "requires" : [ "caps"          ] },
  279.             { "title" : "L", "requires" : [ "shift"         ] },
  280.             { "title" : "l", "requires" : [ "caps", "shift" ] }
  281.         ],
  282.         "z" : [
  283.             { "title" : "z", "requires" : [                 ] },
  284.             { "title" : "Z", "requires" : [ "caps"          ] },
  285.             { "title" : "Z", "requires" : [ "shift"         ] },
  286.             { "title" : "z", "requires" : [ "caps", "shift" ] }
  287.         ],
  288.         "x" : [
  289.             { "title" : "x", "requires" : [                 ] },
  290.             { "title" : "X", "requires" : [ "caps"          ] },
  291.             { "title" : "X", "requires" : [ "shift"         ] },
  292.             { "title" : "x", "requires" : [ "caps", "shift" ] }
  293.         ],
  294.         "c" : [
  295.             { "title" : "c", "requires" : [                 ] },
  296.             { "title" : "C", "requires" : [ "caps"          ] },
  297.             { "title" : "C", "requires" : [ "shift"         ] },
  298.             { "title" : "c", "requires" : [ "caps", "shift" ] }
  299.         ],
  300.         "v" : [
  301.             { "title" : "v", "requires" : [                 ] },
  302.             { "title" : "V", "requires" : [ "caps"          ] },
  303.             { "title" : "V", "requires" : [ "shift"         ] },
  304.             { "title" : "v", "requires" : [ "caps", "shift" ] }
  305.         ],
  306.         "b" : [
  307.             { "title" : "b", "requires" : [                 ] },
  308.             { "title" : "B", "requires" : [ "caps"          ] },
  309.             { "title" : "B", "requires" : [ "shift"         ] },
  310.             { "title" : "b", "requires" : [ "caps", "shift" ] }
  311.         ],
  312.         "n" : [
  313.             { "title" : "n", "requires" : [                 ] },
  314.             { "title" : "N", "requires" : [ "caps"          ] },
  315.             { "title" : "N", "requires" : [ "shift"         ] },
  316.             { "title" : "n", "requires" : [ "caps", "shift" ] }
  317.         ],
  318.         "m" : [
  319.             { "title" : "m", "requires" : [                 ] },
  320.             { "title" : "M", "requires" : [ "caps"          ] },
  321.             { "title" : "M", "requires" : [ "shift"         ] },
  322.             { "title" : "m", "requires" : [ "caps", "shift" ] }
  323.         ]
  324.  
  325.     },
  326.  
  327.     "layout" : {
  328.  
  329.         "main" : {
  330.             "function-keys" : {
  331.                 "esc"    : [ "Esc" ],
  332.                 "f1-f4"  : [ "F1", "F2",  "F3",  "F4"  ],
  333.                 "f5-f8"  : [ "F5", "F6",  "F7",  "F8"  ],
  334.                 "f9-f12" : [ "F9", "F10", "F11", "F12" ]
  335.             },
  336.  
  337.             "alpha" : [
  338.                 [ "`", "1", "2", "3", "4", "5", "6", "7", "8", "9", "0", "-", "=", "Back" ],
  339.                 [ "Tab", "q", "w", "e", "r", "t", "y", "u", "i", "o", "p", "[", "]", "\\" ],
  340.                 [ "Caps",  "a", "s", "d", "f", "g", "h", "j", "k", "l", ";", "'", "Enter" ],
  341.                 [ "Shift",  "z", "x", "c", "v",  "b", "n",  "m", ",", ".", "/",   "Shift" ],
  342.                 [ "Ctrl", "Super", "Alt",         "Space",          "Alt", "Menu", "Ctrl" ]
  343.             ]
  344.         },
  345.  
  346.         "movement" : {
  347.             "large" : [
  348.                 [ "Ins", "Home", "PgUp" ],
  349.                 [ "Del", "End",  "PgDn" ]
  350.             ],
  351.  
  352.             "fine" : [
  353.                 [          "Up"           ],
  354.                 [ "Left", "Down", "Right" ]
  355.             ]
  356.         }
  357.  
  358.     }
  359.  
  360. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement