3 #if TAP_DANCE_ENABLE != yes
4 static uint16_t time_on_pressed;
7 * Each process_record_* methods defined here are
8 * return false if handle edvorak_keycodes, or return true others.
10 bool process_record_edvorakjp_swap_scln(uint16_t keycode, keyrecord_t *record) {
12 static const uint8_t shift_bits = MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT);
13 static uint8_t last_mods_status;
14 if (keycode == KC_SCLN) {
15 if (record->event.pressed) {
16 last_mods_status = get_mods();
19 if (last_mods_status & shift_bits) {
20 set_mods(last_mods_status & ~shift_bits);
22 set_mods(last_mods_status | MOD_BIT(KC_LSFT));
25 set_mods(last_mods_status);
33 bool process_record_edvorakjp_config(uint16_t keycode, keyrecord_t *record) {
37 if (record->event.pressed) {
38 set_enable_kc_lang(keycode == KC_MAC);
45 bool process_record_layer(uint16_t keycode, keyrecord_t *record) {
46 #if TAP_DANCE_ENABLE != yes
49 if (record->event.pressed) {
51 time_on_pressed = record->event.time;
55 if (TIMER_DIFF_16(record->event.time, time_on_pressed) < TAPPING_TERM) {
56 set_japanese_mode(false);
62 if (record->event.pressed) {
64 time_on_pressed = record->event.time;
68 if (TIMER_DIFF_16(record->event.time, time_on_pressed) < TAPPING_TERM) {
69 set_japanese_mode(true);
79 bool process_record_ime(uint16_t keycode, keyrecord_t *record) {
83 if (record->event.pressed) {
84 set_japanese_mode(keycode == KC_JPN);