diff options
Diffstat (limited to 'quantum/quantum.h')
-rw-r--r-- | quantum/quantum.h | 44 |
1 files changed, 30 insertions, 14 deletions
diff --git a/quantum/quantum.h b/quantum/quantum.h index f4d8f09d4..d4da77289 100644 --- a/quantum/quantum.h +++ b/quantum/quantum.h | |||
@@ -13,9 +13,12 @@ | |||
13 | #include "audio.h" | 13 | #include "audio.h" |
14 | #endif | 14 | #endif |
15 | #ifdef MIDI_ENABLE | 15 | #ifdef MIDI_ENABLE |
16 | // #include <keymap_midi.h> | ||
17 | #include <lufa.h> | 16 | #include <lufa.h> |
18 | #endif | 17 | #endif |
18 | #ifdef UNICODE_ENABLE | ||
19 | #include "unicode.h" | ||
20 | #endif | ||
21 | |||
19 | #include "action_layer.h" | 22 | #include "action_layer.h" |
20 | #include "eeconfig.h" | 23 | #include "eeconfig.h" |
21 | #include <stddef.h> | 24 | #include <stddef.h> |
@@ -27,24 +30,37 @@ extern uint32_t default_layer_state; | |||
27 | extern uint32_t layer_state; | 30 | extern uint32_t layer_state; |
28 | #endif | 31 | #endif |
29 | 32 | ||
30 | bool music_activated; | 33 | #ifdef AUDIO_ENABLE |
34 | bool music_activated; | ||
35 | #endif | ||
31 | 36 | ||
32 | void matrix_init_kb(void); | 37 | #ifdef UNICODE_ENABLE |
33 | void matrix_scan_kb(void); | 38 | #define UC_OSX 0 |
34 | bool process_action_kb(keyrecord_t *record); | 39 | #define UC_LNX 1 |
40 | #define UC_WIN 2 | ||
41 | #define UC_BSD 3 | ||
35 | 42 | ||
36 | void leader_start(void); | 43 | void set_unicode_input_mode(uint8_t os_target); |
37 | void leader_end(void); | 44 | #endif |
45 | |||
46 | #ifndef DISABLE_LEADER | ||
47 | void leader_start(void); | ||
48 | void leader_end(void); | ||
49 | |||
50 | #ifndef LEADER_TIMEOUT | ||
51 | #define LEADER_TIMEOUT 200 | ||
52 | #endif | ||
53 | #define SEQ_ONE_KEY(key) if (leader_sequence[0] == (key) && leader_sequence[1] == 0 && leader_sequence[2] == 0) | ||
54 | #define SEQ_TWO_KEYS(key1, key2) if (leader_sequence[0] == (key1) && leader_sequence[1] == (key2) && leader_sequence[2] == 0) | ||
55 | #define SEQ_THREE_KEYS(key1, key2, key3) if (leader_sequence[0] == (key1) && leader_sequence[1] == (key2) && leader_sequence[2] == (key3)) | ||
38 | 56 | ||
39 | #ifndef LEADER_TIMEOUT | 57 | #define LEADER_EXTERNS() extern bool leading; extern uint16_t leader_time; extern uint16_t leader_sequence[3]; extern uint8_t leader_sequence_size |
40 | #define LEADER_TIMEOUT 200 | 58 | #define LEADER_DICTIONARY() if (leading && timer_elapsed(leader_time) > LEADER_TIMEOUT) |
41 | #endif | 59 | #endif |
42 | #define SEQ_ONE_KEY(key) if (leader_sequence[0] == (key) && leader_sequence[1] == 0 && leader_sequence[2] == 0) | ||
43 | #define SEQ_TWO_KEYS(key1, key2) if (leader_sequence[0] == (key1) && leader_sequence[1] == (key2) && leader_sequence[2] == 0) | ||
44 | #define SEQ_THREE_KEYS(key1, key2, key3) if (leader_sequence[0] == (key1) && leader_sequence[1] == (key2) && leader_sequence[2] == (key3)) | ||
45 | 60 | ||
46 | #define LEADER_EXTERNS() extern bool leading; extern uint16_t leader_time; extern uint16_t leader_sequence[3]; extern uint8_t leader_sequence_size | 61 | void matrix_init_kb(void); |
47 | #define LEADER_DICTIONARY() if (leading && timer_elapsed(leader_time) > LEADER_TIMEOUT) | 62 | void matrix_scan_kb(void); |
63 | bool process_action_kb(keyrecord_t *record); | ||
48 | 64 | ||
49 | bool is_music_on(void); | 65 | bool is_music_on(void); |
50 | void music_toggle(void); | 66 | void music_toggle(void); |