Esempio n. 1
0
import digitalio
from kmk.keys import KC
from kmk.kmk_keyboard import KMKKeyboard
from kmk.matrix import DiodeOrientation
from kmk.extensions.media_keys import MediaKeys
from kmk.modules.rotaryEncoder import encoder

keyboard = KMKKeyboard()
keyboard.extensions.append(MediaKeys())
keyboard.col_pins = (board.GP15, board.GP13, board.GP12)
keyboard.row_pins = (board.GP8, board.GP9, board.GP10, board.GP11)
keyboard.diode_orientation = DiodeOrientation.COLUMNS
keyboard.debug_enabled = True

pins = [[board.GP0, board.GP1], [board.GP2, board.GP3]]
encMap = [[[KC.VOLU, KC.VOLD], [KC.K, KC.J]],
          [[KC.MEDIA_NEXT_TRACK, KC.MEDIA_PREV_TRACK], [KC.X, KC.Z]]]
keyboard.modules.append(encoder(pins, encMap))

keyboard.keymap = [[
    KC.AUDIO_MUTE, None, KC.MEDIA_PLAY_PAUSE, KC.F13, KC.F14, KC.C, KC.D, KC.E,
    KC.F, KC.G, KC.H, KC.I
], [KC.Y, None, KC.Z, KC.L, KC.R, KC.S, KC.T, KC.U, KC.V, KC.W, KC.X, KC.J]]

# Onboard Pico LED enable
led = digitalio.DigitalInOut(board.GP25)
led.direction = digitalio.Direction.OUTPUT
led.value = True

if __name__ == "__main__":
    keyboard.go()
Esempio n. 2
0
rollover_cols_every_rows = 4
envkb.diode_orientation = DiodeOrientation.COLUMNS
envkb.debug_enabled = False

layers = Layers()
envkb.modules = [layers]

nokey = KC.NO
envkb.keymap = [
    [
        KC.F13,
        KC.F14,
        KC.F15,
        KC.F16,
        KC.F17,
        KC.F18,
        KC.F19,
        KC.F20,
        KC.F21,
        KC.F22,
        KC.F23,
        KC.F24,
    ],
]


def usbfunc():

    if __name__ == '__main__':
        led.duty_cycle = 16384
        envkb.go()
        raise Exception('Something has caused an error.')
Esempio n. 3
0
gherkin.keymap = [
    [
        KC.Q,
        KC.W,
        KC.E,
        KC.R,
        KC.T,
        KC.Y,
        KC.U,
        KC.I,
        KC.O,
        KC.P,
        KC.A,
        KC.S,
        KC.D,
        KC.F,
        KC.G,
        KC.H,
        KC.J,
        KC.K,
        KC.L,
        KC.ESC,
        KC.MT(KC.Z, KC.LCTRL),
        KC.MT(KC.X, KC.LALT),
        KC.LT(3, KC.C),
        KC.LT(4, KC.V),
        KC.LT(2, KC.BSPC),
        KC.LT(1, KC.SPC),
        KC.LT(5, KC.B),
        KC.MT(KC.N, KC.RALT),
        KC.MT(KC.M, KC.RCTRL),
        KC.MT(KC.ENT, KC.RSFT),
    ],
    [
        KC.N1,
        KC.N2,
        KC.N3,
        KC.N4,
        KC.N5,
        KC.N6,
        KC.N7,
        KC.N8,
        KC.N9,
        KC.N0,
        KC.F1,
        KC.F2,
        KC.F3,
        KC.F4,
        KC.F5,
        KC.F6,
        KC.F7,
        KC.F8,
        KC.F9,
        KC.F10,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.DEL,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
    ],
    [
        KC.EXLM,
        KC.AT,
        KC.HASH,
        KC.DLR,
        KC.PERC,
        KC.CIRC,
        KC.AMPR,
        KC.ASTR,
        KC.LPRN,
        KC.RPRN,
        KC.F11,
        KC.F12,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.GRV,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
    ],
    [
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.MINS,
        KC.EQL,
        KC.LBRC,
        KC.RBRC,
        KC.BSLS,
        KC.TAB,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.COMM,
        KC.DOT,
        KC.SLSH,
        KC.SCLN,
        KC.QUOT,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.LEFT,
        KC.DOWN,
        KC.UP,
        KC.RGHT,
    ],
    [
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.UNDS,
        KC.PLUS,
        KC.LCBR,
        KC.RCBR,
        KC.PIPE,
        KC.TAB,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.LABK,
        KC.RABK,
        KC.QUES,
        KC.COLN,
        KC.DQUO,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.HOME,
        KC.PGDN,
        KC.PGUP,
        KC.END,
    ],
    [
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
        KC.TRNS,
    ],
]
Esempio n. 4
0
keyboard = KMKKeyboard()
keyboard.col_pins = (board.GP15, board.GP13, board.GP12)
keyboard.row_pins = (board.GP8, board.GP9, board.GP10, board.GP11)
keyboard.diode_orientation = DiodeOrientation.COLUMNS
keyboard.debug_enabled = True

