qmk_firmware

QMK firmware for my keyboards (Corne, Sweep Ferris) and trackball (Ploopy Adept)
Log | Files | Refs | Submodules | LICENSE

keymap.c (2218B)


      1 // Copyright 2023 QMK
      2 // SPDX-License-Identifier: GPL-2.0-or-later
      3 
      4 #include QMK_KEYBOARD_H
      5 
      6 enum layer_names {
      7     _QWERTY,
      8     _COLEMAK,
      9 };
     10 
     11 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
     12         [_QWERTY] = LAYOUT(
     13             KC_TAB,     KC_Q,       KC_W,       KC_E,       KC_R,       KC_T,                   KC_Z,       KC_U,       KC_I,       KC_O,       KC_P,       KC_BSPC,
     14             KC_CAPS,    KC_A,       KC_S,       KC_D,       KC_F,       KC_G,                   KC_H,       KC_J,       KC_K,       KC_L,       KC_NO,      KC_ENT, 
     15             KC_LSFT,    KC_Y,       KC_X,       KC_C,       KC_V,       KC_B,                   KC_N,       KC_M,       KC_COMM,    KC_DOT,     KC_MINS,    KC_RSFT, 
     16                                     TG(_COLEMAK),KC_LCTL,    KC_SPC,     KC_LSFT,                KC_RSFT,    KC_SPC,     KC_NO,      KC_RALT
     17         ),
     18         [_COLEMAK] = LAYOUT(
     19             KC_TAB,     KC_Q,       KC_W,       KC_F,       KC_P,       KC_G,                   KC_J,       KC_L,       KC_U,       KC_Y,       KC_SCLN,    KC_BSPC, 
     20             KC_CAPS,    KC_A,       KC_R,       KC_R,       KC_T,       KC_D,                   KC_H,       KC_N,       KC_E,       KC_I,       KC_O,       KC_ENT, 
     21             KC_LCTL,    KC_Z,       KC_X,       KC_C,       KC_V,       KC_B,                   KC_K,       KC_M,       KC_COMM,    KC_DOT,     KC_SLSH,    KC_RSFT, 
     22                                     KC_TRNS,    KC_LCTL,    KC_SPC,     KC_NO,                  KC_LALT,    KC_SPC,     KC_NO,      KC_RALT
     23         )
     24 };
     25 
     26 bool rgb_matrix_indicators_user(void) {
     27     if (host_keyboard_led_state().caps_lock) {
     28         rgb_matrix_set_color(0, RGB_RED);
     29     }
     30 	
     31     if (host_keyboard_led_state().num_lock) {
     32         rgb_matrix_set_color(1, RGB_RED);
     33     }
     34 
     35     if (host_keyboard_led_state().scroll_lock) {
     36         rgb_matrix_set_color(2, RGB_RED);
     37     }
     38 	
     39     switch (get_highest_layer(layer_state)) {
     40         case 1: 
     41             rgb_matrix_set_color(3, RGB_CYAN);
     42             break;
     43         case 2: 
     44             rgb_matrix_set_color(3, RGB_MAGENTA);
     45             break;
     46         case 3:
     47             rgb_matrix_set_color(3, RGB_YELLOW);
     48             break;
     49     } 
     50     return true;
     51 }