forked from qmk/qmk_firmware
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
handwired/nicekey optimisation (qmk#14788)
* handwired/nicekey optimisation * Add some consts * Read address from progmem, pass it into send_string_with_delay_P
- Loading branch information
Showing
3 changed files
with
138 additions
and
77 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,75 +1,132 @@ | ||
#include QMK_KEYBOARD_H | ||
|
||
#define RANDOM_STRING_DELAY 100 | ||
|
||
enum custom_keycodes { | ||
RANDOM_STRING_MACRO = SAFE_RANGE | ||
RANDOM_STRING_MACRO = SAFE_RANGE | ||
}; | ||
|
||
const int delay = 100; | ||
const char *sentences[] = { | ||
"I hope you have a great day!\n", | ||
"You are an awesome person.\n", | ||
"I wish I knew you better, you seem nice!\n", | ||
"Your views restore my faith in humanity\n", | ||
"You are as cool as a norm-critical disney princess\n", | ||
"You have impeccable manners.\n", | ||
"You are making me smile\n", | ||
"You are making a difference\n", | ||
"You bring out the best in other people\n", | ||
"You are all that and a super-size bag of chips.\n", | ||
"You are not someone I pretend to not see in public.\n", | ||
"Are you a beaver, because damn.\n", | ||
"I bet you make babies smile.\n", | ||
"You are awkward, in a cute way. Like an elevator ride, but with puppies.\n", | ||
"Looking like a complete idiot with you is really fun.\n", | ||
"If you cooked something really bad, I would tell you instead of eating it.\n", | ||
"I love how passionate you are about your hobby.\n", | ||
"Our conversations always make me feel better.\n", | ||
"It is amazing how far out of your way you go to help people.\n", | ||
"I am so glad that you wrote something here.\n", | ||
"Hey you! How nice to see a friendly person in my feed!\n", | ||
"I hope we know each other for a long time.\n", | ||
"I bet if Britney Spears knew you, 2008 would have gone a lot differently.\n", | ||
"I would trust you with my passwords.\n", | ||
"You are a great problem solver\n", | ||
"I would love to hear you laugh!\n", | ||
"Please, have a monologue about your week, I just want to listen to you!\n", | ||
"You are very far from being Trump.\n", | ||
"I think my dog might like you more than me\n", | ||
"I feel like you would be a great person to do a group project with\n", | ||
"I bet animals love you\n", | ||
"I bet even Kanye would like you more than himself\n", | ||
"You are just doing a great job at life\n", | ||
"I like how you are challenging me.\n", | ||
"You would do be a great mother!\n", | ||
"I... Baked bread for you.\n", | ||
"Wow. You.\n", | ||
"You would not have let that balrog pass!\n", | ||
"Thank you.\n", | ||
"You would be standing out in a crowd\n", | ||
"Your sense of style is amazing.\n", | ||
"You have a beautiful mind.\n", | ||
"I like that big juicy brain of yours\n", | ||
"I would share my cinnamon bun with you\n", | ||
"I like you more than i like my moms apple pie\n", | ||
"You give me the same feeling as a summers night\n", | ||
"I enjoy you more than the click of my mechanical switch\n", | ||
"I would let you pop my bubble wrap\n", | ||
"Being near you is like being inside of a poem\n" | ||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||
LAYOUT( | ||
RANDOM_STRING_MACRO | ||
) | ||
}; | ||
|
||
const char sentence_01[] PROGMEM = "I hope you have a great day!"; | ||
const char sentence_02[] PROGMEM = "You are an awesome person."; | ||
const char sentence_03[] PROGMEM = "I wish I knew you better, you seem nice!"; | ||
const char sentence_04[] PROGMEM = "Your views restore my faith in humanity"; | ||
const char sentence_05[] PROGMEM = "You are as cool as a norm-critical disney princess"; | ||
const char sentence_06[] PROGMEM = "You have impeccable manners."; | ||
const char sentence_07[] PROGMEM = "You are making me smile"; | ||
const char sentence_08[] PROGMEM = "You are making a difference"; | ||
const char sentence_09[] PROGMEM = "You bring out the best in other people"; | ||
const char sentence_10[] PROGMEM = "You are all that and a super-size bag of chips."; | ||
const char sentence_11[] PROGMEM = "You are not someone I pretend to not see in public."; | ||
const char sentence_12[] PROGMEM = "Are you a beaver, because damn."; | ||
const char sentence_13[] PROGMEM = "I bet you make babies smile."; | ||
const char sentence_14[] PROGMEM = "You are awkward, in a cute way. Like an elevator ride, but with puppies."; | ||
const char sentence_15[] PROGMEM = "Looking like a complete idiot with you is really fun."; | ||
const char sentence_16[] PROGMEM = "If you cooked something really bad, I would tell you instead of eating it."; | ||
const char sentence_17[] PROGMEM = "I love how passionate you are about your hobby."; | ||
const char sentence_18[] PROGMEM = "Our conversations always make me feel better."; | ||
const char sentence_19[] PROGMEM = "It is amazing how far out of your way you go to help people."; | ||
const char sentence_20[] PROGMEM = "I am so glad that you wrote something here."; | ||
const char sentence_21[] PROGMEM = "Hey you! How nice to see a friendly person in my feed!"; | ||
const char sentence_22[] PROGMEM = "I hope we know each other for a long time."; | ||
const char sentence_23[] PROGMEM = "I bet if Britney Spears knew you, 2008 would have gone a lot differently."; | ||
const char sentence_24[] PROGMEM = "I would trust you with my passwords."; | ||
const char sentence_25[] PROGMEM = "You are a great problem solver"; | ||
const char sentence_26[] PROGMEM = "I would love to hear you laugh!"; | ||
const char sentence_27[] PROGMEM = "Please, have a monologue about your week, I just want to listen to you!"; | ||
const char sentence_28[] PROGMEM = "You are very far from being Trump."; | ||
const char sentence_29[] PROGMEM = "I think my dog might like you more than me"; | ||
const char sentence_30[] PROGMEM = "I feel like you would be a great person to do a group project with"; | ||
const char sentence_31[] PROGMEM = "I bet animals love you"; | ||
const char sentence_32[] PROGMEM = "I bet even Kanye would like you more than himself"; | ||
const char sentence_33[] PROGMEM = "You are just doing a great job at life"; | ||
const char sentence_34[] PROGMEM = "I like how you are challenging me."; | ||
const char sentence_35[] PROGMEM = "You would do be a great mother!"; | ||
const char sentence_36[] PROGMEM = "I... Baked bread for you."; | ||
const char sentence_37[] PROGMEM = "Wow. You."; | ||
const char sentence_38[] PROGMEM = "You would not have let that balrog pass!"; | ||
const char sentence_39[] PROGMEM = "Thank you."; | ||
const char sentence_40[] PROGMEM = "You would be standing out in a crowd"; | ||
const char sentence_41[] PROGMEM = "Your sense of style is amazing."; | ||
const char sentence_42[] PROGMEM = "You have a beautiful mind."; | ||
const char sentence_43[] PROGMEM = "I like that big juicy brain of yours"; | ||
const char sentence_44[] PROGMEM = "I would share my cinnamon bun with you"; | ||
const char sentence_45[] PROGMEM = "I like you more than i like my moms apple pie"; | ||
const char sentence_46[] PROGMEM = "You give me the same feeling as a summers night"; | ||
const char sentence_47[] PROGMEM = "I enjoy you more than the click of my mechanical switch"; | ||
const char sentence_48[] PROGMEM = "I would let you pop my bubble wrap"; | ||
const char sentence_49[] PROGMEM = "Being near you is like being inside of a poem"; | ||
|
||
PGM_P const sentences[] PROGMEM = { | ||
sentence_01, | ||
sentence_02, | ||
sentence_03, | ||
sentence_04, | ||
sentence_05, | ||
sentence_06, | ||
sentence_07, | ||
sentence_08, | ||
sentence_09, | ||
sentence_10, | ||
sentence_11, | ||
sentence_12, | ||
sentence_13, | ||
sentence_14, | ||
sentence_15, | ||
sentence_16, | ||
sentence_17, | ||
sentence_18, | ||
sentence_19, | ||
sentence_20, | ||
sentence_21, | ||
sentence_22, | ||
sentence_23, | ||
sentence_24, | ||
sentence_25, | ||
sentence_26, | ||
sentence_27, | ||
sentence_28, | ||
sentence_29, | ||
sentence_30, | ||
sentence_31, | ||
sentence_32, | ||
sentence_33, | ||
sentence_34, | ||
sentence_35, | ||
sentence_36, | ||
sentence_37, | ||
sentence_38, | ||
sentence_39, | ||
sentence_40, | ||
sentence_41, | ||
sentence_42, | ||
sentence_43, | ||
sentence_44, | ||
sentence_45, | ||
sentence_46, | ||
sentence_47, | ||
sentence_48, | ||
sentence_49 | ||
}; | ||
|
||
bool process_record_user(uint16_t keycode, keyrecord_t *record) { | ||
if (record->event.pressed) { | ||
int sentences_size = sizeof(sentences) / sizeof(sentences[0]); | ||
int i = rand() % sentences_size; | ||
switch(keycode) { | ||
case RANDOM_STRING_MACRO: | ||
send_string_with_delay(sentences[i], delay); | ||
return false; | ||
if (record->event.pressed) { | ||
int sentences_size = sizeof(sentences) / sizeof(sentences[0]); | ||
int i = rand() % sentences_size; | ||
|
||
switch (keycode) { | ||
case RANDOM_STRING_MACRO: | ||
send_string_with_delay_P((PGM_P)pgm_read_word(&(sentences[i])), RANDOM_STRING_DELAY); | ||
tap_code(KC_ENT); | ||
|
||
return false; | ||
} | ||
} | ||
} | ||
return true; | ||
}; | ||
|
||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||
LAYOUT( RANDOM_STRING_MACRO ) | ||
}; | ||
return true; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters