LAYER_FUNCTION,
};
-/* Switch to function layer when held. */
#define LY_FUNC MO(LAYER_FUNCTION)
-
-/* Send Ctrl+Alt+L (Cinnamon screen lock shortcut) when pressed. */
-#define KY_LOCK LCA(KC_L)
+#define KY_LOCK LCA(KC_L) /* Cinnamon lock screen */
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[LAYER_DEFAULT] = LAYOUT(
+++ /dev/null
-BOOTLOADER = caterina # Pro Micro
/* Function layer: http://www.keyboard-layout-editor.com/#/gists/f29128427f674c43777f045e363d1b44 */
[LAYER_FUNCTION] = LAYOUT(
_______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_INS, KC_DEL, _______,
- KC_CAPS, KC_MPLY, KC_VOLU, KC_MSTP, _______, _______, EEP_RST, RESET, KC_PSCR, KC_SLCK, KC_PAUS, _______, _______, _______, _______,
- _______, KC_MPRV, KC_VOLD, KC_MNXT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, KC_MUTE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ KC_CAPS, _______, KC_MPLY, KC_VOLU, KC_MSTP, _______, EEP_RST, RESET, KC_PSCR, KC_SLCK, KC_PAUS, _______, _______, _______, _______,
+ _______, _______, KC_MPRV, KC_VOLD, KC_MNXT, _______, _______, _______, _______, _______, _______, _______, _______, _______,
+ _______, _______, _______, KC_MUTE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______
),
};
# bcat's KBD67 hotswap layout
This is pretty much a stock 65% split keyboard layout, with an HHKB-style
-(split) backspace and media keys in the function layer centered around the WASD
+(split) backspace and media keys in the function layer centered around the ESDF
cluster.
## Default layer
## Function layer
-
+
([KLE](http://www.keyboard-layout-editor.com/#/gists/f29128427f674c43777f045e363d1b44))
LAYER_SECOND,
};
-/* Switch to second layer when held. */
#define LY_SECND MO(LAYER_SECOND)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
- /* First layer (F1-F6) */
[LAYER_FIRST] = LAYOUT(
KC_MUTE, LY_SECND, BL_BRTG,
KC_F4, KC_F5, KC_F6,
KC_F1, KC_F2, KC_F3
),
- /* Second layer (F7-F12) */
[LAYER_SECOND] = LAYOUT(
EEP_RST, _______, RESET,
KC_F10, KC_F11, KC_F12,
void encoder_update_user(uint8_t index, bool clockwise) {
switch (index) {
- /* Top-left encoder (volume): */
+ /* Top-left encoder (volume) */
case 0:
tap_code(clockwise ? KC_VOLU : KC_VOLD);
break;
- /* Top-right encoder (backlight brightness): */
+ /* Top-right encoder (backlight brightness) */
case 1:
if (clockwise) {
backlight_increase();
/* Function layer: http://www.keyboard-layout-editor.com/#/gists/59636898946da51f91fb290f8e078b4d */
[LAYER_FUNCTION] = LAYOUT_65(
_______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_INS, KC_DEL, RGB_HUI,
- KC_CAPS, KC_MPLY, KC_VOLU, KC_MSTP, _______, _______, EEP_RST, RESET, KC_PSCR, KC_SLCK, KC_PAUS, _______, _______, _______, RGB_SAI,
- _______, KC_MPRV, KC_VOLD, KC_MNXT, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_SAD,
- _______, _______, KC_MUTE, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAI, RGB_HUD,
+ KC_CAPS, _______, KC_MPLY, KC_VOLU, KC_MSTP, _______, EEP_RST, RESET, KC_PSCR, KC_SLCK, KC_PAUS, _______, _______, _______, RGB_SAI,
+ _______, _______, KC_MPRV, KC_VOLD, KC_MNXT, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_SAD,
+ _______, _______, _______, KC_MUTE, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAI, RGB_HUD,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_RMOD, RGB_VAD, RGB_MOD
),
};
# bcat's Quefrency 65% layout
This is pretty much a stock 65% split keyboard layout, with an HHKB-style
-(split) backspace, media keys in the function layer centered around the WASD
+(split) backspace, media keys in the function layer centered around the ESDF
cluster, and RGB controls in the function layer on the arrow/nav keys.
## Default layer
## Function layer
-
+
([KLE](http://www.keyboard-layout-editor.com/#/gists/59636898946da51f91fb290f8e078b4d))
KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
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_LBRC, KC_RBRC, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_WBAK, KC_WFWD, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
KC_LCTL, KC_LALT, LY_LWR, KC_SPC, KC_ENT, LY_RSE, KC_RGUI, KC_APP
),
## Default layer
-
+
([KLE](http://www.keyboard-layout-editor.com/#/gists/e0eb3af65961e9fd612dcff3ddd88e4f))
/* Function layer: http://www.keyboard-layout-editor.com/#/gists/c7a55e75285d474b6301140eaf53f915 */
[LAYER_FUNCTION] = LAYOUT_60_ansi_split_bs_rshift(
_______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_INS, KC_DEL,
- KC_CAPS, KC_MPLY, KC_VOLU, KC_MSTP, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, _______,
- _______, KC_MPRV, KC_VOLD, KC_MNXT, _______, _______, _______, _______, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______,
- _______, _______, KC_MUTE, _______, _______, _______, _______, _______, KC_END, KC_PGDN, KC_DOWN, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_UP, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, KC_END, KC_PGDN, KC_DOWN, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______
),
/* Adjust layer: http://www.keyboard-layout-editor.com/#/gists/6e1068e4f91bbacccaf5ac0acbeec79c */
[LAYER_ADJUST] = LAYOUT_60_ansi_split_bs_rshift(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, EEP_RST, RESET, _______, _______, _______, RGB_VAI, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, RGB_SAI, RGB_RMOD, RGB_MOD, RGB_TOG,
- _______, _______, _______, _______, _______, BL_BRTG, BL_DEC, BL_INC, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______,
+ KC_CAPS, _______, KC_MPLY, KC_VOLU, KC_MSTP, _______, EEP_RST, RESET, KC_PSCR, KC_SLCK, KC_PAUS, RGB_VAI, _______, _______,
+ _______, _______, KC_MPRV, KC_VOLD, KC_MNXT, _______, _______, _______, RGB_HUI, RGB_SAI, RGB_RMOD, RGB_MOD, RGB_TOG,
+ _______, _______, _______, KC_MUTE, _______, BL_BRTG, BL_DEC, BL_INC, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______
),
};
This is a hybrid of an HHKB layout and a standard ANSI bottom row. It's nice if
you want to fill out a 60% case with no blockers, or just really want a 6.25U
-spacebar. The arrow and navigation keys match a standard HHKB layout (using the
-Fn key next to the right shift key), but the media keys are centered around the
-WASD cluster instead of the usual HHKB layout. Additionally, the redundant Fn
-key on the bottom row activates an adjust layer to control RGB underglow.
+spacebar. The arrow and navigation keys match a standard HHKB layout using the
+Fn key next to the right shift key. Additionally, the redundant Fn key on the
+bottom row activates an adjust layer with controls for RGB underglow and
+backlight, as well as media keys centered around the ESDF cluster.
## Default layer
## Function layer
-
+
([KLE](http://www.keyboard-layout-editor.com/#/gists/c7a55e75285d474b6301140eaf53f915))
## Adjust layer
-
+
([KLE](http://www.keyboard-layout-editor.com/#/gists/6e1068e4f91bbacccaf5ac0acbeec79c))
/* Function layer: http://www.keyboard-layout-editor.com/#/gists/f6311fd7e315de781143b80eb040a551 */
[LAYER_FUNCTION] = LAYOUT_60_tsangan_hhkb(
_______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_INS, KC_DEL,
- KC_CAPS, KC_MPLY, KC_VOLU, KC_MSTP, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, _______,
- _______, KC_MPRV, KC_VOLD, KC_MNXT, _______, _______, _______, _______, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______,
- _______, _______, KC_MUTE, _______, _______, _______, _______, _______, KC_END, KC_PGDN, KC_DOWN, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_UP, _______, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, KC_END, KC_PGDN, KC_DOWN, _______, _______,
_______, _______, _______, _______, _______, _______, _______
),
/* Adjust layer: http://www.keyboard-layout-editor.com/#/gists/65ac939caec878401603bc36290852d4 */
[LAYER_ADJUST] = LAYOUT_60_tsangan_hhkb(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
- _______, _______, _______, _______, _______, _______, EEP_RST, RESET, _______, _______, _______, RGB_VAI, _______, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, RGB_SAI, RGB_RMOD, RGB_MOD, RGB_TOG,
- _______, _______, _______, _______, _______, BL_BRTG, BL_DEC, BL_INC, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______,
+ KC_CAPS, _______, KC_MPLY, KC_VOLU, KC_MSTP, _______, EEP_RST, RESET, KC_PSCR, KC_SLCK, KC_PAUS, RGB_VAI, _______, _______,
+ _______, _______, KC_MPRV, KC_VOLD, KC_MNXT, _______, _______, _______, RGB_HUI, RGB_SAI, RGB_RMOD, RGB_MOD, RGB_TOG,
+ _______, _______, _______, KC_MUTE, _______, BL_BRTG, BL_DEC, BL_INC, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______,
_______, _______, _______, _______, _______, _______, _______
),
};
# bcat's 60% Tsangan HHKB layout
This is a normal Tsangan/HHKB (split backspace, split right shift) layout with
-arrow and navigation keys that match a standard HHKB layout, as well as media
-keys centered around the WASD cluster. Additionally, the redundant right Super
-key on the bottom row actives an adjust layer to control RGB underglow.
+arrow and navigation keys that match a standard HHKB layout. Additionally, the
+redundant right Super key on the bottom row actives an adjust layer with
+controls for RGB underglow and backlight, as well as media keys centered around
+the ESDF cluster.
## Default layer
## Function layer
-
+
([KLE](http://www.keyboard-layout-editor.com/#/gists/f6311fd7e315de781143b80eb040a551))
## Adjust layer
-
+
([KLE](http://www.keyboard-layout-editor.com/#/gists/65ac939caec878401603bc36290852d4))
--- /dev/null
+#include "quantum.h"
+
+#if defined(RGBLIGHT_ENABLE)
+ /* Adjust RGB static hue ranges for shorter gradients than default. */
+ const uint8_t RGBLED_GRADIENT_RANGES[] PROGMEM = {255, 127, 63, 31, 15};
+#endif
#define MOUSEKEY_WHEEL_MAX_SPEED 3
#define MOUSEKEY_WHEEL_TIME_TO_MAX 150
#endif
-
-#if defined(KEYBOARD_cannonkeys_instant60)
- /*
- * Work around EEPROM incompatibility with VIA:
- * https://github.com/qmk/qmk_firmware/issues/6589#issuecomment-524042457.
- */
- #undef EEPROM_MAGIC_ADDR
- #undef EEPROM_VERSION_ADDR
- #undef DYNAMIC_KEYMAP_EEPROM_ADDR
- #undef EEPROM_CUSTOM_BACKLIGHT
- #undef DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR
-
- #define EEPROM_MAGIC_ADDR 34
- #define EEPROM_VERSION_ADDR 36
- #define DYNAMIC_KEYMAP_EEPROM_ADDR 37
- #define EEPROM_CUSTOM_BACKLIGHT 637
- #define DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR 638
-#endif
+SRC += bcat.c
+
# Enable Bootmagic Lite to consistently reset to bootloader and clear EEPROM.
BOOTMAGIC_ENABLE = lite
UCIS_ENABLE = no
UNICODE_ENABLE = no
UNICODEMAP_ENABLE = no
+
+# Enable link-time optimization to reduce binary size.
+LINK_TIME_OPTIMIZATION_ENABLE = yes