diff options
author | skullY <skullydazed@gmail.com> | 2019-08-30 11:19:03 -0700 |
---|---|---|
committer | Florian Didron <fdidron@users.noreply.github.com> | 2019-09-17 11:39:43 +0900 |
commit | f8fe33acfac01064112fd2b5da680abfb5190b97 (patch) | |
tree | fcf75ef930800a948e5a3ba015d6759889f2284d /quantum/process_keycode/process_steno.c | |
parent | c339d670684674165b422a0168bfd2016ff2e6ef (diff) |
clang-format changes
Diffstat (limited to 'quantum/process_keycode/process_steno.c')
-rw-r--r-- | quantum/process_keycode/process_steno.c | 208 |
1 files changed, 97 insertions, 111 deletions
diff --git a/quantum/process_keycode/process_steno.c b/quantum/process_keycode/process_steno.c index 50a1ef2fcf..e0b33ec861 100644 --- a/quantum/process_keycode/process_steno.c +++ b/quantum/process_keycode/process_steno.c @@ -58,150 +58,136 @@ #define GEMINI_STATE_SIZE 6 #define MAX_STATE_SIZE GEMINI_STATE_SIZE -static uint8_t state[MAX_STATE_SIZE] = {0}; -static uint8_t chord[MAX_STATE_SIZE] = {0}; -static int8_t pressed = 0; +static uint8_t state[MAX_STATE_SIZE] = {0}; +static uint8_t chord[MAX_STATE_SIZE] = {0}; +static int8_t pressed = 0; static steno_mode_t mode; -static const uint8_t boltmap[64] PROGMEM = { - TXB_NUL, TXB_NUM, TXB_NUM, TXB_NUM, TXB_NUM, TXB_NUM, TXB_NUM, - TXB_S_L, TXB_S_L, TXB_T_L, TXB_K_L, TXB_P_L, TXB_W_L, TXB_H_L, - TXB_R_L, TXB_A_L, TXB_O_L, TXB_STR, TXB_STR, TXB_NUL, TXB_NUL, - TXB_NUL, TXB_STR, TXB_STR, TXB_E_R, TXB_U_R, TXB_F_R, TXB_R_R, - TXB_P_R, TXB_B_R, TXB_L_R, TXB_G_R, TXB_T_R, TXB_S_R, TXB_D_R, - TXB_NUM, TXB_NUM, TXB_NUM, TXB_NUM, TXB_NUM, TXB_NUM, TXB_Z_R -}; +static const uint8_t boltmap[64] PROGMEM = {TXB_NUL, TXB_NUM, TXB_NUM, TXB_NUM, TXB_NUM, TXB_NUM, TXB_NUM, TXB_S_L, TXB_S_L, TXB_T_L, TXB_K_L, TXB_P_L, TXB_W_L, TXB_H_L, TXB_R_L, TXB_A_L, TXB_O_L, TXB_STR, TXB_STR, TXB_NUL, TXB_NUL, TXB_NUL, TXB_STR, TXB_STR, TXB_E_R, TXB_U_R, TXB_F_R, TXB_R_R, TXB_P_R, TXB_B_R, TXB_L_R, TXB_G_R, TXB_T_R, TXB_S_R, TXB_D_R, TXB_NUM, TXB_NUM, TXB_NUM, TXB_NUM, TXB_NUM, TXB_NUM, TXB_Z_R}; static void steno_clear_state(void) { - memset(state, 0, sizeof(state)); - memset(chord, 0, sizeof(chord)); + memset(state, 0, sizeof(state)); + memset(chord, 0, sizeof(chord)); } static void send_steno_state(uint8_t size, bool send_empty) { - for (uint8_t i = 0; i < size; ++i) { - if (chord[i] || send_empty) { - virtser_send(chord[i]); + for (uint8_t i = 0; i < size; ++i) { + if (chord[i] || send_empty) { + virtser_send(chord[i]); + } } - } } void steno_init() { - if (!eeconfig_is_enabled()) { - eeconfig_init(); - } - mode = eeprom_read_byte(EECONFIG_STENOMODE); + if (!eeconfig_is_enabled()) { + eeconfig_init(); + } + mode = eeprom_read_byte(EECONFIG_STENOMODE); } void steno_set_mode(steno_mode_t new_mode) { - steno_clear_state(); - mode = new_mode; - eeprom_update_byte(EECONFIG_STENOMODE, mode); + steno_clear_state(); + mode = new_mode; + eeprom_update_byte(EECONFIG_STENOMODE, mode); } /* override to intercept chords right before they get sent. * return zero to suppress normal sending behavior. */ -__attribute__ ((weak)) -bool send_steno_chord_user(steno_mode_t mode, uint8_t chord[6]) { return true; } +__attribute__((weak)) bool send_steno_chord_user(steno_mode_t mode, uint8_t chord[6]) { return true; } -__attribute__ ((weak)) -bool postprocess_steno_user(uint16_t keycode, keyrecord_t *record, steno_mode_t mode, uint8_t chord[6], int8_t pressed) { return true; } +__attribute__((weak)) bool postprocess_steno_user(uint16_t keycode, keyrecord_t *record, steno_mode_t mode, uint8_t chord[6], int8_t pressed) { return true; } -__attribute__ ((weak)) -bool process_steno_user(uint16_t keycode, keyrecord_t *record) { return true; } +__attribute__((weak)) bool process_steno_user(uint16_t keycode, keyrecord_t *record) { return true; } static void send_steno_chord(void) { - if (send_steno_chord_user(mode, chord)) { - switch(mode) { - case STENO_MODE_BOLT: - send_steno_state(BOLT_STATE_SIZE, false); - virtser_send(0); // terminating byte - break; - case STENO_MODE_GEMINI: - chord[0] |= 0x80; // Indicate start of packet - send_steno_state(GEMINI_STATE_SIZE, true); - break; + if (send_steno_chord_user(mode, chord)) { + switch (mode) { + case STENO_MODE_BOLT: + send_steno_state(BOLT_STATE_SIZE, false); + virtser_send(0); // terminating byte + break; + case STENO_MODE_GEMINI: + chord[0] |= 0x80; // Indicate start of packet + send_steno_state(GEMINI_STATE_SIZE, true); + break; + } } - } - steno_clear_state(); + steno_clear_state(); } -uint8_t *steno_get_state(void) { - return &state[0]; -} +uint8_t *steno_get_state(void) { return &state[0]; } -uint8_t *steno_get_chord(void) { - return &chord[0]; -} +uint8_t *steno_get_chord(void) { return &chord[0]; } static bool update_state_bolt(uint8_t key, bool press) { - uint8_t boltcode = pgm_read_byte(boltmap + key); - if (press) { - state[TXB_GET_GROUP(boltcode)] |= boltcode; - chord[TXB_GET_GROUP(boltcode)] |= boltcode; - } else { - state[TXB_GET_GROUP(boltcode)] &= ~boltcode; - } - return false; + uint8_t boltcode = pgm_read_byte(boltmap + key); + if (press) { + state[TXB_GET_GROUP(boltcode)] |= boltcode; + chord[TXB_GET_GROUP(boltcode)] |= boltcode; + } else { + state[TXB_GET_GROUP(boltcode)] &= ~boltcode; + } + return false; } static bool update_state_gemini(uint8_t key, bool press) { - int idx = key / 7; - uint8_t bit = 1 << (6 - (key % 7)); - if (press) { - state[idx] |= bit; - chord[idx] |= bit; - } else { - state[idx] &= ~bit; - } - return false; + int idx = key / 7; + uint8_t bit = 1 << (6 - (key % 7)); + if (press) { + state[idx] |= bit; + chord[idx] |= bit; + } else { + state[idx] &= ~bit; + } + return false; } bool process_steno(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - case QK_STENO_BOLT: - if (!process_steno_user(keycode, record)) { - return false; - } - if (IS_PRESSED(record->event)) { - steno_set_mode(STENO_MODE_BOLT); - } - return false; - - case QK_STENO_GEMINI: - if (!process_steno_user(keycode, record)) { - return false; - } - if (IS_PRESSED(record->event)) { - steno_set_mode(STENO_MODE_GEMINI); - } - return false; - - case STN__MIN...STN__MAX: - if (!process_steno_user(keycode, record)) { - return false; - } - switch(mode) { - case STENO_MODE_BOLT: - update_state_bolt(keycode - QK_STENO, IS_PRESSED(record->event)); - break; - case STENO_MODE_GEMINI: - update_state_gemini(keycode - QK_STENO, IS_PRESSED(record->event)); - break; - } - // allow postprocessing hooks - if (postprocess_steno_user(keycode, record, mode, chord, pressed)) { - if (IS_PRESSED(record->event)) { - ++pressed; - } else { - --pressed; - if (pressed <= 0) { - pressed = 0; - send_steno_chord(); - } - } - } - return false; - } - return true; + switch (keycode) { + case QK_STENO_BOLT: + if (!process_steno_user(keycode, record)) { + return false; + } + if (IS_PRESSED(record->event)) { + steno_set_mode(STENO_MODE_BOLT); + } + return false; + + case QK_STENO_GEMINI: + if (!process_steno_user(keycode, record)) { + return false; + } + if (IS_PRESSED(record->event)) { + steno_set_mode(STENO_MODE_GEMINI); + } + return false; + + case STN__MIN ... STN__MAX: + if (!process_steno_user(keycode, record)) { + return false; + } + switch (mode) { + case STENO_MODE_BOLT: + update_state_bolt(keycode - QK_STENO, IS_PRESSED(record->event)); + break; + case STENO_MODE_GEMINI: + update_state_gemini(keycode - QK_STENO, IS_PRESSED(record->event)); + break; + } + // allow postprocessing hooks + if (postprocess_steno_user(keycode, record, mode, chord, pressed)) { + if (IS_PRESSED(record->event)) { + ++pressed; + } else { + --pressed; + if (pressed <= 0) { + pressed = 0; + send_steno_chord(); + } + } + } + return false; + } + return true; } |