keyboard.enableEncoder = True
keyboard.encoders = [encoder(board.GP0, board.GP1), encoder(board.GP2, board.GP3)]
keyboard.encoders[0].encMap = [[KC.VOLU, KC.VOLD], [KC.K, KC.J]]
keyboard.encoders[1].encMap = [[KC.RIGHT, KC.LEFT], [KC.X, KC.Z]]

keyboard.enableOled = True
keyboard.oledDisp = oledDisplay.oled(board.GP21, board.GP20, "Hello World")

keyboard.keymap = [
    [KC.Y, None, KC.Z, KC.A, KC.B, KC.C, KC.D, KC.E, KC.F, KC.G, KC.H, KC.TO(1)],
    [KC.Y, None, KC.Z, KC.TO(0), KC.R, KC.S, KC.T, KC.U, KC.V, KC.W, KC.X, KC.TO(0)]
]

# Onboard Pico LED enable
led = digitalio.DigitalInOut(board.GP25)
led.direction = digitalio.Direction.OUTPUT
led.value = True

keyboard.enableSlider = True
keyboard.sliders = [slider(board.GP26), slider(board.GP27)]


if __name__ == "__main__":
    keyboard.go()
Esempio n. 5
0
keyboard.keymap = [
    # Qwerty
    # ,--------------------------------------------------------------------------------------------------------.
    # |   `  |   1  |   2  |   3  |   4  |   5  |   6  |   7  |   8  |   9  |   0  |   -  |   =  | Bksp | Del  |
    # |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------|
    # | Tab  |   Q  |   W  |   E  |   R  |   T  |   Y  |   U  |   I  |   O  |   P  |   [  |   ]  |   \  | PgUp |
    # |------+------+------+------+------+-------------+------+------+------+------+------+------+------+------|
    # | Esc  |   A  |   S  |   D  |   F  |   G  |   H  |   J  |   K  |   L  |   ;  |   '  |      |Enter | PgDn |
    # |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------|
    # | Shift|   Z  |   X  |   C  |   V  |   B  |   N  |   M  |   ,  |   .  |   /  |Shift |      |  Up  | Ins  |
    # |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------|
    # | Ctrl | GUI |  Alt  |      |      |Space |      |      |  Fn  | Alt  | Ctrl | Left |      | Down | Right|
    # `------------------------------------------------------------------------------------------+------+------'
    [
        KC.GRV,
        KC.N1,
        KC.N2,
        KC.N3,
        KC.N4,
        KC.N5,
        KC.N6,
        KC.N7,
        KC.N8,
        KC.N9,
        KC.N0,
        KC.MINS,
        KC.EQUAL,
        KC.BSPC,
        KC.DEL,
        KC.TAB,
        KC.Q,
        KC.W,
        KC.E,
        KC.R,
        KC.T,
        KC.Y,
        KC.U,
        KC.I,
        KC.O,
        KC.P,
        KC.LBRC,
        KC.RBRC,
        KC.BSLASH,
        KC.PGUP,
        KC.ESC,
        KC.A,
        KC.S,
        KC.D,
        KC.F,
        KC.G,
        KC.H,
        KC.J,
        KC.K,
        KC.L,
        KC.SCLN,
        KC.QUOT,
        XXXXXXX,
        KC.ENTER,
        KC.PGDN,
        KC.LSFT,
        KC.Z,
        KC.X,
        KC.C,
        KC.V,
        KC.B,
        KC.N,
        KC.M,
        KC.COMM,
        KC.DOT,
        KC.SLSH,
        KC.RSFT,
        XXXXXXX,
        KC.UP,
        KC.INS,
        KC.LCTL,
        KC.LGUI,
        KC.LALT,
        XXXXXXX,
        XXXXXXX,
        KC.SPC,
        XXXXXXX,
        XXXXXXX,
        FN,
        KC.RALT,
        KC.RCTL,
        KC.LEFT,
        XXXXXXX,
        KC.DOWN,
        KC.RIGHT,
    ],

    # Functions
    # ,--------------------------------------------------------------------------------------------------------.
    # |      |  F1  |  F2  |  F3  |  F4  |  F5  |  F6  |  F7  |  F8  |  F9  |  F10 |  F11 |  F12 |      | CLR* |
    # |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------|
    # | Tab  |      |      |      |      |      |      |      |      |Print |      |Pause | Calc |      | BrUp |
    # |------+------+------+------+------+-------------+------+------+------+------+------+------+------+------|
    # | Esc  |      |      |      |      |      |      |      |      |      |      |      |      |      | BrDn |
    # |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------|
    # | Shift|      | Play | Stop | Prev | Next | VolDn| VolUp| Mute |      |      |Shift |      |LedUp |      |
    # |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------|
    # | Ctrl | GUI |  Alt  |      |      |Space |      |      |  Fn  | Alt  | Ctrl | BTPrv|      |LedDn | BTNxt|
    # `------------------------------------------------------------------------------------------+------+------'
    # CLR: Clear bonds
    [
        XXXXXXX,
        KC.F1,
        KC.F2,
        KC.F3,
        KC.F4,
        KC.F5,
        KC.F6,
        KC.F7,
        KC.F8,
        KC.F9,
        KC.F10,
        KC.F11,
        KC.F12,
        XXXXXXX,
        KC.BT_CLR,
        KC.TAB,
        XXXXXXX,
        XXXXXXX,
        XXXXXXX,
        XXXXXXX,
        XXXXXXX,
        XXXXXXX,
        XXXXXXX,
        XXXXXXX,
        KC.PSCR,
        XXXXXXX,
        KC.PAUSE,
        _______,
        XXXXXXX,
        _______,
        KC.ESC,
        XXXXXXX,
        XXXXXXX,
        XXXXXXX,
        XXXXXXX,
        XXXXXXX,
        XXXXXXX,
        XXXXXXX,
        XXXXXXX,
        XXXXXXX,
        XXXXXXX,
        XXXXXXX,
        XXXXXXX,
        XXXXXXX,
        _______,
        KC.LSFT,
        XXXXXXX,
        KC.MPLY,
        KC.MSTP,
        KC.MPRV,
        KC.MNXT,
        KC.VOLD,
        KC.VOLU,
        KC.MUTE,
        XXXXXXX,
        XXXXXXX,
        KC.RSFT,
        XXXXXXX,
        _______,
        XXXXXXX,
        KC.LCTL,
        KC.LGUI,
        KC.LALT,
        XXXXXXX,
        XXXXXXX,
        KC.SPC,
        XXXXXXX,
        XXXXXXX,
        FN,
        KC.RALT,
        KC.RCTL,
        KC.BT_PRV,
        XXXXXXX,
        _______,
        KC.BT_NXT,
    ],
]
Esempio n. 6
0
        animation_mode=AnimationModes.STATIC,
        reverse_animation=False,
        )
