diff options
| author | Jack Humbert <jack.humb@gmail.com> | 2017-09-12 00:43:10 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2017-09-12 00:43:10 -0400 |
| commit | 7ad924bae5519e981c57495e481db62741aa4376 (patch) | |
| tree | e07575ee363f68b70579cda8e54eebcbd55d4127 /quantum/quantum.h | |
| parent | a4ff8b91f74df9fb1d87f52c0ded23935344d2eb (diff) | |
| download | qmk_firmware-7ad924bae5519e981c57495e481db62741aa4376.tar.gz qmk_firmware-7ad924bae5519e981c57495e481db62741aa4376.zip | |
Updates send_string functionality, adds terminal feature (#1657)
* implement basic terminal stuff
* modify send_string to read normal strings too
* add files bc yeah. working pgm detected
* pgm detection apparently not working
* adds send string keycodes, additional keycode support in send string
* implement arguments
* [terminal] add help command
* [terminal] adds keycode and keymap functions
* [terminal] adds nop.h, documentation
* update macro docs
Diffstat (limited to 'quantum/quantum.h')
| -rw-r--r-- | quantum/quantum.h | 25 |
1 files changed, 23 insertions, 2 deletions
diff --git a/quantum/quantum.h b/quantum/quantum.h index 9a6d691a1..f3333a002 100644 --- a/quantum/quantum.h +++ b/quantum/quantum.h | |||
| @@ -40,7 +40,7 @@ | |||
| 40 | #include "action_util.h" | 40 | #include "action_util.h" |
| 41 | #include <stdlib.h> | 41 | #include <stdlib.h> |
| 42 | #include "print.h" | 42 | #include "print.h" |
| 43 | 43 | #include "send_string_keycodes.h" | |
| 44 | 44 | ||
| 45 | extern uint32_t default_layer_state; | 45 | extern uint32_t default_layer_state; |
| 46 | 46 | ||
| @@ -103,11 +103,32 @@ extern uint32_t default_layer_state; | |||
| 103 | #include "process_key_lock.h" | 103 | #include "process_key_lock.h" |
| 104 | #endif | 104 | #endif |
| 105 | 105 | ||
| 106 | #define SEND_STRING(str) send_string(PSTR(str)) | 106 | #ifdef TERMINAL_ENABLE |
| 107 | #include "process_terminal.h" | ||
| 108 | #else | ||
| 109 | #include "process_terminal_nop.h" | ||
| 110 | #endif | ||
| 111 | |||
| 112 | #define STRINGIZE(z) #z | ||
| 113 | #define ADD_SLASH_X(y) STRINGIZE(\x ## y) | ||
| 114 | #define SYMBOL_STR(x) ADD_SLASH_X(x) | ||
| 115 | |||
| 116 | #define SS_TAP(keycode) "\1" SYMBOL_STR(keycode) | ||
| 117 | #define SS_DOWN(keycode) "\2" SYMBOL_STR(keycode) | ||
| 118 | #define SS_UP(keycode) "\3" SYMBOL_STR(keycode) | ||
| 119 | |||
| 120 | #define SS_LCTRL(string) SS_DOWN(X_LCTRL) string SS_UP(X_LCTRL) | ||
| 121 | #define SS_LGUI(string) SS_DOWN(X_LGUI) string SS_UP(X_LGUI) | ||
| 122 | #define SS_LALT(string) SS_DOWN(X_LALT) string SS_UP(X_LALT) | ||
| 123 | |||
| 124 | #define SEND_STRING(str) send_string_P(PSTR(str)) | ||
| 107 | extern const bool ascii_to_shift_lut[0x80]; | 125 | extern const bool ascii_to_shift_lut[0x80]; |
| 108 | extern const uint8_t ascii_to_keycode_lut[0x80]; | 126 | extern const uint8_t ascii_to_keycode_lut[0x80]; |
| 109 | void send_string(const char *str); | 127 | void send_string(const char *str); |
| 110 | void send_string_with_delay(const char *str, uint8_t interval); | 128 | void send_string_with_delay(const char *str, uint8_t interval); |
| 129 | void send_string_P(const char *str); | ||
| 130 | void send_string_with_delay_P(const char *str, uint8_t interval); | ||
| 131 | void send_char(char ascii_code); | ||
| 111 | 132 | ||
| 112 | // For tri-layer | 133 | // For tri-layer |
| 113 | void update_tri_layer(uint8_t layer1, uint8_t layer2, uint8_t layer3); | 134 | void update_tri_layer(uint8_t layer1, uint8_t layer2, uint8_t layer3); |
