qmk_firmware

QMK firmware for my keyboards (Corne, Sweep Ferris) and trackball (Ploopy Adept)
Log | Files | Refs | Submodules | LICENSE

keyboard.json (26123B)


      1 {
      2   "keyboard_name": "GH60 Satan",
      3   "manufacturer": "SATAN",
      4   "maintainer": "qmk",
      5   "usb": {
      6     "vid": "0x4335",
      7     "pid": "0x0002",
      8     "device_version": "0.0.3"
      9   },
     10   "features": {
     11     "backlight": true,
     12     "bootmagic": true,
     13     "command": true,
     14     "console": true,
     15     "extrakey": true,
     16     "mousekey": false,
     17     "nkro": true,
     18     "rgblight": true
     19   },
     20   "qmk": {
     21     "locking": {
     22       "enabled": true,
     23       "resync": true
     24     }
     25   },
     26   "matrix_pins": {
     27     "cols": ["F0", "F1", "E6", "C7", "C6", "B7", "D4", "B1", "B0", "B5", "B4", "D7", "D6", "B3"],
     28     "rows": ["D0", "D1", "D2", "D3", "D5"]
     29   },
     30   "diode_direction": "COL2ROW",
     31   "backlight": {
     32     "pin": "B6",
     33     "levels": 4
     34   },
     35   "rgblight": {
     36     "hue_steps": 10,
     37     "led_count": 8,
     38     "animations": {
     39       "breathing": true,
     40       "rainbow_mood": true,
     41       "rainbow_swirl": true,
     42       "snake": true,
     43       "knight": true,
     44       "christmas": true,
     45       "static_gradient": true,
     46       "rgb_test": true,
     47       "alternating": true,
     48       "twinkle": true
     49     }
     50   },
     51   "ws2812": {
     52     "pin": "E2"
     53   },
     54   "indicators": {
     55     "caps_lock": "B2",
     56     "on_state": 0
     57   },
     58   "processor": "atmega32u4",
     59   "bootloader": "atmel-dfu",
     60   "community_layouts": ["60_ansi", "60_iso", "60_ansi_split_bs_rshift", "60_hhkb"],
     61   "layouts": {
     62     "LAYOUT_all": {
     63       "layout": [
     64         {"matrix": [0, 0], "x": 0, "y": 0},
     65         {"matrix": [0, 1], "x": 1, "y": 0},
     66         {"matrix": [0, 2], "x": 2, "y": 0},
     67         {"matrix": [0, 3], "x": 3, "y": 0},
     68         {"matrix": [0, 4], "x": 4, "y": 0},
     69         {"matrix": [0, 5], "x": 5, "y": 0},
     70         {"matrix": [0, 6], "x": 6, "y": 0},
     71         {"matrix": [0, 7], "x": 7, "y": 0},
     72         {"matrix": [0, 8], "x": 8, "y": 0},
     73         {"matrix": [0, 9], "x": 9, "y": 0},
     74         {"matrix": [0, 10], "x": 10, "y": 0},
     75         {"matrix": [0, 11], "x": 11, "y": 0},
     76         {"matrix": [0, 12], "x": 12, "y": 0},
     77         {"matrix": [0, 13], "x": 13, "y": 0},
     78         {"matrix": [4, 9], "x": 14, "y": 0},
     79 
     80         {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
     81         {"matrix": [1, 1], "x": 1.5, "y": 1},
     82         {"matrix": [1, 2], "x": 2.5, "y": 1},
     83         {"matrix": [1, 3], "x": 3.5, "y": 1},
     84         {"matrix": [1, 4], "x": 4.5, "y": 1},
     85         {"matrix": [1, 5], "x": 5.5, "y": 1},
     86         {"matrix": [1, 6], "x": 6.5, "y": 1},
     87         {"matrix": [1, 7], "x": 7.5, "y": 1},
     88         {"matrix": [1, 8], "x": 8.5, "y": 1},
     89         {"matrix": [1, 9], "x": 9.5, "y": 1},
     90         {"matrix": [1, 10], "x": 10.5, "y": 1},
     91         {"matrix": [1, 11], "x": 11.5, "y": 1},
     92         {"matrix": [1, 12], "x": 12.5, "y": 1},
     93         {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
     94 
     95         {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
     96         {"matrix": [2, 1], "x": 1.75, "y": 2},
     97         {"matrix": [2, 2], "x": 2.75, "y": 2},
     98         {"matrix": [2, 3], "x": 3.75, "y": 2},
     99         {"matrix": [2, 4], "x": 4.75, "y": 2},
    100         {"matrix": [2, 5], "x": 5.75, "y": 2},
    101         {"matrix": [2, 6], "x": 6.75, "y": 2},
    102         {"matrix": [2, 7], "x": 7.75, "y": 2},
    103         {"matrix": [2, 8], "x": 8.75, "y": 2},
    104         {"matrix": [2, 9], "x": 9.75, "y": 2},
    105         {"matrix": [2, 10], "x": 10.75, "y": 2},
    106         {"matrix": [2, 11], "x": 11.75, "y": 2},
    107         {"matrix": [2, 12], "x": 12.75, "y": 2},
    108         {"matrix": [2, 13], "x": 13.75, "y": 2, "w": 1.25},
    109 
    110         {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
    111         {"matrix": [3, 1], "x": 1.25, "y": 3},
    112         {"matrix": [3, 2], "x": 2.25, "y": 3},
    113         {"matrix": [3, 3], "x": 3.25, "y": 3},
    114         {"matrix": [3, 4], "x": 4.25, "y": 3},
    115         {"matrix": [3, 5], "x": 5.25, "y": 3},
    116         {"matrix": [3, 6], "x": 6.25, "y": 3},
    117         {"matrix": [3, 7], "x": 7.25, "y": 3},
    118         {"matrix": [3, 8], "x": 8.25, "y": 3},
    119         {"matrix": [3, 9], "x": 9.25, "y": 3},
    120         {"matrix": [3, 10], "x": 10.25, "y": 3},
    121         {"matrix": [3, 11], "x": 11.25, "y": 3},
    122         {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75},
    123         {"matrix": [3, 12], "x": 14, "y": 3},
    124 
    125         {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
    126         {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
    127         {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
    128         {"matrix": [4, 5], "x": 3.75, "y": 4, "w": 6.25},
    129         {"matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
    130         {"matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
    131         {"matrix": [4, 12], "x": 12.5, "y": 4, "w": 1.25},
    132         {"matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25}
    133       ]
    134     },
    135     "LAYOUT_60_ansi": {
    136       "layout": [
    137         {"matrix": [0, 0], "x": 0, "y": 0},
    138         {"matrix": [0, 1], "x": 1, "y": 0},
    139         {"matrix": [0, 2], "x": 2, "y": 0},
    140         {"matrix": [0, 3], "x": 3, "y": 0},
    141         {"matrix": [0, 4], "x": 4, "y": 0},
    142         {"matrix": [0, 5], "x": 5, "y": 0},
    143         {"matrix": [0, 6], "x": 6, "y": 0},
    144         {"matrix": [0, 7], "x": 7, "y": 0},
    145         {"matrix": [0, 8], "x": 8, "y": 0},
    146         {"matrix": [0, 9], "x": 9, "y": 0},
    147         {"matrix": [0, 10], "x": 10, "y": 0},
    148         {"matrix": [0, 11], "x": 11, "y": 0},
    149         {"matrix": [0, 12], "x": 12, "y": 0},
    150         {"matrix": [0, 13], "x": 13, "y": 0, "w": 2},
    151 
    152         {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
    153         {"matrix": [1, 1], "x": 1.5, "y": 1},
    154         {"matrix": [1, 2], "x": 2.5, "y": 1},
    155         {"matrix": [1, 3], "x": 3.5, "y": 1},
    156         {"matrix": [1, 4], "x": 4.5, "y": 1},
    157         {"matrix": [1, 5], "x": 5.5, "y": 1},
    158         {"matrix": [1, 6], "x": 6.5, "y": 1},
    159         {"matrix": [1, 7], "x": 7.5, "y": 1},
    160         {"matrix": [1, 8], "x": 8.5, "y": 1},
    161         {"matrix": [1, 9], "x": 9.5, "y": 1},
    162         {"matrix": [1, 10], "x": 10.5, "y": 1},
    163         {"matrix": [1, 11], "x": 11.5, "y": 1},
    164         {"matrix": [1, 12], "x": 12.5, "y": 1},
    165         {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
    166 
    167         {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
    168         {"matrix": [2, 1], "x": 1.75, "y": 2},
    169         {"matrix": [2, 2], "x": 2.75, "y": 2},
    170         {"matrix": [2, 3], "x": 3.75, "y": 2},
    171         {"matrix": [2, 4], "x": 4.75, "y": 2},
    172         {"matrix": [2, 5], "x": 5.75, "y": 2},
    173         {"matrix": [2, 6], "x": 6.75, "y": 2},
    174         {"matrix": [2, 7], "x": 7.75, "y": 2},
    175         {"matrix": [2, 8], "x": 8.75, "y": 2},
    176         {"matrix": [2, 9], "x": 9.75, "y": 2},
    177         {"matrix": [2, 10], "x": 10.75, "y": 2},
    178         {"matrix": [2, 11], "x": 11.75, "y": 2},
    179         {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
    180 
    181         {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
    182         {"matrix": [3, 2], "x": 2.25, "y": 3},
    183         {"matrix": [3, 3], "x": 3.25, "y": 3},
    184         {"matrix": [3, 4], "x": 4.25, "y": 3},
    185         {"matrix": [3, 5], "x": 5.25, "y": 3},
    186         {"matrix": [3, 6], "x": 6.25, "y": 3},
    187         {"matrix": [3, 7], "x": 7.25, "y": 3},
    188         {"matrix": [3, 8], "x": 8.25, "y": 3},
    189         {"matrix": [3, 9], "x": 9.25, "y": 3},
    190         {"matrix": [3, 10], "x": 10.25, "y": 3},
    191         {"matrix": [3, 11], "x": 11.25, "y": 3},
    192         {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 2.75},
    193 
    194         {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
    195         {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
    196         {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
    197         {"matrix": [4, 5], "x": 3.75, "y": 4, "w": 6.25},
    198         {"matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
    199         {"matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
    200         {"matrix": [4, 12], "x": 12.5, "y": 4, "w": 1.25},
    201         {"matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25}
    202       ]
    203     },
    204     "LAYOUT_60_iso": {
    205       "layout": [
    206         {"matrix": [0, 0], "x": 0, "y": 0},
    207         {"matrix": [0, 1], "x": 1, "y": 0},
    208         {"matrix": [0, 2], "x": 2, "y": 0},
    209         {"matrix": [0, 3], "x": 3, "y": 0},
    210         {"matrix": [0, 4], "x": 4, "y": 0},
    211         {"matrix": [0, 5], "x": 5, "y": 0},
    212         {"matrix": [0, 6], "x": 6, "y": 0},
    213         {"matrix": [0, 7], "x": 7, "y": 0},
    214         {"matrix": [0, 8], "x": 8, "y": 0},
    215         {"matrix": [0, 9], "x": 9, "y": 0},
    216         {"matrix": [0, 10], "x": 10, "y": 0},
    217         {"matrix": [0, 11], "x": 11, "y": 0},
    218         {"matrix": [0, 12], "x": 12, "y": 0},
    219         {"matrix": [0, 13], "x": 13, "y": 0, "w": 2},
    220 
    221         {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
    222         {"matrix": [1, 1], "x": 1.5, "y": 1},
    223         {"matrix": [1, 2], "x": 2.5, "y": 1},
    224         {"matrix": [1, 3], "x": 3.5, "y": 1},
    225         {"matrix": [1, 4], "x": 4.5, "y": 1},
    226         {"matrix": [1, 5], "x": 5.5, "y": 1},
    227         {"matrix": [1, 6], "x": 6.5, "y": 1},
    228         {"matrix": [1, 7], "x": 7.5, "y": 1},
    229         {"matrix": [1, 8], "x": 8.5, "y": 1},
    230         {"matrix": [1, 9], "x": 9.5, "y": 1},
    231         {"matrix": [1, 10], "x": 10.5, "y": 1},
    232         {"matrix": [1, 11], "x": 11.5, "y": 1},
    233         {"matrix": [1, 12], "x": 12.5, "y": 1},
    234 
    235         {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
    236         {"matrix": [2, 1], "x": 1.75, "y": 2},
    237         {"matrix": [2, 2], "x": 2.75, "y": 2},
    238         {"matrix": [2, 3], "x": 3.75, "y": 2},
    239         {"matrix": [2, 4], "x": 4.75, "y": 2},
    240         {"matrix": [2, 5], "x": 5.75, "y": 2},
    241         {"matrix": [2, 6], "x": 6.75, "y": 2},
    242         {"matrix": [2, 7], "x": 7.75, "y": 2},
    243         {"matrix": [2, 8], "x": 8.75, "y": 2},
    244         {"matrix": [2, 9], "x": 9.75, "y": 2},
    245         {"matrix": [2, 10], "x": 10.75, "y": 2},
    246         {"matrix": [2, 11], "x": 11.75, "y": 2},
    247         {"matrix": [2, 12], "x": 12.75, "y": 2},
    248         {"matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
    249 
    250         {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
    251         {"matrix": [3, 1], "x": 1.25, "y": 3},
    252         {"matrix": [3, 2], "x": 2.25, "y": 3},
    253         {"matrix": [3, 3], "x": 3.25, "y": 3},
    254         {"matrix": [3, 4], "x": 4.25, "y": 3},
    255         {"matrix": [3, 5], "x": 5.25, "y": 3},
    256         {"matrix": [3, 6], "x": 6.25, "y": 3},
    257         {"matrix": [3, 7], "x": 7.25, "y": 3},
    258         {"matrix": [3, 8], "x": 8.25, "y": 3},
    259         {"matrix": [3, 9], "x": 9.25, "y": 3},
    260         {"matrix": [3, 10], "x": 10.25, "y": 3},
    261         {"matrix": [3, 11], "x": 11.25, "y": 3},
    262         {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 2.75},
    263 
    264         {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
    265         {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
    266         {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
    267         {"matrix": [4, 5], "x": 3.75, "y": 4, "w": 6.25},
    268         {"matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
    269         {"matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
    270         {"matrix": [4, 12], "x": 12.5, "y": 4, "w": 1.25},
    271         {"matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25}
    272       ]
    273     },
    274     "LAYOUT_60_ansi_split_bs_rshift": {
    275       "layout": [
    276         {"matrix": [0, 0], "x": 0, "y": 0},
    277         {"matrix": [0, 1], "x": 1, "y": 0},
    278         {"matrix": [0, 2], "x": 2, "y": 0},
    279         {"matrix": [0, 3], "x": 3, "y": 0},
    280         {"matrix": [0, 4], "x": 4, "y": 0},
    281         {"matrix": [0, 5], "x": 5, "y": 0},
    282         {"matrix": [0, 6], "x": 6, "y": 0},
    283         {"matrix": [0, 7], "x": 7, "y": 0},
    284         {"matrix": [0, 8], "x": 8, "y": 0},
    285         {"matrix": [0, 9], "x": 9, "y": 0},
    286         {"matrix": [0, 10], "x": 10, "y": 0},
    287         {"matrix": [0, 11], "x": 11, "y": 0},
    288         {"matrix": [0, 12], "x": 12, "y": 0},
    289         {"matrix": [0, 13], "x": 13, "y": 0},
    290         {"matrix": [4, 9], "x": 14, "y": 0},
    291 
    292         {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
    293         {"matrix": [1, 1], "x": 1.5, "y": 1},
    294         {"matrix": [1, 2], "x": 2.5, "y": 1},
    295         {"matrix": [1, 3], "x": 3.5, "y": 1},
    296         {"matrix": [1, 4], "x": 4.5, "y": 1},
    297         {"matrix": [1, 5], "x": 5.5, "y": 1},
    298         {"matrix": [1, 6], "x": 6.5, "y": 1},
    299         {"matrix": [1, 7], "x": 7.5, "y": 1},
    300         {"matrix": [1, 8], "x": 8.5, "y": 1},
    301         {"matrix": [1, 9], "x": 9.5, "y": 1},
    302         {"matrix": [1, 10], "x": 10.5, "y": 1},
    303         {"matrix": [1, 11], "x": 11.5, "y": 1},
    304         {"matrix": [1, 12], "x": 12.5, "y": 1},
    305         {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
    306 
    307         {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
    308         {"matrix": [2, 1], "x": 1.75, "y": 2},
    309         {"matrix": [2, 2], "x": 2.75, "y": 2},
    310         {"matrix": [2, 3], "x": 3.75, "y": 2},
    311         {"matrix": [2, 4], "x": 4.75, "y": 2},
    312         {"matrix": [2, 5], "x": 5.75, "y": 2},
    313         {"matrix": [2, 6], "x": 6.75, "y": 2},
    314         {"matrix": [2, 7], "x": 7.75, "y": 2},
    315         {"matrix": [2, 8], "x": 8.75, "y": 2},
    316         {"matrix": [2, 9], "x": 9.75, "y": 2},
    317         {"matrix": [2, 10], "x": 10.75, "y": 2},
    318         {"matrix": [2, 11], "x": 11.75, "y": 2},
    319         {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
    320 
    321         {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
    322         {"matrix": [3, 2], "x": 2.25, "y": 3},
    323         {"matrix": [3, 3], "x": 3.25, "y": 3},
    324         {"matrix": [3, 4], "x": 4.25, "y": 3},
    325         {"matrix": [3, 5], "x": 5.25, "y": 3},
    326         {"matrix": [3, 6], "x": 6.25, "y": 3},
    327         {"matrix": [3, 7], "x": 7.25, "y": 3},
    328         {"matrix": [3, 8], "x": 8.25, "y": 3},
    329         {"matrix": [3, 9], "x": 9.25, "y": 3},
    330         {"matrix": [3, 10], "x": 10.25, "y": 3},
    331         {"matrix": [3, 11], "x": 11.25, "y": 3},
    332         {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75},
    333         {"matrix": [3, 12], "x": 14, "y": 3},
    334 
    335         {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.5},
    336         {"matrix": [4, 1], "x": 1.5, "y": 4},
    337         {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
    338         {"matrix": [4, 5], "x": 4, "y": 4, "w": 6},
    339         {"matrix": [4, 10], "x": 10, "y": 4, "w": 1.5},
    340         {"matrix": [4, 11], "x": 11.5, "y": 4},
    341         {"matrix": [4, 12], "x": 12.5, "y": 4},
    342         {"matrix": [4, 13], "x": 13.5, "y": 4, "w": 1.5}
    343       ]
    344     },
    345     "LAYOUT_60_iso_split_bs_rshift": {
    346       "layout": [
    347         {"matrix": [0, 0], "x": 0, "y": 0},
    348         {"matrix": [0, 1], "x": 1, "y": 0},
    349         {"matrix": [0, 2], "x": 2, "y": 0},
    350         {"matrix": [0, 3], "x": 3, "y": 0},
    351         {"matrix": [0, 4], "x": 4, "y": 0},
    352         {"matrix": [0, 5], "x": 5, "y": 0},
    353         {"matrix": [0, 6], "x": 6, "y": 0},
    354         {"matrix": [0, 7], "x": 7, "y": 0},
    355         {"matrix": [0, 8], "x": 8, "y": 0},
    356         {"matrix": [0, 9], "x": 9, "y": 0},
    357         {"matrix": [0, 10], "x": 10, "y": 0},
    358         {"matrix": [0, 11], "x": 11, "y": 0},
    359         {"matrix": [0, 12], "x": 12, "y": 0},
    360         {"matrix": [0, 13], "x": 13, "y": 0},
    361         {"matrix": [4, 9], "x": 14, "y": 0},
    362 
    363         {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
    364         {"matrix": [1, 1], "x": 1.5, "y": 1},
    365         {"matrix": [1, 2], "x": 2.5, "y": 1},
    366         {"matrix": [1, 3], "x": 3.5, "y": 1},
    367         {"matrix": [1, 4], "x": 4.5, "y": 1},
    368         {"matrix": [1, 5], "x": 5.5, "y": 1},
    369         {"matrix": [1, 6], "x": 6.5, "y": 1},
    370         {"matrix": [1, 7], "x": 7.5, "y": 1},
    371         {"matrix": [1, 8], "x": 8.5, "y": 1},
    372         {"matrix": [1, 9], "x": 9.5, "y": 1},
    373         {"matrix": [1, 10], "x": 10.5, "y": 1},
    374         {"matrix": [1, 11], "x": 11.5, "y": 1},
    375         {"matrix": [1, 12], "x": 12.5, "y": 1},
    376 
    377         {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
    378         {"matrix": [2, 1], "x": 1.75, "y": 2},
    379         {"matrix": [2, 2], "x": 2.75, "y": 2},
    380         {"matrix": [2, 3], "x": 3.75, "y": 2},
    381         {"matrix": [2, 4], "x": 4.75, "y": 2},
    382         {"matrix": [2, 5], "x": 5.75, "y": 2},
    383         {"matrix": [2, 6], "x": 6.75, "y": 2},
    384         {"matrix": [2, 7], "x": 7.75, "y": 2},
    385         {"matrix": [2, 8], "x": 8.75, "y": 2},
    386         {"matrix": [2, 9], "x": 9.75, "y": 2},
    387         {"matrix": [2, 10], "x": 10.75, "y": 2},
    388         {"matrix": [2, 11], "x": 11.75, "y": 2},
    389         {"matrix": [2, 12], "x": 12.75, "y": 2},
    390         {"matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
    391 
    392         {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
    393         {"matrix": [3, 1], "x": 1.25, "y": 3},
    394         {"matrix": [3, 2], "x": 2.25, "y": 3},
    395         {"matrix": [3, 3], "x": 3.25, "y": 3},
    396         {"matrix": [3, 4], "x": 4.25, "y": 3},
    397         {"matrix": [3, 5], "x": 5.25, "y": 3},
    398         {"matrix": [3, 6], "x": 6.25, "y": 3},
    399         {"matrix": [3, 7], "x": 7.25, "y": 3},
    400         {"matrix": [3, 8], "x": 8.25, "y": 3},
    401         {"matrix": [3, 9], "x": 9.25, "y": 3},
    402         {"matrix": [3, 10], "x": 10.25, "y": 3},
    403         {"matrix": [3, 11], "x": 11.25, "y": 3},
    404         {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75},
    405         {"matrix": [3, 12], "x": 14, "y": 3},
    406 
    407         {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.5},
    408         {"matrix": [4, 1], "x": 1.5, "y": 4},
    409         {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
    410         {"matrix": [4, 5], "x": 4, "y": 4, "w": 6},
    411         {"matrix": [4, 10], "x": 10, "y": 4, "w": 1.5},
    412         {"matrix": [4, 11], "x": 11.5, "y": 4},
    413         {"matrix": [4, 12], "x": 12.5, "y": 4},
    414         {"matrix": [4, 13], "x": 13.5, "y": 4, "w": 1.5}
    415       ]
    416     },
    417     "LAYOUT_60_ansi_split_rshift": {
    418       "layout": [
    419         {"matrix": [0, 0], "x": 0, "y": 0},
    420         {"matrix": [0, 1], "x": 1, "y": 0},
    421         {"matrix": [0, 2], "x": 2, "y": 0},
    422         {"matrix": [0, 3], "x": 3, "y": 0},
    423         {"matrix": [0, 4], "x": 4, "y": 0},
    424         {"matrix": [0, 5], "x": 5, "y": 0},
    425         {"matrix": [0, 6], "x": 6, "y": 0},
    426         {"matrix": [0, 7], "x": 7, "y": 0},
    427         {"matrix": [0, 8], "x": 8, "y": 0},
    428         {"matrix": [0, 9], "x": 9, "y": 0},
    429         {"matrix": [0, 10], "x": 10, "y": 0},
    430         {"matrix": [0, 11], "x": 11, "y": 0},
    431         {"matrix": [0, 12], "x": 12, "y": 0},
    432         {"matrix": [0, 13], "x": 13, "y": 0, "w": 2},
    433 
    434         {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
    435         {"matrix": [1, 1], "x": 1.5, "y": 1},
    436         {"matrix": [1, 2], "x": 2.5, "y": 1},
    437         {"matrix": [1, 3], "x": 3.5, "y": 1},
    438         {"matrix": [1, 4], "x": 4.5, "y": 1},
    439         {"matrix": [1, 5], "x": 5.5, "y": 1},
    440         {"matrix": [1, 6], "x": 6.5, "y": 1},
    441         {"matrix": [1, 7], "x": 7.5, "y": 1},
    442         {"matrix": [1, 8], "x": 8.5, "y": 1},
    443         {"matrix": [1, 9], "x": 9.5, "y": 1},
    444         {"matrix": [1, 10], "x": 10.5, "y": 1},
    445         {"matrix": [1, 11], "x": 11.5, "y": 1},
    446         {"matrix": [1, 12], "x": 12.5, "y": 1},
    447         {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
    448 
    449         {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
    450         {"matrix": [2, 1], "x": 1.75, "y": 2},
    451         {"matrix": [2, 2], "x": 2.75, "y": 2},
    452         {"matrix": [2, 3], "x": 3.75, "y": 2},
    453         {"matrix": [2, 4], "x": 4.75, "y": 2},
    454         {"matrix": [2, 5], "x": 5.75, "y": 2},
    455         {"matrix": [2, 6], "x": 6.75, "y": 2},
    456         {"matrix": [2, 7], "x": 7.75, "y": 2},
    457         {"matrix": [2, 8], "x": 8.75, "y": 2},
    458         {"matrix": [2, 9], "x": 9.75, "y": 2},
    459         {"matrix": [2, 10], "x": 10.75, "y": 2},
    460         {"matrix": [2, 11], "x": 11.75, "y": 2},
    461         {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
    462 
    463         {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
    464         {"matrix": [3, 2], "x": 2.25, "y": 3},
    465         {"matrix": [3, 3], "x": 3.25, "y": 3},
    466         {"matrix": [3, 4], "x": 4.25, "y": 3},
    467         {"matrix": [3, 5], "x": 5.25, "y": 3},
    468         {"matrix": [3, 6], "x": 6.25, "y": 3},
    469         {"matrix": [3, 7], "x": 7.25, "y": 3},
    470         {"matrix": [3, 8], "x": 8.25, "y": 3},
    471         {"matrix": [3, 9], "x": 9.25, "y": 3},
    472         {"matrix": [3, 10], "x": 10.25, "y": 3},
    473         {"matrix": [3, 11], "x": 11.25, "y": 3},
    474         {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75},
    475         {"matrix": [3, 12], "x": 14, "y": 3},
    476 
    477         {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
    478         {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
    479         {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
    480         {"matrix": [4, 5], "x": 3.75, "y": 4, "w": 6.25},
    481         {"matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
    482         {"matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
    483         {"matrix": [4, 12], "x": 12.5, "y": 4, "w": 1.25},
    484         {"matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25}
    485       ]
    486     },
    487     "LAYOUT_60_iso_split_rshift": {
    488       "layout": [
    489         {"matrix": [0, 0], "x": 0, "y": 0},
    490         {"matrix": [0, 1], "x": 1, "y": 0},
    491         {"matrix": [0, 2], "x": 2, "y": 0},
    492         {"matrix": [0, 3], "x": 3, "y": 0},
    493         {"matrix": [0, 4], "x": 4, "y": 0},
    494         {"matrix": [0, 5], "x": 5, "y": 0},
    495         {"matrix": [0, 6], "x": 6, "y": 0},
    496         {"matrix": [0, 7], "x": 7, "y": 0},
    497         {"matrix": [0, 8], "x": 8, "y": 0},
    498         {"matrix": [0, 9], "x": 9, "y": 0},
    499         {"matrix": [0, 10], "x": 10, "y": 0},
    500         {"matrix": [0, 11], "x": 11, "y": 0},
    501         {"matrix": [0, 12], "x": 12, "y": 0},
    502         {"matrix": [0, 13], "x": 13, "y": 0, "w": 2},
    503 
    504         {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
    505         {"matrix": [1, 1], "x": 1.5, "y": 1},
    506         {"matrix": [1, 2], "x": 2.5, "y": 1},
    507         {"matrix": [1, 3], "x": 3.5, "y": 1},
    508         {"matrix": [1, 4], "x": 4.5, "y": 1},
    509         {"matrix": [1, 5], "x": 5.5, "y": 1},
    510         {"matrix": [1, 6], "x": 6.5, "y": 1},
    511         {"matrix": [1, 7], "x": 7.5, "y": 1},
    512         {"matrix": [1, 8], "x": 8.5, "y": 1},
    513         {"matrix": [1, 9], "x": 9.5, "y": 1},
    514         {"matrix": [1, 10], "x": 10.5, "y": 1},
    515         {"matrix": [1, 11], "x": 11.5, "y": 1},
    516         {"matrix": [1, 12], "x": 12.5, "y": 1},
    517 
    518         {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
    519         {"matrix": [2, 1], "x": 1.75, "y": 2},
    520         {"matrix": [2, 2], "x": 2.75, "y": 2},
    521         {"matrix": [2, 3], "x": 3.75, "y": 2},
    522         {"matrix": [2, 4], "x": 4.75, "y": 2},
    523         {"matrix": [2, 5], "x": 5.75, "y": 2},
    524         {"matrix": [2, 6], "x": 6.75, "y": 2},
    525         {"matrix": [2, 7], "x": 7.75, "y": 2},
    526         {"matrix": [2, 8], "x": 8.75, "y": 2},
    527         {"matrix": [2, 9], "x": 9.75, "y": 2},
    528         {"matrix": [2, 10], "x": 10.75, "y": 2},
    529         {"matrix": [2, 11], "x": 11.75, "y": 2},
    530         {"matrix": [2, 12], "x": 12.75, "y": 2},
    531         {"matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
    532 
    533         {"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
    534         {"matrix": [3, 1], "x": 1.25, "y": 3},
    535         {"matrix": [3, 2], "x": 2.25, "y": 3},
    536         {"matrix": [3, 3], "x": 3.25, "y": 3},
    537         {"matrix": [3, 4], "x": 4.25, "y": 3},
    538         {"matrix": [3, 5], "x": 5.25, "y": 3},
    539         {"matrix": [3, 6], "x": 6.25, "y": 3},
    540         {"matrix": [3, 7], "x": 7.25, "y": 3},
    541         {"matrix": [3, 8], "x": 8.25, "y": 3},
    542         {"matrix": [3, 9], "x": 9.25, "y": 3},
    543         {"matrix": [3, 10], "x": 10.25, "y": 3},
    544         {"matrix": [3, 11], "x": 11.25, "y": 3},
    545         {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75},
    546         {"matrix": [3, 12], "x": 14, "y": 3},
    547 
    548         {"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
    549         {"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
    550         {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
    551         {"matrix": [4, 5], "x": 3.75, "y": 4, "w": 6.25},
    552         {"matrix": [4, 10], "x": 10, "y": 4, "w": 1.25},
    553         {"matrix": [4, 11], "x": 11.25, "y": 4, "w": 1.25},
    554         {"matrix": [4, 12], "x": 12.5, "y": 4, "w": 1.25},
    555         {"matrix": [4, 13], "x": 13.75, "y": 4, "w": 1.25}
    556       ]
    557     },
    558     "LAYOUT_60_hhkb": {
    559       "layout": [
    560         {"matrix": [0, 0], "x": 0, "y": 0},
    561         {"matrix": [0, 1], "x": 1, "y": 0},
    562         {"matrix": [0, 2], "x": 2, "y": 0},
    563         {"matrix": [0, 3], "x": 3, "y": 0},
    564         {"matrix": [0, 4], "x": 4, "y": 0},
    565         {"matrix": [0, 5], "x": 5, "y": 0},
    566         {"matrix": [0, 6], "x": 6, "y": 0},
    567         {"matrix": [0, 7], "x": 7, "y": 0},
    568         {"matrix": [0, 8], "x": 8, "y": 0},
    569         {"matrix": [0, 9], "x": 9, "y": 0},
    570         {"matrix": [0, 10], "x": 10, "y": 0},
    571         {"matrix": [0, 11], "x": 11, "y": 0},
    572         {"matrix": [0, 12], "x": 12, "y": 0},
    573         {"matrix": [0, 13], "x": 13, "y": 0},
    574         {"matrix": [4, 9], "x": 14, "y": 0},
    575 
    576         {"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
    577         {"matrix": [1, 1], "x": 1.5, "y": 1},
    578         {"matrix": [1, 2], "x": 2.5, "y": 1},
    579         {"matrix": [1, 3], "x": 3.5, "y": 1},
    580         {"matrix": [1, 4], "x": 4.5, "y": 1},
    581         {"matrix": [1, 5], "x": 5.5, "y": 1},
    582         {"matrix": [1, 6], "x": 6.5, "y": 1},
    583         {"matrix": [1, 7], "x": 7.5, "y": 1},
    584         {"matrix": [1, 8], "x": 8.5, "y": 1},
    585         {"matrix": [1, 9], "x": 9.5, "y": 1},
    586         {"matrix": [1, 10], "x": 10.5, "y": 1},
    587         {"matrix": [1, 11], "x": 11.5, "y": 1},
    588         {"matrix": [1, 12], "x": 12.5, "y": 1},
    589         {"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
    590 
    591         {"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
    592         {"matrix": [2, 1], "x": 1.75, "y": 2},
    593         {"matrix": [2, 2], "x": 2.75, "y": 2},
    594         {"matrix": [2, 3], "x": 3.75, "y": 2},
    595         {"matrix": [2, 4], "x": 4.75, "y": 2},
    596         {"matrix": [2, 5], "x": 5.75, "y": 2},
    597         {"matrix": [2, 6], "x": 6.75, "y": 2},
    598         {"matrix": [2, 7], "x": 7.75, "y": 2},
    599         {"matrix": [2, 8], "x": 8.75, "y": 2},
    600         {"matrix": [2, 9], "x": 9.75, "y": 2},
    601         {"matrix": [2, 10], "x": 10.75, "y": 2},
    602         {"matrix": [2, 11], "x": 11.75, "y": 2},
    603         {"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
    604 
    605         {"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
    606         {"matrix": [3, 2], "x": 2.25, "y": 3},
    607         {"matrix": [3, 3], "x": 3.25, "y": 3},
    608         {"matrix": [3, 4], "x": 4.25, "y": 3},
    609         {"matrix": [3, 5], "x": 5.25, "y": 3},
    610         {"matrix": [3, 6], "x": 6.25, "y": 3},
    611         {"matrix": [3, 7], "x": 7.25, "y": 3},
    612         {"matrix": [3, 8], "x": 8.25, "y": 3},
    613         {"matrix": [3, 9], "x": 9.25, "y": 3},
    614         {"matrix": [3, 10], "x": 10.25, "y": 3},
    615         {"matrix": [3, 11], "x": 11.25, "y": 3},
    616         {"matrix": [3, 13], "x": 12.25, "y": 3, "w": 1.75},
    617         {"matrix": [3, 12], "x": 14, "y": 3},
    618 
    619         {"matrix": [4, 1], "x": 1.5, "y": 4},
    620         {"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.5},
    621         {"matrix": [4, 5], "x": 4, "y": 4, "w": 7},
    622         {"matrix": [4, 11], "x": 11, "y": 4, "w": 1.5},
    623         {"matrix": [4, 12], "x": 12.5, "y": 4}
    624       ]
    625     }
    626   }
    627 }