keyboard.extensions.append(rgb_ext)


envkb.keymap = [
    [
    #Layer 0?
        KC.ESC, nokey, KC.F1, KC.F2, KC.F3, KC.F4, nokey, KC.F5, KC.F6, KC.F7, KC.F8, KC.F9, KC.F10, KC.F11, KC.F12, KC.PSCREEN, KC.SCROLLLOCK, KC.PAUSE,
        KC.GRAVE, KC.N1, KC.N2, KC.N3, KC.N4, KC.N5, KC.N6, KC.N7, KC.N8, KC.N9, KC.N0, KC.MINUS, KC.EQUAL, nokey, KC.BSPC, KC.INS, KC.HOME, KC.PGUP,
        KC.TAB, nokey, KC.Q, KC.W, KC.E, KC.R, KC.T, KC.Y, KC.U, KC.I, KC.O, KC.P, KC.LBRC, KC.RBRC, KC.BSLS, KC.DEL, KC.END, KC.PGDN,
        KC.CAPS, nokey, KC.A, KC.S, KC.D, KC.F, KC.G, KC.H, KC.J, KC.K, KC.L, KC.SCLN, KC.QUOT, KC.NUHS, KC.ENT, nokey, nokey, nokey,
        KC.LSFT, KC.NONUS_BSLASH, KC.Z, KC.X, KC.C, KC.V, KC.B, KC.N, KC.M, KC.COMM, KC.DOT, KC.SLSH, nokey, KC.RSHIFT, nokey, nokey, KC.UP, nokey,
        KC.LCTL, KC.LGUI, nokey, KC.LALT, nokey, nokey, KC.SPC, nokey,nokey, nokey, KC.RALT, KC.RGUI, nokey, KC.MO(1), KC.RCTRL, KC.LEFT, KC.DOWN, KC.RIGHT,
    ],
    [
    #Layer 1
        KC.TRNS, nokey, KC.F13, KC.F14, KC.F15, KC.F16, nokey, KC.F17, KC.F18, KC.F19, KC.F20, KC.F21, KC.F22, KC.F23, KC.F24, KC.MUTE, KC.VOLD, KC.VOLU,
        KC.RGB_TOG, KC.RGB_HUI, KC.RGB_HUD, KC.RGB_SAI, KC.RGB_SAD, KC.RGB_VAI, KC.RGB_VAD, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, nokey, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS,
        KC.TRNS, nokey, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS,
        KC.TRNS, nokey, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, nokey, nokey, nokey, nokey,
        KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, nokey, KC.TRNS, nokey, nokey, KC.TRNS, nokey,
        KC.TRNS, KC.TRNS, nokey, KC.TRNS, nokey, nokey, KC.TRNS, nokey, nokey, nokey, KC.TRNS, KC.TRNS, nokey, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS,
    ],
]

