diff options
| author | Priyadi Iman Nurcahyo <priyadi@priyadi.net> | 2017-02-10 06:01:59 +0700 |
|---|---|---|
| committer | Priyadi Iman Nurcahyo <priyadi@priyadi.net> | 2017-02-10 06:01:59 +0700 |
| commit | af97d6b58ea7e2a445093eff5d757edc59dc0b57 (patch) | |
| tree | 120301fe9d5b2435995222317ceca0c028ed43a5 | |
| parent | 92308ed0e5ccac1aaeba6a952ccc2556dfffe4e0 (diff) | |
| download | qmk_firmware-af97d6b58ea7e2a445093eff5d757edc59dc0b57.tar.gz qmk_firmware-af97d6b58ea7e2a445093eff5d757edc59dc0b57.zip | |
Add dvorak & norman layout. Add sys layer.
| -rw-r--r-- | keyboards/handwired/promethium/keymaps/priyadi/keymap.c | 227 |
1 files changed, 148 insertions, 79 deletions
diff --git a/keyboards/handwired/promethium/keymaps/priyadi/keymap.c b/keyboards/handwired/promethium/keymaps/priyadi/keymap.c index f2d7ebcb7..3c48347d4 100644 --- a/keyboards/handwired/promethium/keymaps/priyadi/keymap.c +++ b/keyboards/handwired/promethium/keymaps/priyadi/keymap.c | |||
| @@ -20,22 +20,30 @@ extern keymap_config_t keymap_config; | |||
| 20 | 20 | ||
| 21 | enum layers { | 21 | enum layers { |
| 22 | _QWERTY, | 22 | _QWERTY, |
| 23 | _DVORAK, | ||
| 23 | _COLEMAK, | 24 | _COLEMAK, |
| 24 | _WORKMAN, | 25 | _WORKMAN, |
| 26 | _NORMAN, | ||
| 27 | |||
| 25 | _PUNC, | 28 | _PUNC, |
| 26 | _NUM, | 29 | _NUM, |
| 27 | _FUNC, | 30 | _FUNC, |
| 28 | _EMOJI, | 31 | |
| 29 | _GREEKU, | 32 | _GREEKU, |
| 30 | _GREEKL, | 33 | _GREEKL, |
| 34 | |||
| 35 | _EMOJI, | ||
| 31 | _GUI, | 36 | _GUI, |
| 37 | _SYS, | ||
| 32 | }; | 38 | }; |
| 33 | 39 | ||
| 34 | enum planck_keycodes { | 40 | enum planck_keycodes { |
| 35 | // layouts | 41 | // layouts |
| 36 | QWERTY = SAFE_RANGE, | 42 | QWERTY = SAFE_RANGE, |
| 43 | DVORAK, | ||
| 37 | COLEMAK, | 44 | COLEMAK, |
| 38 | WORKMAN, | 45 | WORKMAN, |
| 46 | NORMAN, | ||
| 39 | 47 | ||
| 40 | // layer switchers | 48 | // layer switchers |
| 41 | PUNC, | 49 | PUNC, |
| @@ -269,9 +277,9 @@ const uint32_t PROGMEM unicode_map[] = { | |||
| 269 | // #undef KC_RSFT | 277 | // #undef KC_RSFT |
| 270 | // #define KC_RSFT MT(MOD_LSFT, KC_EQL) | 278 | // #define KC_RSFT MT(MOD_LSFT, KC_EQL) |
| 271 | 279 | ||
| 272 | // hybrid right-gui & scroll lock (mapped to Compose in OS) | 280 | // hybrid right-alt & scroll lock (mapped to Compose in OS) |
| 273 | #undef KC_RCTL | 281 | #undef KC_RALT |
| 274 | #define KC_RCTL MT(MOD_LCTL, KC_SLCK) | 282 | #define KC_RALT MT(MOD_RALT, KC_SLCK) |
| 275 | 283 | ||
| 276 | // RGBSPS | 284 | // RGBSPS |
| 277 | 285 | ||
| @@ -537,18 +545,36 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 537 | * ,-----------------------------------------------------------------------------------. | 545 | * ,-----------------------------------------------------------------------------------. |
| 538 | * | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp | | 546 | * | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp | |
| 539 | * |------+------+------+------+------+-------------+------+------+------+------+------| | 547 | * |------+------+------+------+------+-------------+------+------+------+------+------| |
| 540 | * | Esc | A | S | D | F | G | H | J | K | L | ; |Enter | | 548 | * | Esc | A | S | D | F | G | H | J | K | L | ' |Enter | |
| 541 | * |------+------+------+------+------+------|------+------+------+------+------+------| | 549 | * |------+------+------+------+------+------|------+------+------+------+------+------| |
| 542 | * | Shift| Z | X | C | V | B | N | M | , | . | / |Shift | | 550 | * | Shift| Z | X | C | V | B | N | M | , | . | / |Shift | |
| 543 | * |------+------+------+------+------+------+------+------+------+------+------+------| | 551 | * |------+------+------+------+------+------+------+------+------+------+------+------| |
| 544 | * | Ctrl | Alt | GUI | Punc | Num | Space | Func |Emoji |Greek |AltGr | Ctrl | | 552 | * | Ctrl | Alt | GUI | Punc | Num | Space | Func |Greek | GUI |AltGr | Ctrl | |
| 545 | * `-----------------------------------------------------------------------------------' | 553 | * `-----------------------------------------------------------------------------------' |
| 546 | */ | 554 | */ |
| 547 | [_QWERTY] = KEYMAP( | 555 | [_QWERTY] = KEYMAP( |
| 548 | KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, | 556 | KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, |
| 549 | KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_QUOT, KC_ENT , | 557 | KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_QUOT, KC_ENT , |
| 550 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, | 558 | KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, |
| 551 | KC_LCTL, KC_LALT, KC_LGUI, PUNC, NUM, KC_SPC, KC_SPC, FUNC, EMOJI, GREEK, KC_RALT, KC_RCTL | 559 | KC_LCTL, KC_LALT, KC_LGUI, PUNC, NUM, KC_SPC, KC_SPC, FUNC, GREEK, KC_RGUI, KC_RALT, KC_RCTL |
| 560 | ), | ||
| 561 | |||
| 562 | /* Dvorak | ||
| 563 | * ,-----------------------------------------------------------------------------------. | ||
| 564 | * | Tab | ' | , | . | P | Y | F | G | C | R | L | Bksp | | ||
| 565 | * |------+------+------+------+------+-------------+------+------+------+------+------| | ||
| 566 | * | Esc | A | O | E | U | I | D | H | T | N | S |Enter | | ||
| 567 | * |------+------+------+------+------+------|------+------+------+------+------+------| | ||
| 568 | * | Shift| / | Q | J | K | X | B | M | W | V | Z |Shift | | ||
| 569 | * |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 570 | * | Ctrl | Alt | GUI | Punc | Num | Space | Func |Greek | GUI |AltGr | Ctrl | | ||
| 571 | * `-----------------------------------------------------------------------------------' | ||
| 572 | */ | ||
| 573 | [_DVORAK] = KEYMAP( | ||
| 574 | _______, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, _______, | ||
| 575 | _______, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, _______, | ||
| 576 | _______, KC_SLSH, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, _______, | ||
| 577 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ | ||
| 552 | ), | 578 | ), |
| 553 | 579 | ||
| 554 | /* Colemak | 580 | /* Colemak |
| @@ -559,7 +585,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 559 | * |------+------+------+------+------+------|------+------+------+------+------+------| | 585 | * |------+------+------+------+------+------|------+------+------+------+------+------| |
| 560 | * | Shift| Z | X | C | V | B | K | M | , | . | / |Shift | | 586 | * | Shift| Z | X | C | V | B | K | M | , | . | / |Shift | |
| 561 | * |------+------+------+------+------+------+------+------+------+------+------+------| | 587 | * |------+------+------+------+------+------+------+------+------+------+------+------| |
| 562 | * | Ctrl | GUI | Alt | Punc | Num | Space | Func |Emoji |AltGr | GUI | Ctrl | | 588 | * | Ctrl | Alt | GUI | Punc | Num | Space | Func |Greek | GUI |AltGr | Ctrl | |
| 563 | * `-----------------------------------------------------------------------------------' | 589 | * `-----------------------------------------------------------------------------------' |
| 564 | */ | 590 | */ |
| 565 | [_COLEMAK] = KEYMAP( | 591 | [_COLEMAK] = KEYMAP( |
| @@ -569,57 +595,39 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 569 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ | 595 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ |
| 570 | ), | 596 | ), |
| 571 | 597 | ||
| 572 | /* Workman | 598 | /* Norman |
| 573 | * ,-----------------------------------------------------------------------------------. | 599 | * ,-----------------------------------------------------------------------------------. |
| 574 | * | Tab | Q | D | R | W | B | J | F | U | P | ; | Bksp | | 600 | * | Tab | Q | W | D | F | K | J | U | R | L | ; | Bksp | |
| 575 | * |------+------+------+------+------+-------------+------+------+------+------+------| | 601 | * |------+------+------+------+------+-------------+------+------+------+------+------| |
| 576 | * | Esc | A | S | H | T | G | Y | N | E | O | I |Enter | | 602 | * | Esc | A | S | E | T | G | Y | N | I | O | H |Enter | |
| 577 | * |------+------+------+------+------+------|------+------+------+------+------+------| | 603 | * |------+------+------+------+------+------|------+------+------+------+------+------| |
| 578 | * | Shift| Z | X | M | C | V | K | K | , | . | / |Shift | | 604 | * | Shift| Z | X | C | V | B | P | M | , | . | / |Shift | |
| 579 | * |------+------+------+------+------+------+------+------+------+------+------+------| | 605 | * |------+------+------+------+------+------+------+------+------+------+------+------| |
| 580 | * | Ctrl | GUI | Alt | Punc | Num | Space | Func |Emoji |AltGr | GUI | Ctrl | | 606 | * | Ctrl | Alt | GUI | Punc | Num | Space | Func |Greek | GUI |AltGr | Ctrl | |
| 581 | * `-----------------------------------------------------------------------------------' | 607 | * `-----------------------------------------------------------------------------------' |
| 582 | */ | 608 | */ |
| 583 | [_WORKMAN] = KEYMAP( | 609 | [_NORMAN] = KEYMAP( |
| 584 | _______, KC_Q, KC_D, KC_R, KC_W, KC_B, KC_J, KC_F, KC_U, KC_P, KC_QUOT, _______, | 610 | _______, KC_Q, KC_W, KC_D, KC_F, KC_K, KC_J, KC_U, KC_R, KC_L, KC_QUOT, _______, |
| 585 | _______, KC_A, KC_S, KC_H, KC_T, KC_G, KC_Y, KC_N, KC_E, KC_O, KC_I, _______, | 611 | _______, KC_A, KC_S, KC_E, KC_T, KC_G, KC_Y, KC_N, KC_I, KC_O, KC_H, _______, |
| 586 | _______, KC_Z, KC_X, KC_M, KC_C, KC_V, KC_K, KC_L, KC_COMM, KC_DOT, KC_SLSH, _______, | 612 | _______, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_P, KC_M, KC_COMM, KC_DOT, KC_SLSH, _______, |
| 587 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ | 613 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ |
| 588 | ), | 614 | ), |
| 589 | 615 | ||
| 590 | /* Uppercase Greek | 616 | /* Workman |
| 591 | * ,-----------------------------------------------------------------------------------. | ||
| 592 | * | | | | | | | | | | | | | | ||
| 593 | * |------+------+------+------+------+-------------+------+------+------+------+------| | ||
| 594 | * | | | | | | | | | | | | | | ||
| 595 | * |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 596 | * | | | | | | | | | | | | | | ||
| 597 | * |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 598 | * | | | | | | | | | | | | | | ||
| 599 | * `-----------------------------------------------------------------------------------' | ||
| 600 | */ | ||
| 601 | [_GREEKU] = KEYMAP( | ||
| 602 | _______, _______, _______,X(UEPSI), X(URHO), X(UTAU),X(UUPSI),X(UTHET),X(UIOTA),X(UOMIC), X(UPI), _______, | ||
| 603 | _______,X(UALPH),X(USIGM),X(UDELT), X(UPHI),X(UGAMM), X(UETA), X(UXI),X(UKAPP),X(ULAMB), _______, _______, | ||
| 604 | _______,X(UZETA), X(UCHI), X(UPSI),X(UOMEG),X(UBETA), X(UNU), X(UMU), _______, _______, _______, _______, | ||
| 605 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ | ||
| 606 | ), | ||
| 607 | |||
| 608 | /* Lowercase Greek | ||
| 609 | * ,-----------------------------------------------------------------------------------. | 617 | * ,-----------------------------------------------------------------------------------. |
| 610 | * | | | | | | | | | | | | | | 618 | * | Tab | Q | D | R | W | B | J | F | U | P | ; | Bksp | |
| 611 | * |------+------+------+------+------+-------------+------+------+------+------+------| | 619 | * |------+------+------+------+------+-------------+------+------+------+------+------| |
| 612 | * | | | | | | | | | | | | | | 620 | * | Esc | A | S | H | T | G | Y | N | E | O | I |Enter | |
| 613 | * |------+------+------+------+------+------+------+------+------+------+------+------| | 621 | * |------+------+------+------+------+------|------+------+------+------+------+------| |
| 614 | * | | | | | | | | | | | | | | 622 | * | Shift| Z | X | M | C | V | K | K | , | . | / |Shift | |
| 615 | * |------+------+------+------+------+------+------+------+------+------+------+------| | 623 | * |------+------+------+------+------+------+------+------+------+------+------+------| |
| 616 | * | | | | | | | | | | | | | | 624 | * | Ctrl | Alt | GUI | Punc | Num | Space | Func |Greek | GUI |AltGr | Ctrl | |
| 617 | * `-----------------------------------------------------------------------------------' | 625 | * `-----------------------------------------------------------------------------------' |
| 618 | */ | 626 | */ |
| 619 | [_GREEKL] = KEYMAP( | 627 | [_WORKMAN] = KEYMAP( |
| 620 | _______, _______,X(FSIGM),X(LEPSI), X(LRHO), X(LTAU),X(LUPSI),X(LTHET),X(LIOTA),X(LOMIC), X(LPI), _______, | 628 | _______, KC_Q, KC_D, KC_R, KC_W, KC_B, KC_J, KC_F, KC_U, KC_P, KC_QUOT, _______, |
| 621 | _______,X(LALPH),X(LSIGM),X(LDELT), X(LPHI),X(LGAMM), X(LETA), X(LXI),X(LKAPP),X(LLAMB), _______, _______, | 629 | _______, KC_A, KC_S, KC_H, KC_T, KC_G, KC_Y, KC_N, KC_E, KC_O, KC_I, _______, |
| 622 | _______,X(LZETA), X(LCHI), X(LPSI),X(LOMEG),X(LBETA), X(LNU), X(LMU), _______, _______, _______, _______, | 630 | _______, KC_Z, KC_X, KC_M, KC_C, KC_V, KC_K, KC_L, KC_COMM, KC_DOT, KC_SLSH, _______, |
| 623 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ | 631 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ |
| 624 | ), | 632 | ), |
| 625 | 633 | ||
| @@ -677,6 +685,42 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 677 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ | 685 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ |
| 678 | ), | 686 | ), |
| 679 | 687 | ||
| 688 | /* Uppercase Greek | ||
| 689 | * ,-----------------------------------------------------------------------------------. | ||
| 690 | * | | | | | | | | | | | | | | ||
| 691 | * |------+------+------+------+------+-------------+------+------+------+------+------| | ||
| 692 | * | | | | | | | | | | | | | | ||
| 693 | * |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 694 | * | | | | | | | | | | | | | | ||
| 695 | * |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 696 | * | | | | | | | | | | | | | | ||
| 697 | * `-----------------------------------------------------------------------------------' | ||
| 698 | */ | ||
| 699 | [_GREEKU] = KEYMAP( | ||
| 700 | _______, _______, _______,X(UEPSI), X(URHO), X(UTAU),X(UUPSI),X(UTHET),X(UIOTA),X(UOMIC), X(UPI), _______, | ||
| 701 | _______,X(UALPH),X(USIGM),X(UDELT), X(UPHI),X(UGAMM), X(UETA), X(UXI),X(UKAPP),X(ULAMB), _______, _______, | ||
| 702 | _______,X(UZETA), X(UCHI), X(UPSI),X(UOMEG),X(UBETA), X(UNU), X(UMU), _______, _______, _______, _______, | ||
| 703 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ | ||
| 704 | ), | ||
| 705 | |||
| 706 | /* Lowercase Greek | ||
| 707 | * ,-----------------------------------------------------------------------------------. | ||
| 708 | * | | | | | | | | | | | | | | ||
| 709 | * |------+------+------+------+------+-------------+------+------+------+------+------| | ||
| 710 | * | | | | | | | | | | | | | | ||
| 711 | * |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 712 | * | | | | | | | | | | | | | | ||
| 713 | * |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 714 | * | | | | | | | | | | | | | | ||
| 715 | * `-----------------------------------------------------------------------------------' | ||
| 716 | */ | ||
| 717 | [_GREEKL] = KEYMAP( | ||
| 718 | _______, _______,X(FSIGM),X(LEPSI), X(LRHO), X(LTAU),X(LUPSI),X(LTHET),X(LIOTA),X(LOMIC), X(LPI), _______, | ||
| 719 | _______,X(LALPH),X(LSIGM),X(LDELT), X(LPHI),X(LGAMM), X(LETA), X(LXI),X(LKAPP),X(LLAMB), _______, _______, | ||
| 720 | _______,X(LZETA), X(LCHI), X(LPSI),X(LOMEG),X(LBETA), X(LNU), X(LMU), _______, _______, _______, _______, | ||
| 721 | _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ | ||
| 722 | ), | ||
| 723 | |||
| 680 | /* Emoji | 724 | /* Emoji |
| 681 | * ,-----------------------------------------------------------------------------------. | 725 | * ,-----------------------------------------------------------------------------------. |
| 682 | * | | | | | | | | | | | | | | 726 | * | | | | | | | | | | | | | |
| @@ -713,6 +757,24 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 713 | OSX, _______, _______, _______, _______, BL_DEC, BL_INC, _______, _______, RGB_VAI, RGB_VAD, WORKMAN | 757 | OSX, _______, _______, _______, _______, BL_DEC, BL_INC, _______, _______, RGB_VAI, RGB_VAD, WORKMAN |
| 714 | ), | 758 | ), |
| 715 | 759 | ||
| 760 | /* GUI | ||
| 761 | * ,-----------------------------------------------------------------------------------. | ||
| 762 | * | |Qwerty| Win | | | | | USB | | | | | | ||
| 763 | * |------+------+------+------+------+-------------+------+------+------+------+------| | ||
| 764 | * | |Audio | |Dvorak| | Glow | | |WorkMn|Linux | | | | ||
| 765 | * |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 766 | * | | | |Colmak| | BLE |Norman|MacOS | | | | | | ||
| 767 | * |------+------+------+------+------+------+------+------+------+------+------+------| | ||
| 768 | * | | | | | | | | | | | | | | ||
| 769 | * `-----------------------------------------------------------------------------------' | ||
| 770 | */ | ||
| 771 | [_SYS] = KEYMAP( | ||
| 772 | XXXXXXX, QWERTY, WIN, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, OUT_USB, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, | ||
| 773 | XXXXXXX, XXXXXXX, XXXXXXX, DVORAK, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, WORKMAN, LINUX, XXXXXXX, XXXXXXX, | ||
| 774 | XXXXXXX, XXXXXXX, XXXXXXX, COLEMAK, XXXXXXX, OUT_BLE, NORMAN, OSX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, | ||
| 775 | XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX | ||
| 776 | ), | ||
| 777 | |||
| 716 | }; | 778 | }; |
| 717 | 779 | ||
| 718 | void persistant_default_layer_set(uint16_t default_layer) { | 780 | void persistant_default_layer_set(uint16_t default_layer) { |
| @@ -725,22 +787,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { | |||
| 725 | bool rshifted = keyboard_report->mods & MOD_BIT(KC_RSFT); | 787 | bool rshifted = keyboard_report->mods & MOD_BIT(KC_RSFT); |
| 726 | 788 | ||
| 727 | switch (keycode) { | 789 | switch (keycode) { |
| 728 | case GREEK: | 790 | // handle greek layer shift |
| 729 | if (record->event.pressed) { | ||
| 730 | if (lshifted || rshifted) { | ||
| 731 | layer_on(_GREEKU); | ||
| 732 | layer_off(_GREEKL); | ||
| 733 | } else { | ||
| 734 | layer_on(_GREEKL); | ||
| 735 | layer_off(_GREEKU); | ||
| 736 | } | ||
| 737 | } else { | ||
| 738 | layer_off(_GREEKU); | ||
| 739 | layer_off(_GREEKL); | ||
| 740 | } | ||
| 741 | return false; | ||
| 742 | break; | ||
| 743 | |||
| 744 | case KC_LSFT: | 791 | case KC_LSFT: |
| 745 | case KC_RSFT: | 792 | case KC_RSFT: |
| 746 | ; | 793 | ; |
| @@ -750,7 +797,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { | |||
| 750 | layer_on(_GREEKU); | 797 | layer_on(_GREEKU); |
| 751 | layer_off(_GREEKL); | 798 | layer_off(_GREEKL); |
| 752 | } else { | 799 | } else { |
| 753 | if (lshifted ^ rshifted) { // if only one shift is pressed | 800 | if (lshifted ^ rshifted) { // if only one shift was pressed |
| 754 | layer_on(_GREEKL); | 801 | layer_on(_GREEKL); |
| 755 | layer_off(_GREEKU); | 802 | layer_off(_GREEKU); |
| 756 | } | 803 | } |
| @@ -796,6 +843,12 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { | |||
| 796 | } | 843 | } |
| 797 | return false; | 844 | return false; |
| 798 | break; | 845 | break; |
| 846 | case DVORAK: | ||
| 847 | if (record->event.pressed) { | ||
| 848 | persistant_default_layer_set(1UL<<_DVORAK); | ||
| 849 | } | ||
| 850 | return false; | ||
| 851 | break; | ||
| 799 | case COLEMAK: | 852 | case COLEMAK: |
| 800 | if (record->event.pressed) { | 853 | if (record->event.pressed) { |
| 801 | persistant_default_layer_set(1UL<<_COLEMAK); | 854 | persistant_default_layer_set(1UL<<_COLEMAK); |
| @@ -808,48 +861,63 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { | |||
| 808 | } | 861 | } |
| 809 | return false; | 862 | return false; |
| 810 | break; | 863 | break; |
| 864 | case NORMAN: | ||
| 865 | if (record->event.pressed) { | ||
| 866 | persistant_default_layer_set(1UL<<_NORMAN); | ||
| 867 | } | ||
| 868 | return false; | ||
| 869 | break; | ||
| 811 | 870 | ||
| 812 | // layer switcher | 871 | // layer switcher |
| 813 | case PUNC: | 872 | case PUNC: |
| 814 | if (record->event.pressed) { | 873 | if (record->event.pressed) { |
| 815 | layer_on(_PUNC); | 874 | layer_on(_PUNC); |
| 816 | update_tri_layer(_PUNC, _EMOJI, _GUI); | 875 | update_tri_layer(_PUNC, _GREEKL, _EMOJI); |
| 817 | if (IS_LAYER_ON(_GUI)) { | 876 | if (IS_LAYER_ON(_EMOJI)) { |
| 818 | led_layer_gui(); | 877 | led_layer_emoji(); |
| 819 | } else { | 878 | } else { |
| 820 | led_layer_punc();; | 879 | led_layer_punc(); |
| 821 | } | 880 | } |
| 822 | } else { | 881 | } else { |
| 823 | layer_off(_PUNC); | 882 | layer_off(_PUNC); |
| 824 | update_tri_layer(_PUNC, _EMOJI, _GUI); | 883 | update_tri_layer(_PUNC, _GREEKL, _EMOJI); |
| 825 | if (IS_LAYER_ON(_EMOJI)) { | 884 | if (IS_LAYER_ON(_GREEKL)) { |
| 826 | led_layer_emoji(); | 885 | ; |
| 827 | } else { | 886 | } else { |
| 828 | led_layer_normal();; | 887 | led_layer_normal(); |
| 829 | } | 888 | } |
| 830 | } | 889 | } |
| 831 | return false; | 890 | return false; |
| 832 | break; | 891 | break; |
| 833 | case EMOJI: | 892 | |
| 893 | case GREEK: | ||
| 834 | if (record->event.pressed) { | 894 | if (record->event.pressed) { |
| 835 | layer_on(_EMOJI); | 895 | if (lshifted || rshifted) { |
| 836 | update_tri_layer(_PUNC, _EMOJI, _GUI); | 896 | layer_on(_GREEKU); |
| 837 | if (IS_LAYER_ON(_GUI)) { | 897 | layer_off(_GREEKL); |
| 838 | led_layer_gui(); | ||
| 839 | } else { | 898 | } else { |
| 840 | led_layer_emoji();; | 899 | layer_on(_GREEKL); |
| 900 | layer_off(_GREEKU); | ||
| 901 | update_tri_layer(_PUNC, _GREEKL, _EMOJI); | ||
| 902 | if (IS_LAYER_ON(_EMOJI)) { | ||
| 903 | led_layer_emoji(); | ||
| 904 | } else { | ||
| 905 | ; | ||
| 906 | } | ||
| 841 | } | 907 | } |
| 842 | } else { | 908 | } else { |
| 843 | layer_off(_EMOJI); | 909 | layer_off(_GREEKU); |
| 844 | update_tri_layer(_PUNC, _EMOJI, _GUI); | 910 | layer_off(_GREEKL); |
| 911 | update_tri_layer(_PUNC, _GREEKL, _EMOJI); | ||
| 845 | if (IS_LAYER_ON(_PUNC)) { | 912 | if (IS_LAYER_ON(_PUNC)) { |
| 846 | led_layer_punc(); | 913 | led_layer_punc(); |
| 847 | } else { | 914 | } else { |
| 848 | led_layer_normal();; | 915 | led_layer_normal(); |
| 849 | } | 916 | } |
| 850 | } | 917 | } |
| 851 | return false; | 918 | return false; |
| 852 | break; | 919 | break; |
| 920 | |||
| 853 | case NUM: | 921 | case NUM: |
| 854 | if (record->event.pressed) { | 922 | if (record->event.pressed) { |
| 855 | layer_on(_NUM); | 923 | layer_on(_NUM); |
| @@ -860,6 +928,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { | |||
| 860 | } | 928 | } |
| 861 | return false; | 929 | return false; |
| 862 | break; | 930 | break; |
| 931 | |||
| 863 | case FUNC: | 932 | case FUNC: |
| 864 | if (record->event.pressed) { | 933 | if (record->event.pressed) { |
| 865 | layer_on(_FUNC); | 934 | layer_on(_FUNC); |
