diff options
| author | Sébastien Dailly <sebastien@dailly.me> | 2026-10-16 14:05:33 +0200 |
|---|---|---|
| committer | Sébastien Dailly <sebastien@dailly.me> | 2026-10-16 14:05:33 +0200 |
| commit | bcde30ff9e322278ebeb316bfa34af0328680bcf (patch) | |
| tree | e5b3192461f64fb998173feaf2511f3ae0c37fb0 /json_layer.py | |
| parent | f421547316803b545c678a8610954b1b14339b9d (diff) | |
pylint review + ergol key mappingmain
Diffstat (limited to 'json_layer.py')
| -rw-r--r-- | json_layer.py | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/json_layer.py b/json_layer.py index 9e98fc3..acc78d7 100644 --- a/json_layer.py +++ b/json_layer.py @@ -24,6 +24,7 @@ from kmk.modules.macros import Delay, Macros, Tap # I do not define it yet, only declare it. operators = {} + def key_of_json(element, inside=False): """ Create the key from the key name. The value can be either a string or a list. If the parameter is a @@ -39,7 +40,7 @@ def key_of_json(element, inside=False): key = key_of_json(hd) if len(tl) != 0: # Chainable key / recursive function - return key( key_of_json(tl) ) + return key(key_of_json(tl)) else: return key if isinstance(element, dict): @@ -47,6 +48,7 @@ def key_of_json(element, inside=False): return operators[key](value) return + def encode_macro(element): """ Encode the result of the function key_of_json in order to build a macro of this @@ -58,6 +60,7 @@ def encode_macro(element): return Tap(key) return key + def sequence(element): """ Convert a list of keys into a sequence of them. """ @@ -66,20 +69,24 @@ def sequence(element): # Send the list as arguments to the function return KC.MACRO(*seq) + def no_release(element): key = key_of_json(element) return key(no_release=True) + def no_press(element): key = key_of_json(element) return key(no_press=True) + # Now I can define the dictionnary -operators["key"] = key_of_json -operators["chain"] = key_of_json -operators["seq"] = sequence +operators["key"] = key_of_json +operators["chain"] = key_of_json +operators["seq"] = sequence operators["no_release"] = no_release -operators["no_press"] = no_press +operators["no_press"] = no_press + class Layer(object): """ Layer as an object. |
