diff options
| -rw-r--r-- | keyboards/gmmk/pro/ansi/keymaps/benschaeff/keymap.c | 104 | ||||
| -rw-r--r-- | keyboards/gmmk/pro/ansi/keymaps/benschaeff/readme.md | 19 | 
2 files changed, 73 insertions, 50 deletions
| diff --git a/keyboards/gmmk/pro/ansi/keymaps/benschaeff/keymap.c b/keyboards/gmmk/pro/ansi/keymaps/benschaeff/keymap.c index 39eac038d1..5f3e3f5fd8 100644 --- a/keyboards/gmmk/pro/ansi/keymaps/benschaeff/keymap.c +++ b/keyboards/gmmk/pro/ansi/keymaps/benschaeff/keymap.c @@ -20,7 +20,7 @@ enum userspace_layers {  };  //custom keycodes -#define MODS_ALT_MASK (MOD_BIT(KC_LALT)) // Make ALT layer for encoder use  +#define MODS_ALT_MASK (MOD_BIT(KC_LALT)) // Make ALT layer for encoder use  #define MODS_CTRL_MASK (MOD_BIT(KC_LCTL)) // Make CTRL layer for encoder use  #define SWAP_L SGUI(KC_LEFT) // Swap application to left display  #define SWAP_R SGUI(KC_RGHT) // Swap application to right display @@ -70,54 +70,58 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {  }; -bool encoder_update_user(uint8_t index, bool clockwise)  -{ -  if (get_mods() & MODS_ALT_MASK)  -	{ -			if (clockwise) -			{ -				tap_code(KC_TAB); -			}  -			else  -			{ -				tap_code16(S(KC_TAB)); -			} -	}  -	else if (get_mods() & MODS_CTRL_MASK)  -  { -    if (clockwise)  -    { -      tap_code(KC_TAB); -    }  -    else  -    { -      tap_code16(S(KC)_TAB)); - -    } -  } -  else if(IS_LAYER_ON(FNLAYER)) -    { -      if(clockwise) -      { -        tap_code(KC_MEDIA_NEXT_TRACK); -      } -      else -      { -        tap_code(KC_MEDIA_PREV_TRACK); -      } +bool encoder_update_user(uint8_t index, bool clockwise) { +    if (get_mods() & MODS_ALT_MASK) { +        if (clockwise) { +            tap_code(KC_TAB); +        } else { +            tap_code16(S(KC_TAB)); +        } +    } else if (get_mods() & MODS_CTRL_MASK) { +        if (clockwise) { +            tap_code(KC_TAB); +        } else { +            tap_code16(S(KC_TAB)); +        } +    } else if(IS_LAYER_ON(FNLAYER)) { +        if (clockwise) { +            tap_code(KC_MEDIA_NEXT_TRACK); +        } else { +            tap_code(KC_MEDIA_PREV_TRACK); +        } +    } else { +        if (clockwise) { +            tap_code(KC_VOLU); +        } else { +            tap_code(KC_VOLD); +        }      } -    else -    { -      if (clockwise)  -      { -        tap_code(KC_VOLU); -      }  -      else  -      { -        tap_code(KC_VOLD); -      } - +    return false; +} + +void rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) { +    switch(get_highest_layer(layer_state)) { +    // special handling per layer +        case 0:  //layer one +            if (host_keyboard_led_state().caps_lock) +                rgb_matrix_set_color_all(255,0,0); +            else +                rgb_matrix_set_color_all(0,255,56); +            break; +        case 1: +            for (uint8_t i = led_min; i < led_max; i++) { +                 RGB_MATRIX_INDICATOR_SET_COLOR(i,0,0,0); +            } +            RGB_MATRIX_INDICATOR_SET_COLOR(0, 0, 0, 255) //esc +            RGB_MATRIX_INDICATOR_SET_COLOR(6, 0, 0, 255) //f1 +            RGB_MATRIX_INDICATOR_SET_COLOR(8, 0, 0, 255) //q +            RGB_MATRIX_INDICATOR_SET_COLOR(14, 0, 0, 255) //w +            RGB_MATRIX_INDICATOR_SET_COLOR(20, 0, 0, 255) //e +            RGB_MATRIX_INDICATOR_SET_COLOR(15, 0, 0, 255) //s +            RGB_MATRIX_INDICATOR_SET_COLOR(26, 0, 0, 255) //f +            RGB_MATRIX_INDICATOR_SET_COLOR(49, 0, 0, 255) //R_Alt +            break; +        default: +            break;      } -    return true; - -}
\ No newline at end of file +} diff --git a/keyboards/gmmk/pro/ansi/keymaps/benschaeff/readme.md b/keyboards/gmmk/pro/ansi/keymaps/benschaeff/readme.md new file mode 100644 index 0000000000..8162002892 --- /dev/null +++ b/keyboards/gmmk/pro/ansi/keymaps/benschaeff/readme.md @@ -0,0 +1,19 @@ +# Description +Pretty simple keymap with a few handy tools on a 2nd layer and rotary encoder. + +# Encoder +Holding tab and scrolling encoder will allow scrolling through applications, as if using alt + tab   +Holding ctrl and scrolling encoder will allow scrolling through chrome tabs   +FN + Encoder scroll is media next/prev   +FN + Encoder press is media pause   +default encoder behavior is volume up/down   + +# Function Layer +FN + \ is used to put keyboard into bootloader mode   +FN + ESC is the same as alt F4, for closing applications   +FN + F1 is to close current browser tab   +FN + Q moves current application one monitor to the left   +FN + W maximizes current application   +FN + E moves current application one monitor to the right   +FN + S minimizes current application   +FN + F is used in junction with the "Popout tab" extension to chrome (https://chrome.google.com/webstore/detail/popout-tab/pcfcieidiaaobigemjnkclebhnmgfbco) to pop out current tab to its own window | 