#Simple thing to enable LED on pi once this script is executed
import digitalio
led = digitalio.DigitalInOut(board.GP25)
led.direction = digitalio.Direction.OUTPUT
led.value = True
Esempio n. 7
0
keyboard.keymap = [
    [
        # default
        KC.GESC, KC.QUOTE, KC.COMMA, KC.DOT, KC.P, KC.Y, KC.F, KC.G, KC.C, KC.R, KC.L, KC.BKSP,
        KC.TAB, KC.A, KC.O, KC.E, KC.U, KC.I, KC.D, KC.H, KC.T, KC.N, KC.S, KC.ENT,
        KC.LSFT, KC.SCLN, KC.Q, KC.J, KC.K, KC.X, KC.B, KC.M, KC.W, KC.V, KC.Z, KC.SLSH,
        KC.LCTRL, KC.LGUI, KC.LALT, KC.LEAD, KC.MO(2), KC.LT(3, KC.SPC), KC.LT(3, KC.SPC), KC.MO(4), KC.LEFT, KC.DOWN, KC.UP, KC.RIGHT,
    ],
    [
        # Gaming
        KC.TAB, KC.QUOT, KC.COMM, KC.DOT, KC.P, KC.Y, KC.F, KC.G, KC.C, KC.R, KC.L, KC.BKSP,
        KC.ESC, KC.A, KC.O, KC.E, KC.U, KC.I, KC.D, KC.H, KC.T, KC.N, KC.S, KC.ENT,
        KC.LSFT, KC.SCLN, KC.Q, KC.J, KC.K, KC.X, KC.B, KC.M, KC.W, KC.V, KC.Z, KC.SLSH,
        KC.LCTRL, KC.LGUI, KC.LALT, KC.F1, KC.F2, KC.SPC, KC.SPC, KC.MO(4), KC.LEFT, KC.DOWN, KC.UP, KC.RIGHT,
    ],
    [
        # Raise1
        KC.TILD, KC.EXLM, KC.AT, KC.HASH, KC.DLR, KC.PERC, KC.CIRC, KC.AMPR, KC.ASTR, KC.LPRN, KC.RPRN, KC.DEL,
        KC.TRNS, KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, KC.LBRC, KC.RBRC, KC.BSLS,
        KC.TRNS, KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, KC.INS, KC.PGDN, KC.PGUP, KC.MINS,
        KC.RESET, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.NO, KC.NO, KC.EQL, KC.HOME, KC.VOLD, KC.VOLU, KC.END,
    ],
    [
        # Raise2
        KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.N7, KC.N8, KC.N9, KC.BKSP,
        KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.N4, KC.N5, KC.N6, KC.NO,
        KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.N1, KC.N2, KC.N3, KC.NO,
        KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.N0, KC.N0, KC.PDOT, KC.ENT,
    ],
    [
        # Raise3
        WPM, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.F10, KC.F11, KC.F12, KC.LSHIFT(KC.INS),
        KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.F7, KC.F8, KC.F9, KC.NO,
        KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.F4, KC.F5, KC.F6, KC.NO,
        KC.DF(0), KC.DF(1), KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.F1, KC.F2, KC.F3, KC.NO,
    ],
]
Esempio n. 8
0
keyboard.keymap = [
    [
        KC.GESC,
        KC.W,
        KC.E,
        KC.R,
        KC.T,
        KC.Y,
        KC.U,
        KC.I,
        KC.O,
        KC.P,
        KC.A,
        KC.S,
        KC.D,
        KC.F,
        KC.G,
        KC.H,
        KC.J,
        KC.K,
        KC.L,
        KC.ESC,
        KC.Z,
        KC.X,
        KC.C,
        KC.V,
        KC.BSPC,
        KC.SPC,
        KC.B,
        KC.N,
        KC.M,
        KC.ENT,
    ],
]
Esempio n. 9
0
qt_strg = send_string("quit()")

