Milk 2% - Unicode Keymap Fix and Improvements (#7013)
* - Enabled Unicode Feature to fix the build - Added TapDance Feature to improve the functionality of the Keyboard - Added the ability to switch between the Unicodes Modes - Added more Emojis thanks to the tap dance feature * Fix Formatbetter_chibios_wait
parent
feb116c4f3
commit
4522519079
@ -0,0 +1,2 @@ |
|||||||
|
#define UNICODE_SELECTED_MODES UC_LNX, UC_OSX, UC_WIN, UC_WINC |
||||||
|
#define TAPPING_TERM 300 |
@ -1,31 +1,53 @@ |
|||||||
#include QMK_KEYBOARD_H |
#include QMK_KEYBOARD_H |
||||||
|
|
||||||
enum custom_keycodes { |
enum tapdance_keycodes { |
||||||
DISSA, |
TD_KEY_1, |
||||||
SHRUG |
TD_KEY_2, |
||||||
}; |
}; |
||||||
|
|
||||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
void dance_key_one (qk_tap_dance_state_t *state, void *user_data) { |
||||||
[0] = LAYOUT( |
if (state->count == 1) { |
||||||
SHRUG, |
send_unicode_hex_string("00AF 005C 005F 0028 30C4 0029 005F 002F 00AF"); // ¯\_(ツ)_/¯
|
||||||
DISSA |
SEND_STRING(SS_TAP(X_ENTER)); |
||||||
) |
reset_tap_dance (state); |
||||||
|
} else if (state->count == 2) { |
||||||
|
cycle_unicode_input_mode(+1); |
||||||
|
reset_tap_dance (state); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
void dance_key_two (qk_tap_dance_state_t *state, void *user_data) { |
||||||
|
if (state->count == 1) { |
||||||
|
send_unicode_hex_string("0CA0 005F 0CA0"); // ಠ_ಠ
|
||||||
|
SEND_STRING(SS_TAP(X_ENTER)); |
||||||
|
reset_tap_dance (state); |
||||||
|
} else if (state->count == 2) { |
||||||
|
send_unicode_hex_string("0028 30CE 0CA0 75CA 0CA0 0029 30CE 5F61 253B 2501 253B"); // (ノಠ痊ಠ)ノ彡┻━┻
|
||||||
|
SEND_STRING(SS_TAP(X_ENTER)); |
||||||
|
reset_tap_dance (state); |
||||||
|
} else if (state->count == 3) { |
||||||
|
send_unicode_hex_string("256D 2229 256E 0028 002D 005F 002D 0029 256D 2229 256E"); // ╭∩╮(-_-)╭∩╮
|
||||||
|
SEND_STRING(SS_TAP(X_ENTER)); |
||||||
|
reset_tap_dance (state); |
||||||
|
} else if (state->count == 4) { |
||||||
|
send_unicode_hex_string("0028 3065 FFE3 0020 00B3 FFE3 0029 3065"); // (づ ̄ ³ ̄)づ
|
||||||
|
SEND_STRING(SS_TAP(X_ENTER)); |
||||||
|
reset_tap_dance (state); |
||||||
|
} else if (state->count == 5) { |
||||||
|
send_unicode_hex_string("0028 FE3A FE39 FE3A 0029"); // (︺︹︺)
|
||||||
|
SEND_STRING(SS_TAP(X_ENTER)); |
||||||
|
reset_tap_dance (state); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
qk_tap_dance_action_t tap_dance_actions[] = { |
||||||
|
[TD_KEY_1] = ACTION_TAP_DANCE_FN(dance_key_one), |
||||||
|
[TD_KEY_2] = ACTION_TAP_DANCE_FN(dance_key_two), |
||||||
}; |
}; |
||||||
|
|
||||||
bool process_record_user(uint16_t keycode, keyrecord_t *record) { |
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
||||||
switch (keycode) { |
[0] = LAYOUT( |
||||||
case SHRUG: |
TD(TD_KEY_1), |
||||||
if (record->event.pressed) { |
TD(TD_KEY_2) |
||||||
send_unicode_hex_string("00AF 005C 005F 0028 30C4 0029 005F 002F 00AF"); |
), |
||||||
} else { |
|
||||||
} |
|
||||||
break; |
|
||||||
case DISSA: |
|
||||||
if (record->event.pressed) { |
|
||||||
send_unicode_hex_string("0CA0 005F 0CA0"); |
|
||||||
} else { |
|
||||||
} |
|
||||||
break; |
|
||||||
} |
|
||||||
return true; |
|
||||||
}; |
}; |
||||||
|
@ -1,2 +1,39 @@ |
|||||||
# Emoji Keymap |
# Emoji Keymap |
||||||
 |
 |
||||||
|
|
||||||
|
# Unicode Setup |
||||||
|
|
||||||
|
Unicode input in QMK works by inputting a sequence of characters to the |
||||||
|
OS, sort of like a macro. Unfortunately, the way this is done differs |
||||||
|
for each platform. Specifically, each platform requires a different |
||||||
|
combination of keys to trigger Unicode input. Therefore, a |
||||||
|
corresponding input mode has to be set in QMK. |
||||||
|
|
||||||
|
Documentation: [Feature Unicode](https://beta.docs.qmk.fm/features/feature_unicode#input-modes) |
||||||
|
|
||||||
|
On this keymap the default unicode mode it's `UC_LNX`. |
||||||
|
You can change it permanently tapping 2 times the KeyOne to select the next mode. |
||||||
|
|
||||||
|
## Unicode Mode List |
||||||
|
- UC_LNX |
||||||
|
- UC_OSX |
||||||
|
- UC_WIN |
||||||
|
- UC_WINC |
||||||
|
|
||||||
|
# Keymap |
||||||
|
To add more functionality to this Minimal Keyboard, |
||||||
|
it's implemented the tap dance feature, so pressing the same key |
||||||
|
multiples times will produce different emojis. |
||||||
|
|
||||||
|
## Key One |
||||||
|
|
||||||
|
- 1 Tap: `¯\_(ツ)_/¯` |
||||||
|
- 2 Taps: Switch Unicode Input Type |
||||||
|
|
||||||
|
## Key Two |
||||||
|
|
||||||
|
- 1 Tap: `ಠ_ಠ` |
||||||
|
- 2 Taps: `(ノಠ痊ಠ)ノ彡┻━┻` |
||||||
|
- 3 Taps: `╭∩╮(-_-)╭∩╮` |
||||||
|
- 4 Taps: `(づ ̄ ³ ̄)づ` |
||||||
|
- 5 Taps: `(︺︹︺)` |
@ -0,0 +1,2 @@ |
|||||||
|
UNICODE_ENABLE = yes # Unicode
|
||||||
|
TAP_DANCE_ENABLE = yes # Tap Dance
|
Loading…
Reference in new issue