diff options
Diffstat (limited to 'layouts/community/ortho_4x12/jotix/keymap.c')
| -rw-r--r-- | layouts/community/ortho_4x12/jotix/keymap.c | 52 |
1 files changed, 41 insertions, 11 deletions
diff --git a/layouts/community/ortho_4x12/jotix/keymap.c b/layouts/community/ortho_4x12/jotix/keymap.c index c6655afa5..d1e8b3958 100644 --- a/layouts/community/ortho_4x12/jotix/keymap.c +++ b/layouts/community/ortho_4x12/jotix/keymap.c | |||
| @@ -1,14 +1,19 @@ | |||
| 1 | #include QMK_KEYBOARD_H | 1 | #include QMK_KEYBOARD_H |
| 2 | #include "unicode.c" | ||
| 2 | 3 | ||
| 3 | enum layers { | 4 | enum layers { |
| 4 | _QWERTY, | 5 | _QWERTY, |
| 5 | _LOWER, | 6 | _LOWER, |
| 6 | _RAISE, | 7 | _RAISE, |
| 8 | _UNI_LCK | ||
| 7 | }; | 9 | }; |
| 8 | 10 | ||
| 9 | #define LOWER MO(_LOWER) | 11 | #define LOWER MO(_LOWER) |
| 10 | #define RAISE MO(_RAISE) | 12 | #define RAISE MO(_RAISE) |
| 13 | #define UNI_LCK MO(_UNI_LCK) | ||
| 11 | #define TGLOWER TG(_LOWER) | 14 | #define TGLOWER TG(_LOWER) |
| 15 | #define TGRAISE TG(_RAISE) | ||
| 16 | #define SHRAISE LM(_RAISE, MOD_LSFT) | ||
| 12 | 17 | ||
| 13 | static bool is_ctl_pressed; | 18 | static bool is_ctl_pressed; |
| 14 | static bool is_esc_pressed; | 19 | static bool is_esc_pressed; |
| @@ -22,33 +27,45 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 22 | // ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤ | 27 | // ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤ |
| 23 | KC_TAB, KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L ,KC_SCLN, KC_ENT, | 28 | KC_TAB, KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L ,KC_SCLN, KC_ENT, |
| 24 | // ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤ | 29 | // ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤ |
| 25 | KC_LSFT, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M ,KC_COMM, KC_DOT, KC_UP, KC_SLSH, | 30 | KC_LSFT, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M ,KC_COMM, KC_DOT, KC_UP ,KC_SLSH, |
| 26 | // ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤ | 31 | // ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤ |
| 27 | KC_LCTL,KC_LGUI,KC_LALT,TGLOWER, LOWER , KC_SPC, KC_SPC, RAISE ,KC_RALT,KC_LEFT,KC_DOWN,KC_RGHT | 32 | KC_LCTL,KC_LGUI,KC_LALT,UNI_LCK, LOWER , KC_SPC, KC_SPC, RAISE ,SHRAISE,KC_LEFT,KC_DOWN,KC_RGHT |
| 28 | // └───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┘ | 33 | // └───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┘ |
| 29 | ), | 34 | ), |
| 30 | 35 | ||
| 31 | [_LOWER] = LAYOUT_ortho_4x12 ( | 36 | [_LOWER] = LAYOUT_ortho_4x12 ( |
| 32 | // ┌───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┐ | 37 | // ┌───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┐ |
| 33 | KC_GRV, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 ,_______, | 38 | _______, KC_F1 , KC_F2 , KC_F3 , KC_F4 ,_______, KC_INS, KC_P7 , KC_P8 , KC_P9 ,KC_PMNS,_______, |
| 34 | // ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤ | 39 | // ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤ |
| 35 | _______, KC_F1 , KC_F2 , KC_F3, KC_F4 ,_______,KC_LBRC,KC_RBRC,KC_BSLS,KC_QUOT,_______,_______, | 40 | _______, KC_F5 , KC_F6 , KC_F7 , KC_F8 ,KC_HOME,KC_PGUP, KC_P4 , KC_P5 , KC_P6 ,KC_PPLS,KC_PENT, |
| 36 | // ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤ | 41 | // ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤ |
| 37 | _______, KC_F5 , KC_F6 , KC_F7 , KC_F8 ,_______,KC_MINS, KC_EQL,_______,_______,_______,_______, | 42 | _______, KC_F9 , KC_F10, KC_F11, KC_F12, KC_END,KC_PGDN, KC_P1 , KC_P2 , KC_P3 ,KC_PAST,KC_PSLS, |
| 38 | // ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤ | 43 | // ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤ |
| 39 | _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______ | 44 | _______,_______,_______,_______,_______,_______,_______,_______, KC_P0 ,KC_PDOT,KC_LPRN,KC_RPRN |
| 40 | // └───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┘ | 45 | // └───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┘ |
| 41 | ), | 46 | ), |
| 42 | 47 | ||
| 43 | [_RAISE] = LAYOUT_ortho_4x12 ( | 48 | [_RAISE] = LAYOUT_ortho_4x12 ( |
| 44 | // ┌───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┐ | 49 | // ┌───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┐ |
| 45 | KC_TILD,KC_EXLM, KC_AT ,KC_HASH, KC_DLR,KC_PERC,KC_CIRC,KC_AMPR,KC_ASTR,KC_LPRN,KC_RPRN, KC_DEL, | 50 | KC_GRV, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_DEL, |
| 46 | // ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤ | 51 | // ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤ |
| 47 | KC_CAPS, KC_F9 , KC_F10, KC_F11, KC_F12,_______,KC_LCBR,KC_RCBR,KC_PIPE,KC_DQUO,_______,_______, | 52 | KC_CAPS,_______,_______,_______,_______,_______,KC_LBRC,KC_RBRC,KC_BSLS,KC_QUOT,_______,_______, |
| 48 | // ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤ | 53 | // ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤ |
| 49 | _______,_______,_______,_______,_______,_______,KC_UNDS,KC_PLUS,KC_HOME,KC_PGUP,KC_VOLU,_______, | 54 | _______,_______,_______,_______,_______,_______,KC_MINS, KC_EQL,_______,_______,KC_VOLU,_______, |
| 50 | // ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤ | 55 | // ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤ |
| 51 | _______,_______,_______,_______,_______,_______,_______,_______, KC_END,KC_PGDN,KC_VOLD,KC_MUTE | 56 | _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,KC_VOLD,KC_MUTE |
| 57 | // └───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┘ | ||
| 58 | ), | ||
| 59 | |||
| 60 | [_UNI_LCK] = LAYOUT_ortho_4x12 ( | ||
| 61 | // ┌───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┬───────┐ | ||
| 62 | UN_ESC, UN_Q , UN_W , UN_E , UN_R , UN_T , UN_Y , UN_U , UN_I , UN_O , UN_P ,_______, | ||
| 63 | // ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤ | ||
| 64 | _______, UN_A , UN_S , UN_D , UN_F , UN_G , UN_H , UN_J , UN_K , UN_L ,UN_SCLN,_______, | ||
| 65 | // ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤ | ||
| 66 | _______, UN_Z , UN_X , UN_C , UN_V , UN_B , UN_N , UN_M ,UN_COMM, UN_DOT, UN_UP ,UN_SLSH, | ||
| 67 | // ├───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┼───────┤ | ||
| 68 | UC_M_LN,UC_M_WI,UC_M_OS,_______,TGLOWER,_______,_______,TGRAISE,_______,UN_LEFT,UN_DOWN,UN_RGHT | ||
| 52 | // └───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┘ | 69 | // └───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┴───────┘ |
| 53 | ), | 70 | ), |
| 54 | 71 | ||
| @@ -65,6 +82,10 @@ uint32_t layer_state_set_user(uint32_t state) { | |||
| 65 | writePinLow(JOTANCK_LED1); | 82 | writePinLow(JOTANCK_LED1); |
| 66 | writePinHigh(JOTANCK_LED2); | 83 | writePinHigh(JOTANCK_LED2); |
| 67 | break; | 84 | break; |
| 85 | case _UNI_LCK: | ||
| 86 | writePinHigh(JOTANCK_LED1); | ||
| 87 | writePinHigh(JOTANCK_LED2); | ||
| 88 | break; | ||
| 68 | default: | 89 | default: |
| 69 | writePinLow(JOTANCK_LED1); | 90 | writePinLow(JOTANCK_LED1); |
| 70 | writePinLow(JOTANCK_LED2); | 91 | writePinLow(JOTANCK_LED2); |
| @@ -74,6 +95,16 @@ uint32_t layer_state_set_user(uint32_t state) { | |||
| 74 | return state; | 95 | return state; |
| 75 | } | 96 | } |
| 76 | 97 | ||
| 98 | void led_set_user(uint8_t usb_led) { | ||
| 99 | if (!(IS_LED_ON(usb_led, USB_LED_NUM_LOCK))) { | ||
| 100 | tap_code(KC_NUMLOCK); | ||
| 101 | } | ||
| 102 | } | ||
| 103 | |||
| 104 | void keyboard_post_init_user(void) { | ||
| 105 | set_unicode_input_mode(UC_LNX); | ||
| 106 | } | ||
| 107 | |||
| 77 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | 108 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { |
| 78 | switch (keycode) { | 109 | switch (keycode) { |
| 79 | case KC_LCTL: | 110 | case KC_LCTL: |
| @@ -88,7 +119,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { | |||
| 88 | }; | 119 | }; |
| 89 | return true; | 120 | return true; |
| 90 | } | 121 | } |
| 91 | |||
| 92 | void matrix_scan_user(void) { | 122 | void matrix_scan_user(void) { |
| 93 | if (is_ctl_pressed && is_esc_pressed && is_bspc_pressed) { | 123 | if (is_ctl_pressed && is_esc_pressed && is_bspc_pressed) { |
| 94 | reset_keyboard(); | 124 | reset_keyboard(); |
