M common_features.mk => common_features.mk +1 -1
@@ 61,7 61,7 @@ endif
ifeq ($(strip $(STENO_ENABLE)), yes)
OPT_DEFS += -DSTENO_ENABLE
- VIRTSER_ENABLE := yes
+ VIRTSER_ENABLE ?= yes
SRC += $(QUANTUM_DIR)/process_keycode/process_steno.c
endif
M quantum/process_keycode/process_steno.c => quantum/process_keycode/process_steno.c +4 -0
@@ 73,7 73,9 @@ static void steno_clear_state(void) {
static void send_steno_state(uint8_t size, bool send_empty) {
for (uint8_t i = 0; i < size; ++i) {
if (chord[i] || send_empty) {
+#ifdef VIRTSER_ENABLE
virtser_send(chord[i]);
+#endif
}
}
}
@@ 105,7 107,9 @@ static void send_steno_chord(void) {
switch (mode) {
case STENO_MODE_BOLT:
send_steno_state(BOLT_STATE_SIZE, false);
+#ifdef VIRTSER_ENABLE
virtser_send(0); // terminating byte
+#endif
break;
case STENO_MODE_GEMINI:
chord[0] |= 0x80; // Indicate start of packet
M quantum/process_keycode/process_steno.h => quantum/process_keycode/process_steno.h +0 -4
@@ 18,10 18,6 @@
#include "quantum.h"
-#if defined(STENO_ENABLE) && !defined(VIRTSER_ENABLE)
-# error "must have virtser enabled to use steno"
-#endif
-
typedef enum { STENO_MODE_BOLT, STENO_MODE_GEMINI } steno_mode_t;
bool process_steno(uint16_t keycode, keyrecord_t *record);