redox_l.keymap = [
    # Qwerty
    #     ,------------------------------------------------.               ,------------------------------------------------. 
    #     |  esc |   1  |   2  |   3  |   4  |   5  |delete|               |delete|   6  |   7  |   8  |   9  |   0  |  fn  |
    #     |------+------+------+------+------+------+------|               |------+------+------+------+------+------+------|
    #     | tab  |   Q  |   W  |   E  |   R  |   T  |  esc |               | rclck|   Y  |   U  |   I  |   O  |   P  |bckspc|
    #     |------+------+------+------+------+-------------|               |------+------+------+------+------+-------------|
    #     | ctrl |   A  |   S  |   D  |   F  |   G  |  {[  |               | -_   |   H  |   J  |   K  |   L  |   :  |  \|  |
    #     |------+------+------+------+------+------|------|               |------+------+------+------+------+------|------|
    #     | Shift|   Z  |   X  |   C  |   V  |   B  |  }]  |               | +=   |   N  |   M  |  ,<  |  .>  |  ?/  |Shift |
    #     |------+------+------+------+------+------+------|               |------+------+------+------+------+------+------|
    #     | caps |  gui |  alt |tilde |space |bacspc|play  |               | ctrl |  gui |Space |arrowL|arrowD|arrowU|arrowR|
    #     `------------------------------------------------'               `------------------------------------------------'
    [
        KC.ESC,   KC.N1,   KC.N2,   KC.N3,   KC.N4,           KC.N5,   KC.DEL,             KC.N6,         KC.N7,    KC.N8,    KC.N9,    KC.N0,   KC.MINS,  KC.BSPC,
        KC.TAB,   KC.Q,    KC.W,    KC.E,    KC.R,            KC.T,    KC.LALT(KC.A),      KC.LALT(KC.V), KC.Y,     KC.U,     KC.I,     KC.O,    KC.P,     KC.BSLS,
        KC.LCTL,  KC.A,    KC.S,    KC.D,    KC.F,            KC.G,    KC.LBRC,            KC.QUOT,       KC.H,     KC.J,     KC.K,     KC.L,    KC.SCLN,  KC.ENT,
        KC.LSFT,  KC.Z,    KC.X,    KC.C,    KC.V,            KC.B,    KC.RBRC,            KC.EQL,        KC.N,     KC.M,     KC.COMM,  KC.DOT,  KC.SLSH,  KC.MO(1),
        KC.CAPS,  KC.LALT, KC.GRV,  KC.MNU,  KC.LALT(KC.TAB), KC.SPC,  qt_strg,            KC.ENT,        KC.SPC,   KC.RGUI,  KC.LEFT,  KC.DOWN, KC.UP,    KC.RGHT,
    ],
    [
        KC.TRNS,  KC.F1,   KC.F2,   KC.F3,   KC.F4,   KC.F5,   KC.F12,       KC.F6,     KC.F7,    KC.F8,   KC.F9,    KC.F10,  KC.F11,   KC.TRNS,
        KC.TRNS,  KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS,      KC.TRNS,   KC.TRNS,  KC.TRNS, KC.TRNS,  KC.TRNS, KC.TRNS,  KC.TRNS,
        KC.TRNS,  KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS,      KC.TRNS,   KC.TRNS,  KC.TRNS, KC.TRNS,  KC.TRNS, KC.TRNS,  KC.TRNS,
        KC.TRNS,  KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS,      KC.TRNS,   KC.TRNS,  KC.TRNS, KC.TRNS,  KC.TRNS, KC.TRNS,  KC.MO(0),
        KC.TRNS,  KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS, KC.TRNS,      KC.TRNS,   KC.TRNS,  KC.TRNS, KC.TRNS,  KC.TRNS, KC.TRNS,  KC.TRNS,
    ],
]

if __name__ == '__main__':