~ruther/qmk_firmware

12baca129545bbd194fc95e542abfd6fcf552f47 — Jonathan Rascher 5 years ago 4edc8fc
Initial Crkbd layout (#7716)

A keyboards/crkbd/keymaps/bcat/config.h => keyboards/crkbd/keymaps/bcat/config.h +6 -0
@@ 0,0 1,6 @@
#pragma once

#define EE_HANDS

/* Limit max RGB LED current to avoid tripping controller fuse. */
#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 150

A keyboards/crkbd/keymaps/bcat/keymap.c => keyboards/crkbd/keymaps/bcat/keymap.c +51 -0
@@ 0,0 1,51 @@
#include QMK_KEYBOARD_H

enum layer {
    LAYER_DEFAULT,
    LAYER_LOWER,
    LAYER_RAISE,
    LAYER_ADJUST,
};

#define LY_LWR MO(LAYER_LOWER)
#define LY_RSE MO(LAYER_RAISE)

#define KY_CESC LCTL_T(KC_ESC)

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
    /* Default layer: http://www.keyboard-layout-editor.com/#/gists/08d9827d916662a9414f48805aa895a5 */
    [LAYER_DEFAULT] = LAYOUT(
        KC_TAB,   KC_Q,     KC_W,     KC_E,     KC_R,     KC_T,                         KC_Y,     KC_U,     KC_I,     KC_O,     KC_P,     KC_BSPC,
        KY_CESC,  KC_A,     KC_S,     KC_D,     KC_F,     KC_G,                         KC_H,     KC_J,     KC_K,     KC_L,     KC_SCLN,  KC_QUOT,
        KC_LSFT,  KC_Z,     KC_X,     KC_C,     KC_V,     KC_B,                         KC_N,     KC_M,     KC_COMM,  KC_DOT,   KC_SLSH,  KC_RSFT,
                                                KC_LALT,  LY_LWR,   KC_SPC,   KC_ENT,   LY_RSE,   KC_RGUI
    ),

    /* Lower layer: http://www.keyboard-layout-editor.com/#/gists/c3fba5eaa2cd70fdfbdbc0f9e34d3bc0 */
    [LAYER_LOWER] = LAYOUT(
        _______,  KC_EXLM,  KC_AT,    KC_HASH,  KC_DLR,   KC_PERC,                      KC_CIRC,  KC_AMPR,  KC_ASTR,  KC_LPRN,  KC_RPRN,  _______,
        _______,  _______,  _______,  KC_PIPE,  KC_TILD,  KC_DEL,                       _______,  KC_UNDS,  KC_PLUS,  KC_LCBR,  KC_RCBR,  _______,
        _______,  _______,  _______,  KC_BSLS,  KC_GRV,   KC_INS,                       _______,  KC_MINS,  KC_EQL,   KC_LBRC,  KC_RBRC,  _______,
                                                _______,  _______,  _______,  _______,  _______,  _______
    ),

    /* Raise layer: http://www.keyboard-layout-editor.com/#/gists/08b44355d4ca85d294bad9e2821f91d7 */
    [LAYER_RAISE] = LAYOUT(
        _______,  KC_1,     KC_2,     KC_3,     KC_4,     KC_5,                         KC_6,     KC_7,     KC_8,     KC_9,     KC_0,     _______,
        _______,  KC_F1,    KC_F2,    KC_F3,    KC_F4,    KC_F5,                        KC_LEFT,  KC_DOWN,  KC_UP,    KC_RGHT,  KC_HOME,  KC_PGUP,
        _______,  KC_F6,    KC_F7,    KC_F8,    KC_F9,    KC_F10,                       KC_F11,   KC_F12,   _______,  _______,  KC_END,   KC_PGDN,
                                                _______,  _______,  _______,  _______,  _______,  _______
    ),

    /* Adjust layer: http://www.keyboard-layout-editor.com/#/gists/77e7572e077b36a23eb2086017e16fee */
    [LAYER_ADJUST] = LAYOUT(
        KC_CAPS,  _______,  KC_MPLY,  KC_VOLU,  KC_MSTP,  _______,                      EEP_RST,  RESET,    KC_PSCR,  KC_SLCK,  KC_PAUS,  _______,
        _______,  _______,  KC_MPRV,  KC_VOLD,  KC_MNXT,  _______,                      RGB_RMOD, RGB_VAD,  RGB_VAI,  RGB_MOD,  RGB_HUI,  RGB_SAI,
        _______,  _______,  _______,  KC_MUTE,  _______,  _______,                      RGB_SPD,  RGB_SPI,  _______,  _______,  RGB_HUD,  RGB_SAD,
                                                _______,  _______,  _______,  RGB_TOG,  _______,  _______
    ),
};

