Handle macros more consistently: make them a proper internal keycode-style object and not a weird one-off. Fixes sanity_checker on my keymaps.
This commit is contained in:
@@ -1,10 +0,0 @@
|
||||
class KMKMacro:
|
||||
def __init__(self, keydown=None, keyup=None):
|
||||
self.keydown = keydown
|
||||
self.keyup = keyup
|
||||
|
||||
def on_keydown(self):
|
||||
return self.keydown() if self.keydown else None
|
||||
|
||||
def on_keyup(self):
|
||||
return self.keyup() if self.keyup else None
|
||||
|
@@ -2,8 +2,7 @@ import string
|
||||
|
||||
from kmk.common.event_defs import (hid_report_event, keycode_down_event,
|
||||
keycode_up_event)
|
||||
from kmk.common.keycodes import Keycodes, RawKeycodes, char_lookup
|
||||
from kmk.common.macros import KMKMacro
|
||||
from kmk.common.keycodes import Keycodes, Macro, RawKeycodes, char_lookup
|
||||
from kmk.common.util import sleep_ms
|
||||
|
||||
|
||||
@@ -22,7 +21,7 @@ def simple_key_sequence(seq):
|
||||
yield keycode_up_event(key)
|
||||
yield hid_report_event()
|
||||
|
||||
return KMKMacro(keydown=_simple_key_sequence)
|
||||
return Macro(keydown=_simple_key_sequence)
|
||||
|
||||
|
||||
def send_string(message):
|
||||
|
@@ -1,8 +1,7 @@
|
||||
from kmk.common.consts import UnicodeModes
|
||||
from kmk.common.event_defs import (hid_report_event, keycode_down_event,
|
||||
keycode_up_event)
|
||||
from kmk.common.keycodes import Common, Modifiers
|
||||
from kmk.common.macros import KMKMacro
|
||||
from kmk.common.keycodes import Common, Macro, Modifiers
|
||||
from kmk.common.macros.simple import simple_key_sequence
|
||||
|
||||
IBUS_KEY_COMBO = Modifiers.KC_LCTRL(Modifiers.KC_LSHIFT(Common.KC_U))
|
||||
@@ -34,7 +33,7 @@ def unicode_sequence(codepoints):
|
||||
elif state.unicode_mode == UnicodeModes.WINC:
|
||||
yield from _winc_unicode_sequence(codepoints, state)
|
||||
|
||||
return KMKMacro(keydown=_unicode_sequence)
|
||||
return Macro(keydown=_unicode_sequence)
|
||||
|
||||
|
||||
def _ralt_unicode_sequence(codepoints, state):
|
||||
|
Reference in New Issue
Block a user