64 lines
3.0 KiB
Python
64 lines
3.0 KiB
Python
import board
|
|
import digitalio
|
|
|
|
from kb import KMKKeyboard, isRight
|
|
from storage import getmount
|
|
|
|
from kmk.keys import KC
|
|
from kmk.modules.layers import Layers
|
|
from kmk.modules.split import Split, SplitSide, SplitType
|
|
|
|
keyboard = KMKKeyboard()
|
|
keyboard.tap_time = 100
|
|
|
|
layers = Layers()
|
|
|
|
split_side = SplitSide.RIGHT if isRight else SplitSide.LEFT
|
|
|
|
data_pin = board.GP1 if split_side == SplitSide.LEFT else board.GP0
|
|
data_pin2 = board.GP0 if split_side == SplitSide.LEFT else board.GP1
|
|
|
|
split = Split(
|
|
split_side=split_side,
|
|
split_type=SplitType.UART,
|
|
split_flip=False,
|
|
data_pin=data_pin,
|
|
data_pin2=data_pin2
|
|
)
|
|
keyboard.modules = [layers, split]
|
|
|
|
LOWER = KC.MO(1)
|
|
RAISE = KC.MO(2)
|
|
ADJUST = KC.LT(3, KC.SPC)
|
|
|
|
# Same as the default Corne/crkbd keymap by foostan and drashna
|
|
keyboard.keymap = [
|
|
[ #QWERTY
|
|
KC.TAB, KC.Q, KC.W, KC.E, KC.R, KC.T, KC.Y, KC.U, KC.I, KC.O, KC.P, KC.BSPC,\
|
|
KC.LCTL, KC.A, KC.S, KC.D, KC.F, KC.G, KC.H, KC.J, KC.K, KC.L, KC.SCLN, KC.QUOT,\
|
|
KC.LSFT, KC.Z, KC.X, KC.C, KC.V, KC.B, KC.N, KC.M, KC.COMM, KC.DOT, KC.SLSH, KC.RSFT,\
|
|
KC.LGUI, LOWER, ADJUST, KC.ENT, RAISE, KC.RALT,
|
|
],
|
|
[ #LOWER
|
|
KC.ESC, KC.N1, KC.N2, KC.N3, KC.N4, KC.N5, KC.N6, KC.N7, KC.N8, KC.N9, KC.N0, KC.BSPC,\
|
|
KC.LCTL, KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, KC.LEFT, KC.DOWN, KC.UP, KC.RIGHT, KC.NO, KC.NO, \
|
|
KC.LSFT, KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, \
|
|
KC.LGUI, LOWER, ADJUST, KC.ENT, RAISE, KC.RALT,
|
|
],
|
|
[ #RAISE
|
|
KC.ESC, KC.EXLM, KC.AT, KC.HASH, KC.DLR, KC.PERC, KC.CIRC, KC.AMPR, KC.ASTR, KC.LPRN, KC.RPRN, KC.BSPC,\
|
|
KC.LCTL, KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, KC.MINS, KC.EQL, KC.LCBR, KC.RCBR, KC.PIPE, KC.GRV,\
|
|
KC.LSFT, KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, KC.UNDS, KC.PLUS, KC.LBRC, KC.RBRC, KC.BSLS, KC.TILD,\
|
|
KC.LGUI, LOWER, ADJUST, KC.ENT, RAISE, KC.RALT,
|
|
],
|
|
[ #ADJUST
|
|
KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, \
|
|
KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, \
|
|
KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, KC.NO, \
|
|
KC.LGUI, LOWER, ADJUST, KC.ENT, RAISE, KC.RALT,
|
|
]
|
|
]
|
|
|
|
if __name__ == '__main__':
|
|
keyboard.go()
|