layer_state_t layer_state_set_user(layer_state_t state) {
    return update_tri_layer_state(state, LAYER_LOWER, LAYER_RAISE, LAYER_ADJUST);
}

A keyboards/crkbd/keymaps/bcat/readme.md => keyboards/crkbd/keymaps/bcat/readme.md +30 -0
@@ 0,0 1,30 @@
# bcat's Corne layout

This split ergo layout mirrors
[my Lily58 layout](https://github.com/qmk/qmk_firmware/tree/master/keyboards/lily58/keymaps/bcat)
with the number row removed and RGB controls added. See that layout's docs for
more details on the principles that went into the layout.

## Default layer

![Default layer layout](https://i.imgur.com/s1LDlSQ.png)

([KLE](http://www.keyboard-layout-editor.com/#/gists/08d9827d916662a9414f48805aa895a5))

## Lower layer

![Lower layer layout](https://i.imgur.com/9ShGkJI.png)

([KLE](http://www.keyboard-layout-editor.com/#/gists/c3fba5eaa2cd70fdfbdbc0f9e34d3bc0))

## Raise layer

![Raise layer layout](https://i.imgur.com/HcmW99r.png)

([KLE](http://www.keyboard-layout-editor.com/#/gists/08b44355d4ca85d294bad9e2821f91d7))

## Adjust layer

![Adjust layer layout](https://i.imgur.com/53qLnxo.png)

([KLE](http://www.keyboard-layout-editor.com/#/gists/77e7572e077b36a23eb2086017e16fee))

A keyboards/crkbd/keymaps/bcat/rules.mk => keyboards/crkbd/keymaps/bcat/rules.mk +3 -0
@@ 0,0 1,3 @@
BOOTLOADER = atmel-dfu  # Elite-C

RGB_MATRIX_ENABLE = WS2812  # per-key RGB and underglow

M users/bcat/config.h => users/bcat/config.h +20 -0
@@ 22,6 22,26 @@
 */
#define TAPPING_FORCE_HOLD

#if defined(RGB_MATRIX_ENABLE)
    /* Turn off per-key RGB when the host goes to sleep. */
    #define RGB_DISABLE_WHEN_USB_SUSPENDED true

    /* Keep per-key RGB increments consistent across keyboards. */
    #undef RGB_MATRIX_HUE_STEP
    #undef RGB_MATRIX_SAT_STEP
    #undef RGB_MATRIX_VAL_STEP
    #undef RGB_MATRIX_SPD_STEP

    #define RGB_MATRIX_HUE_STEP 8
    #define RGB_MATRIX_SAT_STEP 17
    #define RGB_MATRIX_VAL_STEP 17
    #define RGB_MATRIX_SPD_STEP 17

    /* Turn on additional RGB animations. */
    #define RGB_MATRIX_FRAMEBUFFER_EFFECTS
    #define RGB_MATRIX_KEYPRESSES
#endif

#if defined(RGBLIGHT_ENABLE)
    /* Turn off RGB underglow when the host goes to sleep. */
    #define RGBLIGHT_SLEEP