Add Eco keymap, factor Crkbd keymap to community layout, other minor tweaks * Remove outdated Crkbd Ctrl key positioning info * Add Left Alt key to Lily58 keymap * Lily58 no longer overrides default TAPPING_TERM * Refactor Crkbd keymap to use new community layout * Fix underglow animations for Crkbd w/ Split Common * Add initial Eco keymap * Update outdated reference to Crkbd layout * Add keymap links to userspace readme * Add copyright notices to files changed in this PRpull/10870/head
@ -1,7 +0,0 @@ | |||
#pragma once | |||
#define EE_HANDS | |||
/* Limit max RGB LED current to avoid tripping controller fuse. */ | |||
#undef RGB_MATRIX_MAXIMUM_BRIGHTNESS | |||
#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 150 |
@ -1,3 +0,0 @@ | |||
BOOTLOADER = atmel-dfu # Elite-C | |||
RGB_MATRIX_ENABLE = WS2812 # per-key RGB and underglow |
@ -0,0 +1,22 @@ | |||
/* Copyright 2020 Jonathan Rascher | |||
* | |||
* This program is free software: you can redistribute it and/or modify | |||
* it under the terms of the GNU General Public License as published by | |||
* the Free Software Foundation, either version 2 of the License, or | |||
* (at your option) any later version. | |||
* | |||
* This program is distributed in the hope that it will be useful, | |||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | |||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |||
* GNU General Public License for more details. | |||
* | |||
* You should have received a copy of the GNU General Public License | |||
* along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
*/ | |||
#pragma once | |||
/* WS2812B RGB LED strip hand wired to Elite-C. */ | |||
#define RGB_DI_PIN B7 | |||
#define RGBLED_NUM 15 | |||
#define RGBLIGHT_ANIMATIONS |
@ -0,0 +1,72 @@ | |||
/* Copyright 2020 Jonathan Rascher | |||
* | |||
* This program is free software: you can redistribute it and/or modify | |||
* it under the terms of the GNU General Public License as published by | |||
* the Free Software Foundation, either version 2 of the License, or | |||
* (at your option) any later version. | |||
* | |||
* This program is distributed in the hope that it will be useful, | |||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | |||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |||
* GNU General Public License for more details. | |||
* | |||
* You should have received a copy of the GNU General Public License | |||
* along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
*/ | |||
#include QMK_KEYBOARD_H | |||
#include "bcat.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_CSPC LCTL(KC_SPC) | |||
#define KY_ZMIN LCTL(KC_EQL) | |||
#define KY_ZMOUT LCTL(KC_MINS) | |||
#define KY_ZMRST LCTL(KC_0) | |||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
/* Default layer: http://www.keyboard-layout-editor.com/#/gists/2c11371c7a5f7cd08a0132631d3d3281 */ | |||
[LAYER_DEFAULT] = LAYOUT( | |||
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LBRC, KC_RBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, | |||
KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_HOME, KC_PGUP, 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_END, KC_PGDN, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, | |||
XXXXXXX, XXXXXXX, KC_LALT, KC_LCTL, LY_LWR, KC_SPC, XXXXXXX, XXXXXXX, KC_ENT, LY_RSE, KC_RALT, KC_RGUI, XXXXXXX, XXXXXXX | |||
), | |||
/* Lower layer: http://www.keyboard-layout-editor.com/#/gists/11256970dc0552886a82382ee02fa415 */ | |||
[LAYER_LOWER] = LAYOUT( | |||
MC_ALTT, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, _______, _______, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, | |||
KY_CSPC, KY_ZMRST, KY_ZMOUT, KY_ZMIN, KC_WBAK, KC_WFWD, _______, _______, KC_PIPE, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_TILD, | |||
_______, KC_APP, KC_PSCR, KC_SLCK, KC_PAUS, KC_LGUI, _______, _______, KC_BSLS, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_GRV, | |||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ | |||
), | |||
/* Raise layer: http://www.keyboard-layout-editor.com/#/gists/308a8be75e0b85902dc18db1b2546862 */ | |||
[LAYER_RAISE] = LAYOUT( | |||
KC_CAPS, 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_F11, KC_DEL, | |||
_______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_F12, KC_INS, | |||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ | |||
), | |||
/* Adjust layer: http://www.keyboard-layout-editor.com/#/gists/b18aafa0327d7e83eaf485546c067a21 */ | |||
[LAYER_ADJUST] = LAYOUT( | |||
_______, NK_TOGG, KC_MPLY, KC_VOLU, KC_MSTP, _______, _______, _______, EEP_RST, RESET, _______, _______, _______, _______, | |||
_______, _______, KC_MPRV, KC_VOLD, KC_MNXT, _______, _______, _______, RGB_RMOD, RGB_VAD, RGB_VAI, RGB_MOD, RGB_SPI, _______, | |||
_______, _______, _______, KC_MUTE, _______, _______, _______, _______, RGB_HUI, RGB_SAD, RGB_SAI, RGB_HUD, RGB_SPD, _______, | |||
_______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, _______, _______, _______, _______, _______ | |||
), | |||
}; | |||
layer_state_t layer_state_set_keymap(layer_state_t state) { | |||
return update_tri_layer_state(state, LAYER_LOWER, LAYER_RAISE, LAYER_ADJUST); | |||
} |
@ -0,0 +1,44 @@ | |||
# bcat's Eco layout | |||
This is a cute little 4x14 ortholinear keyboard. I've set it up using an | |||
unsplit, ortho version of my [split 3x6 + 3 thumb | |||
keys](https://github.com/qmk/qmk_firmware/tree/master/layouts/community/split_3x6_3/bcat) | |||
(Crkbd) layout, with the following changes: | |||
* The alpha keys are separated by an extra two columns in the middle to provide | |||
a little more hand separation, similar to a split keyboard. | |||
* The top three rows of the extra middle columns feature navigation keys and | |||
brackets/braces. I don't really use dedicated keys for these, but I had the | |||
keycaps, so I figured I may as well put them there. | |||
* I have a Left Alt and Right Super key on the bottom row just like my | |||
[Lily58](https://github.com/qmk/qmk_firmware/tree/master/keyboards/lily58/keymaps/bcat). | |||
* The two keys in each bottom corner are unbound, as is the 2U spacebar in the | |||
center of the bottom row. These keys are too inconvenient to reach, and there's | |||
nothing really useful to bind them to anyway. | |||
## Default layer | |||
![Default layer layout](https://i.imgur.com/uRUT2cY.png) | |||
([KLE](http://www.keyboard-layout-editor.com/#/gists/2c11371c7a5f7cd08a0132631d3d3281)) | |||
## Lower layer | |||
![Lower layer layout](https://i.imgur.com/8SR0M9x.png) | |||
([KLE](http://www.keyboard-layout-editor.com/#/gists/11256970dc0552886a82382ee02fa415)) | |||
## Raise layer | |||
![Raise layer layout](https://i.imgur.com/U7KERR3.png) | |||
([KLE](http://www.keyboard-layout-editor.com/#/gists/308a8be75e0b85902dc18db1b2546862)) | |||
## Adjust layer | |||
![Adjust layer layout](https://i.imgur.com/J2rOshm.png) | |||
([KLE](http://www.keyboard-layout-editor.com/#/gists/b18aafa0327d7e83eaf485546c067a21)) |
@ -0,0 +1,3 @@ | |||
BOOTLOADER = atmel-dfu # Elite-C | |||
RGBLIGHT_ENABLE = yes |
@ -0,0 +1,34 @@ | |||
/* Copyright 2020 Jonathan Rascher | |||
* | |||
* This program is free software: you can redistribute it and/or modify | |||
* it under the terms of the GNU General Public License as published by | |||
* the Free Software Foundation, either version 2 of the License, or | |||
* (at your option) any later version. | |||
* | |||
* This program is distributed in the hope that it will be useful, | |||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | |||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |||
* GNU General Public License for more details. | |||
* | |||
* You should have received a copy of the GNU General Public License | |||
* along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
*/ | |||
#pragma once | |||
#if defined(KEYBOARD_crkbd_rev1_common) || defined(KEYBOARD_crkbd_rev1_legacy) | |||
# define EE_HANDS | |||
# if defined(RGBLIGHT_ENABLE) | |||
/* Configure RGB for underglow only (first six LEDs on each side). */ | |||
# undef RGBLED_SPLIT | |||
# define RGBLED_SPLIT \ | |||
{ 6, 6 } | |||
# endif | |||
# if defined(RGB_MATRIX_ENABLE) | |||
/* Limit max RGB LED current to avoid tripping controller fuse. */ | |||
# undef RGB_MATRIX_MAXIMUM_BRIGHTNESS | |||
# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 150 | |||
# endif | |||
#endif |
@ -0,0 +1,10 @@ | |||
ifeq ($(strip $(KEYBOARD)), crkbd/rev1/common) | |||
BOOTLOADER = atmel-dfu # Elite-C | |||
# Enable underglow only. (Split Common doesn't support RGB matrix on slave.) | |||
RGBLIGHT_ENABLE = yes | |||
else ifeq ($(strip $(KEYBOARD)), crkbd/rev1/legacy) | |||
BOOTLOADER = atmel-dfu # Elite-C | |||
RGB_MATRIX_ENABLE = WS2812 # per-key RGB and underglow | |||
endif |
@ -1,13 +1,48 @@ | |||
# bcat's userspace | |||
This is some code and config shared by all of [my](https://github.com/bcat) | |||
keyboards. I have a few different keymaps spread throughout the repo; however, | |||
they are all derived from two "canonical" keymaps for my preferred layouts: | |||
keyboards. I use community layouts wherever possible, only writing | |||
keyboard-specific keymaps for boards without standard layout support. I derive | |||
my keymaps from two canonical ones (preferred for typing and gaming, | |||
respectively). | |||
* For typing, my canonical layout is my | |||
[Crkbd](https://github.com/qmk/qmk_firmware/tree/master/keyboards/crkbd/keymaps/bcat) | |||
(split ergo, columnar-staggered) layout. | |||
## Canonical keymaps | |||
* For gaming, my canonical layout is my | |||
[Tsangan](https://github.com/qmk/qmk_firmware/tree/master/layouts/community/60_tsangan_hhkb/bcat) | |||
(row-staggered) layout. | |||
* [Split 3x6 + 3 thumb | |||
keys](https://github.com/qmk/qmk_firmware/tree/master/layouts/community/split_3x6_3/bcat): | |||
Columnar-staggered split ergo layout, preferred for typing. Used on Crkbd. | |||
* [60% Tsangan | |||
HHKB](https://github.com/qmk/qmk_firmware/tree/master/layouts/community/60_tsangan_hhkb/bcat): | |||
Row-staggered layout, preferred for gaming. Used on ai03 Polaris, CannonKeys | |||
AN-C, CannonKeys Instant60. | |||
## Other keymaps | |||
### Ergo | |||
* [Lily58](https://github.com/qmk/qmk_firmware/tree/master/keyboards/lily58/keymaps/bcat) | |||
### Ortho | |||
* [Eco](https://github.com/qmk/qmk_firmware/tree/master/keyboards/eco/keymaps/bcat) | |||
### Traditional | |||
* [60% ANSI split | |||
backspace/right-shift](https://github.com/qmk/qmk_firmware/tree/master/layouts/community/60_ansi_split_bs_rshift/bcat). | |||
Used on DZ60. | |||
* [65% ANSI blocker split | |||
backspace](https://github.com/qmk/qmk_firmware/tree/master/layouts/community/65_ansi_blocker_split_bs/bcat). | |||
Used on KBDfans KBD67 hotswap. | |||
* [Keebio | |||
Quefrency](https://github.com/qmk/qmk_firmware/tree/master/keyboards/keebio/quefrency/keymaps/bcat) | |||
### Macropads | |||
* [9-Key](https://github.com/qmk/qmk_firmware/tree/master/keyboards/9key/keymaps/bcat) | |||
* [Keebio | |||
BDN9](https://github.com/qmk/qmk_firmware/tree/master/keyboards/keebio/bdn9/keymaps/bcat) |