diff options
Diffstat (limited to 'code.py')
-rw-r--r-- | code.py | 33 |
1 files changed, 21 insertions, 12 deletions
@@ -1,12 +1,15 @@ import board +from supervisor import runtime +import json +from serial_conn import Client +import oled from supervisor import runtime # Do not reload the application when the files are changed runtime.autoreload = False # Initialize the BEPO layout import kmk.handlers.stock as handlers -#from kmk.key_validators import key_seq_sleep_validator from kmk import keys keys.KC.clear() keys.KEY_GENERATORS=( @@ -18,6 +21,7 @@ keys.KEY_GENERATORS=( keys.maybe_make_no_key, ) KC=keys.KC + import kmk_frnb from kmk.kmk_keyboard import KMKKeyboard @@ -26,29 +30,34 @@ keyboard = KMKKeyboard() import layout layout.set_keyboard(keyboard) -import oled oled.main(keyboard) import json_layer def load_json(file): - with open("ff.json", "r") as ff_conf: - s = ff_conf.read() - layer = json_layer.Layer(s) - return layer + with open(file, "r") as conf: + file_data = conf.read() + key_layer = json_layer.Layer() + json_data = json.loads(file_data.strip()) + key_layer.load(json_data) + return key_layer from kmk.modules.macros import Macros from kmk.modules.mouse_keys import MouseKeys + +# Create the first layer in the keyboard. The object will be reused later when +# receiving commands from the serial connection. +layer = load_json("ff.json") + +keyboard.keymap = [ + layer +] + keyboard.modules = [ Macros(), - json_layer.JsonLayer(), + Client(), MouseKeys(), ] -firefox = load_json("ff.json") - -keyboard.keymap = [ - firefox -] if __name__ == '__main__': keyboard.go() |